Skip to content
Tags give the ability to mark specific points in history as being important
  • 0.1.5
    a4f15496 · Bump to 0.1.5 ·
    Version 0.1.5
    
    * Fix `#![no_std]` support
  • 0.1.4
    54295111 · Bump to 0.1.4 ·
    Version 0.1.4
    
    This is quite a large release relative to the previous point releases! As
    with all 0.1 releases, this release should be fully compatible with the 0.1.3
    release. If any incompatibilities are discovered please file an issue!
    
    The largest changes in 0.1.4 are the addition of a `Sink` trait coupled with a
    reorganization of this crate. Note that all old locations for types/traits
    still exist, they're just deprecated and tagged with `#[doc(hidden)]`.
    
    The new `Sink` trait is used to represent types which can periodically over
    time accept items, but may take some time to fully process the item before
    another can be accepted. Essentially, a sink is the opposite of a stream. This
    trait will then be used in the tokio-core crate to implement simple framing by
    modeling I/O streams as both a stream and a sink of frames.
    
    The organization of this crate is to now have three primary submodules,
    `future`, `stream`, and `sink`. The traits as well as all combinator types are
    defined in these submodules. The traits and types like `Async` and `Poll` are
    then reexported at the top of the crate for convenient usage. It should be a
    relatively rare occasion that the modules themselves are reached into.
    
    Finally, the 0.1.4 release comes with a new module, `sync`, in the futures
    crate.  This is intended to be the home of a suite of futures-aware
    synchronization primitives. Currently this is inhabited with a `oneshot` module
    (the old `oneshot` function), a `mpsc` module for a new multi-producer
    single-consumer channel, and a `BiLock` type which represents sharing ownership
    of one value between two consumers. This module may expand over time with more
    types like a mutex, rwlock, spsc channel, etc.
    
    Notable deprecations in the 0.1.4 release that will be deleted in an eventual
    0.2 release:
    
    * The `TaskRc` type is now deprecated in favor of `BiLock` or otherwise `Arc`
      sharing.
    * All future combinators should be accessed through the `future` module, not
      the top-level of the crate.
    * The `Oneshot` and `Complete` types are now replaced with the `sync::oneshot`
      module.
    * Some old names like `collect` are deprecated in favor of more appropriately
      named versions like `join_all`
    * The `finished` constructor is now `ok`.
    * The `failed` constructor is now `err`.
    * The `done` constructor is now `result`.
    
    As always, please report bugs to https://github.com/alexcrichton/futures-rs and
    we always love feedback! If you've got situations we don't cover, combinators
    you'd like to see, or slow code, please let us know!
    
    Full changelog:
    
    * Improve scalability of `buffer_unordered` combinator
    * Fix a memory ordering bug in oneshot
    * Add a new trait, `Sink`
    * Reorganize the crate into three primary modules
    * Add a new `sync` module for synchronization primitives
    * Add a `BiLock` sync primitive for two-way sharing
    * Deprecate `TaskRc`
    * Rename `collect` to `join_all`
    * Use a small vec in `Events` for improved clone performance
    * Add `Stream::select` for selecting items from two streams like `merge` but
      requiring the same types.
    * Add `stream::unfold` constructor
    * Add a `sync::mpsc` module with a futures-aware multi-producer single-consumer
      queue. Both bounded (with backpressure) and unbounded (no backpressure)
      variants are provided.
    * Renamed `failed`, `finished`, and `done` combinators to `err`, `ok`, and
      `result`.
    * Add `Stream::forward` to send all items to a sink, like `Sink::send_all`
    * Add `Stream::split` for streams which are both sinks and streams to have
      separate ownership of the stream/sink halves
    * Improve `join_all` with concurrency
  • 0.1.3
    43e290f0 · Bump to 0.1.3 ·
    Version 0.1.3
    
    * Rewrite `oneshot` for efficiency and removing allocations on send/recv
    * Errors are passed through in `Stream::take` and `Stream::skip`
    * Add a `select_ok` combinator to pick the first of a list that succeeds
    * Remove the unnecessary `SelectAllNext` typedef
    * Add `Stream::chunks` for receiving chunks of data
    * Rewrite `stream::channel` for efficiency, correctness, and removing
      allocations
    * Remove `Send + 'static` bounds on the `stream::Empty` type
  • futures-cpupool-0.1.2
    Version 0.1.2
    
    * Add a `Builder` for fine-grained configuration
    * Assert number of threads is nonzero
    * Annotate `CpuFuture` with `#[must_use]`
  • 0.1.2
    b3b9ee64 · Bump to 0.1.2 ·
    Version 0.1.2
    
    * Fixed a bug in drop of `FutureSender`
    * Expose the channel `SendError` type
    * Add `Future::into_stream` to convert to a single-element stream
    * Add `Future::flatten_to_stream` to convert a future of a stream to a stream
    * impl Debug for SendError
    * Add stream::once for a one element stream
    * Accept IntoIterator in stream::iter
    * Add Stream::catch_unwind
  • futures-cpupool-0.1.1
    Version 0.1.1
  • 0.1.1
    22afb84d · Bump to 0.1.1 ·
    Version 0.1.1