Cargo Features

[dependencies]
futures-util-preview = { version = "0.3.0-alpha.19", default-features = false, features = ["std", "alloc", "async-await", "compat", "io-compat", "sink", "io", "channel", "join-macro", "select-macro", "unstable", "cfg-target-has-atomic", "bilock", "read_initializer"] }
default = std

The std feature is set by default whenever futures-util-preview is added without default-features = false somewhere in the dependency tree.

std default channel? compat? io? = alloc, slab

Enables std of futures-core-preview

Affects future::FutureExt.catch_unwind, future::FutureExt.shared, stream::StreamExt.catch_unwind, noop_waker::noop_waker_ref, future::FutureExt.remote_handle, futures-util-preview::async_await, futures-util-preview::io, spawn::SpawnExt.spawn_with_handle, spawn::LocalSpawnExt.spawn_local_with_handle, try_stream::TryStreamExt.into_async_read

alloc std

Enables alloc of futures-core-preview

Affects future::FutureExt.boxed, future::FutureExt.boxed_local, futures-util-preview::lock, sink::SinkExt.buffer, stream::futures_unordered, stream::StreamExt.for_each_concurrent, stream::StreamExt.boxed, stream::StreamExt.boxed_local, stream::StreamExt.buffered, stream::StreamExt.buffer_unordered, stream::StreamExt.chunks, spawn::SpawnExt.spawn, spawn::LocalSpawnExt.spawn_local, try_stream::TryStreamExt.try_for_each_concurrent, try_stream::TryStreamExt.try_buffer_unordered, stream::StreamExt.split

async-await join-macro? select-macro?

Affects futures-util-preview::async_await

compat io-compat? = futures_01, std

Affects futures-util-preview::compat, sink::SinkExt.compat, spawn::SpawnExt.compat, try_future::TryFutureExt.compat, try_stream::TryStreamExt.compat

io-compat = compat, io, tokio-io

Affects io::AsyncReadExt.compat, io::AsyncWriteExt.compat_write

sink = futures-sink-preview

Affects compat01as03::Sink01CompatExt, compat01as03::Compat01As03Sink, compat03as01::CompatSink, io::AsyncWriteExt.into_sink, futures-util-preview::sink, stream::StreamExt.forward, try_future::TryFutureExt.flatten_sink, stream::StreamExt.split

io io-compat? read_initializer? = futures-io-preview, memchr, std

Affects futures-util-preview::io, try_stream::TryStreamExt.into_async_read

channel = futures-channel-preview, std

Affects future::FutureExt.remote_handle, spawn::SpawnExt.spawn_with_handle, spawn::LocalSpawnExt.spawn_local_with_handle

join-macro = async-await, futures-join-macro-preview, proc-macro-hack, proc-macro-nested
select-macro = async-await, futures-select-macro-preview, proc-macro-hack, proc-macro-nested
unstable

Unstable features These features are outside of the normal semver guarantees and require the unstable feature as an explicit opt-in to unstable API.

Enables unstable of futures-core-preview

cfg-target-has-atomic

Enables cfg-target-has-atomic of futures-core-preview

bilock

Affects bilock::BiLockAcquire

read_initializer = io

Enables read_initializer and unstable of futures-io-preview

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

futures-channel-preview channel?
futures-io-preview io? read_initializer?
futures-sink-preview sink?
futures-join-macro-preview join-macro?
futures-select-macro-preview select-macro?
proc-macro-hack join-macro? select-macro?
proc-macro-nested join-macro? select-macro?
slab std
memchr io?
futures_01 compat?

Enables futures ^0.1.25

tokio-io io-compat?