All Versions
67
Latest Version
Avg Release Cycle
43 days
Latest Release
1004 days ago

Changelog History
Page 4

  • v0.3.0-alpha.5 Changes

    September 03, 2018
    • โช Revert usage of cargo crate renaming feature
  • v0.3.0-alpha.4 Changes

    September 02, 2018

    ๐Ÿš€ Note: This release does not work, use 0.3.0-alpha.5 instead

    • future::ok and future:err to create result wrapping futures (similar to future::ready)
    • โœ… futures-test crate with testing utilities
    • StreamExt::boxed combinator
    • Unsoundness fix for FuturesUnordered
    • StreamObj (similar to FutureObj)
    • Code examples for compatibility layer functions
    • ๐Ÿ‘‰ Use cargo create renaming feature to import [email protected] for compatibility layer
    • ๐Ÿ“Œ Import pinning APIs from core::pin
    • ๐Ÿ‘ท Run Clippy in CI only when it is available
  • v0.3.0-alpha.3 Changes

    August 15, 2018
    • Compatibility with newest nightly
    • Futures 0.1 compatibility layer including Tokio compatibility
    • Added spawn! and spawn_with_handle! macros
    • Added SpawnExt methods spawn and spawn_with_handle
    • ๐Ÿ“Œ Extracted pin macros into pin_utils crate
    • โž• Added FutureExt combinators boxed and unit_error
    • โœ‚ Remove prelude from all doc examples (The prelude is still recommended for usage in playground examples. However, for doc examples we determined that fully expanded imports are more helpful)
    • ๐Ÿ‘Œ Improvements to select! and join! macros
    • โž• Added try_join! macro
    • Added StreamExt combinator methods try_join and for_each_concurrent
    • Added TryStreamExt combinator methods into_stream, try_filter_map, try_skip_while, try_for_each_concurrent and try_buffer_unordered
    • ๐Ÿ›  Fix stream termination bug in StreamExt::buffered and StreamExt::buffer_unordered
    • โž• Added docs for StreamExt::buffered, StreamExt::buffer_unordered
    • Added task::local_waker_ref_from_nonlocal and task::local_waker_ref functions
    • CI improvements
    • Doc improvements to StreamExt::select
  • v0.3.0-alpha.2 Changes

    July 30, 2018
    • The changelog is back!
    • โœ… Compatiblity with futures API in latest nightly
    • Code examples and doc improvements
      • IO: Methods of traits AsyncReadExt, AsyncWriteExt
      • Future:
      • Methods of trait TryFutureExt
      • Free functions empty, lazy, maybe_done, poll_fn and ready
      • Type FutureOption
      • Macros join!, select! and pending!
      • Stream: Methods of trait TryStreamExt
    • Added TryStreamExt combinators map_ok, map_err, err_into, try_next and try_for_each
    • โž• Added Drain, a sink that will discard all items given to it. Can be created using the drain function
    • ๐Ÿ›  Bugfix for the write_all combinator
    • AsyncWrite impl for Cursor<T: AsMut<[u8]>>
    • FuturesUnordered optimization: Since the context stores a &LocalWaker reference, it was possible to avoid cloning the Arc of the waker
    • Futures-rs now uses Clippy
    • We now use in-band lifetimes
    • The join! and select! macros are now exposed by the futures-preview crate
    • The project logo was added to the README.md
    • ๐Ÿ“Œ sink::MapErr::get_pinned_mut is now called get_pin_mut
    • We now use the unstable use_extern_macros feature for macro reexports
    • ๐ŸŽ CI improvements: Named CI jobs, tests are now run on macOS and Linux, the docs are generated and Clippy needs to pass
    • ๐Ÿšš #[deny(warnings)] was removed from all crates and is now only enforced in the CI
    • We now have a naming convention for type paramters: Fut future, F function, St stream, Si sink, S sink & stream, R reader, W writer, T value, E error
    • ๐Ÿ”จ "Task" is now defined as our term for "lightweight thread". The code of the executors and FuturesUnordered was refactored to align with this definition.
  • v0.3.0-alpha.19 Changes

    September 26, 2019
    • Stabilized the async-await feature (#1816)
    • Made async-await feature no longer require std feature (#1815)
    • โšก๏ธ Updated proc-macro2, syn, and quote to 1.0 (#1798)
    • ๐Ÿ”ฆ Exposed unstable BiLock (#1827)
    • ๐Ÿ“‡ Renamed "nightly" feature to "unstable" (#1823)
    • ๐Ÿšš Moved to our own io::{Empty, Repeat, Sink} (#1829)
    • Made AsyncRead::initializer API unstable (#1845)
    • ๐Ÿšš Moved the Never type from futures-core to futures-util (#1836)
    • Fixed use-after-free on panic in ArcWake::wake_by_ref (#1797)
    • โž• Added AsyncReadExt::chain (#1810)
    • โž• Added Stream::size_hint (#1853)
    • โž• Added some missing FusedFuture (#1868) and FusedStream implementations (#1831)
    • โž• Added a From impl for Mutex (#1839)
    • Added Mutex::{get_mut, into_inner} (#1839)
    • Re-exported TryConcat and TryFilter (#1814)
    • Lifted Unpin bound and implemented AsyncBufRead for io::Take (#1821)
    • ๐Ÿ“Œ Lifted Unpin bounds on get_pin_mut (#1820)
    • ๐Ÿ”„ Changed SendAll to flush the Sink when the source Stream is pending (#1877)
    • 0๏ธโƒฃ Set default threadpool size to one if num_cpus::get() returns zero (#1835)
    • โœ‚ Removed dependency on rand by using our own PRNG (#1837)
    • โœ‚ Removed futures-core dependency from futures-sink (#1832)
  • v0.3.0-alpha.18 Changes

    August 09, 2019
    • Rewrote join! and try_join! as procedural macros to allow passing expressions (#1783)
    • ๐Ÿ‘€ Banned manual implementation of TryFuture and TryStream for forward compatibility. See #1776 for more details. (#1777)
    • Changed AsyncReadExt::read_to_end to return the total number of bytes read (#1721)
    • ๐Ÿ”„ Changed ArcWake::into_waker to a free function waker (#1676)
    • ๐Ÿ‘Œ Supported trailing commas in macros (#1733)
    • โœ‚ Removed futures-channel dependency from futures-executor (#1735)
    • ๐Ÿ‘Œ Supported channel::oneshot in no_std environment (#1749)
    • โž• Added Future bounds to FusedFuture (#1779)
    • โž• Added Stream bounds to FusedStream (#1779)
    • ๐Ÿ”„ Changed StreamExt::boxed to return BoxStream (#1780)
    • โž• Added StreamExt::boxed_local (#1780)
    • Added AsyncReadExt::read_to_string (#1721)
    • Implemented AsyncWrite for IntoAsyncRead (#1734)
    • Added get_ref, get_mut and into_inner methods to Compat01As03 and Compat01As03Sink (#1705)
    • Added ThreadPool::{spawn_ok, spawn_obj_ok} (#1750)
    • โž• Added TryStreamExt::try_flatten (#1731)
    • Added FutureExt::now_or_never (#1747)
  • v0.3.0-alpha.17 Changes

    July 03, 2019
    • โœ‚ Removed try_ready! macro in favor of ready!(..)?. (#1602)
    • Removed io::Window::{set_start, set_end} in favor of io::Window::set. (#1667)
    • ๐Ÿ“Œ Re-exported pin_utils::pin_mut! macro. (#1686)
    • Made all extension traits unnamed in the prelude. (#1662)
    • ๐Ÿ‘ Allowed ?Sized types in some methods and structs. (#1647)
    • โž• Added Send + Sync bounds to ArcWake trait to fix unsoundness. (#1654)
    • ๐Ÿ”„ Changed AsyncReadExt::copy_into to consume self. (#1674)
    • ๐Ÿ“‡ Renamed future::empty to pending. (#1689)
    • โž• Added #[must_use] to some combinators. (#1600)
    • โž• Added AsyncWriteExt::{write, write_vectored}. (#1612)
    • โž• Added AsyncReadExt::read_vectored. (#1612)
    • ๐Ÿ“Š Added TryFutureExt::try_poll_unpin. (#1613)
    • Added TryFutureExt::try_flatten_stream. (#1618)
    • โž• Added io::BufWriter. (#1608)
    • Added Sender::same_receiver and UnboundedSender::same_receiver. (#1617)
    • โž• Added future::try_select. (#1622)
    • Added TryFutureExt::{inspect_ok, inspect_err}. (#1630)
    • โž• Added Compat::get_ref. (#1648)
    • โž• Added io::Window::set. (#1667)
    • โž• Added AsyncWriteExt::into_sink. (#1675)
    • Added AsyncBufReadExt::copy_buf_into. (#1674)
    • โž• Added stream::pending. (#1689)
    • Implemented std::error::Error for SpawnError. (#1604)
    • Implemented Stream for FlattenSink. (#1651)
    • Implemented Sink for TryFlattenStream. (#1651)
    • ๐Ÿ‘€ Implemented AsyncRead, AsyncWrite, AsyncSeek, AsyncBufRead, FusedFuture and FusedStream for Either. (#1695)
    • Replaced empty enums with Never type, an alias for core::convert::Infallible.
    • โœ‚ Removed the futures-channel dependency from futures-sink and make futures-sink
      an optional dependency of futures-channel.
    • ๐Ÿ“‡ Renamed Sink::SinkError to Sink::Error.
    • Made a number of dependencies of futures-util optional.
  • v0.3.0-alpha.16 Changes

    May 10, 2019
    • โšก๏ธ Updated to new nightly async_await.
    • Changed AsyncRead::poll_vectored_read and AsyncWrite::poll_vectored_write to use
      stabilized std::io::{IoSlice, IoSliceMut} instead of iovec::IoVec, and renamed to
      AsyncRead::poll_read_vectored and AsyncWrite::poll_write_vectored.
    • โž• Added LocalBoxFuture and FutureExt::boxed_local.
    • Added TryStreamExt::{try_filter, inspect_ok, inspect_err}.
    • Added try_future::select_ok.
    • โž• Added AsyncBufReadExt::{read_line, lines}.
    • โž• Added io::BufReader.
  • v0.3.0-alpha.15 Changes

    April 27, 2019

    0.3.0-alpha.15 - 2019-4-26

    • โšก๏ธ Updated to stabilized futures_api.
    • โœ‚ Removed StreamObj, cautioned against usage of FutureObj.
    • ๐Ÿ”„ Changed StreamExt::select to a function.
    • โž• Added AsyncBufRead and AsyncSeek traits.
    • ๐Ÿ“Œ Expanded trait impls to include more pinned pointers and ?Sized types.
    • โž• Added future::Fuse::terminated constructor.
    • โž• Added never_error combinator.
    • โž• Added StreamExt::enumerate.
    • Re-added TryStreamExt::{and_then, or_else}.
    • โž• Added functions to partially progress a local pool.
    • ๐Ÿ”„ Changed to use our own Either type rather than the one from the either crate.
  • v0.3.0-alpha.14 Changes

    April 15, 2019

    0.3.0-alpha.14 - 2019-4-15

    • โšก๏ธ Updated to new nightly futures_api.
    • ๐Ÿ”„ Changed Forward combinator to drop sink after completion, and allow !Unpin Sinks.
    • โž• Added 0.1 <-> 0.3 compatability shim for Sinks.
    • ๐Ÿ”„ Changed Sink::Item to a generic parameter Sink<Item>, allowing Sinks to accept
      multiple different types, including types containing references.
    • ๐Ÿ”„ Changed AsyncRead and AsyncWrite to take Pin<&mut Self> rather than &mut self.
    • โž• Added support for no_std + alloc use.
    • ๐Ÿ”„ Changed join and try_join combinators to functions.
    • ๐Ÿ›  Fixed propagation of cfg-target-has-atomic feature.