diff --git a/CHANGELOG.md b/CHANGELOG.md
index 742be93b44..09e1d9a4d4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,15 @@
+# 0.3.0-alpha.10 - 2018-11-27
+* Revamped `select!` macro
+* Added `select_next_some` method for getting only the `Some` elements of a stream from `select!`
+* Added `futures::lock::Mutex` for async-aware synchronization.
+* Fixed bug converting `Pin>` to `StreamObj`
+* Improved performance of futures::channel
+* Improved performance and documentation of `Shared`
+* Add `new` method and more `derive`s to the `Compat` type
+* Enabled spawning on a borrowed threadpool
+* Re-added `join_all`
+* Added `try_concat`
+
# 0.3.0-alpha.9 - 2018-10-18
* Fixed in response to new nightly handling of 2018 edition + `#![no_std]`
diff --git a/README.md b/README.md
index 1af9584195..1ab89afb94 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@
-
+
Documentation
|
Website
@@ -30,7 +30,7 @@ Add this to your `Cargo.toml`:
```toml
[dependencies]
-futures-preview = "0.3.0-alpha.9"
+futures-preview = "0.3.0-alpha.10"
```
Now, you can use futures-rs:
@@ -47,7 +47,7 @@ a `#[no_std]` environment, use:
```toml
[dependencies]
-futures-preview = { version = "0.3.0-alpha.9", default-features = false }
+futures-preview = { version = "0.3.0-alpha.10", default-features = false }
```
# License
diff --git a/futures-channel/Cargo.toml b/futures-channel/Cargo.toml
index 11b24e2dae..6e29429305 100644
--- a/futures-channel/Cargo.toml
+++ b/futures-channel/Cargo.toml
@@ -1,12 +1,12 @@
[package]
name = "futures-channel-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_channel"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_channel"
description = """
Channels for asynchronous communication using futures-rs.
"""
@@ -19,9 +19,9 @@ std = ["futures-core-preview/std"]
default = ["std"]
[dependencies]
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false }
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false }
[dev-dependencies]
-futures-preview = { path = "../futures", version = "0.3.0-alpha.9", default-features = true }
-futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.9", default-features = true }
+futures-preview = { path = "../futures", version = "0.3.0-alpha.10", default-features = true }
+futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.10", default-features = true }
pin-utils = "0.1.0-alpha.3"
diff --git a/futures-channel/src/lib.rs b/futures-channel/src/lib.rs
index 8b20e8ab73..e2114059d2 100644
--- a/futures-channel/src/lib.rs
+++ b/futures-channel/src/lib.rs
@@ -10,7 +10,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_channel")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_channel")]
#[cfg(feature = "std")]
mod lock;
diff --git a/futures-core/Cargo.toml b/futures-core/Cargo.toml
index e14e0aa8b7..2dc605be44 100644
--- a/futures-core/Cargo.toml
+++ b/futures-core/Cargo.toml
@@ -3,12 +3,12 @@ cargo-features = ["rename-dependency"]
[package]
name = "futures-core-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_core"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_core"
description = """
The core traits and types in for the `futures` library.
"""
@@ -25,4 +25,4 @@ nightly = []
either = { version = "1.4", default-features = false, optional = true }
[dev-dependencies]
-futures-preview = { path = "../futures", version = "0.3.0-alpha.9" }
+futures-preview = { path = "../futures", version = "0.3.0-alpha.10" }
diff --git a/futures-core/src/lib.rs b/futures-core/src/lib.rs
index 9b54d2aa54..0299fa5b66 100644
--- a/futures-core/src/lib.rs
+++ b/futures-core/src/lib.rs
@@ -8,7 +8,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_core")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_core")]
pub mod future;
#[doc(hidden)] pub use self::future::{Future, FusedFuture, TryFuture};
diff --git a/futures-executor/Cargo.toml b/futures-executor/Cargo.toml
index dab49a29a5..d756f21207 100644
--- a/futures-executor/Cargo.toml
+++ b/futures-executor/Cargo.toml
@@ -1,12 +1,12 @@
[package]
name = "futures-executor-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_executor"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_executor"
description = """
Executors for asynchronous tasks based on the futures-rs library.
"""
@@ -19,13 +19,13 @@ std = ["num_cpus", "futures-core-preview/std", "futures-util-preview/std", "futu
default = ["std"]
[dependencies]
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false}
-futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.9", default-features = false}
-futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.9", default-features = false}
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false}
+futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.10", default-features = false}
+futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.10", default-features = false}
num_cpus = { version = "1.8.0", optional = true }
lazy_static = { version = "1.1.0", optional = true }
pin-utils = "0.1.0-alpha.3"
[dev-dependencies]
-futures-preview = { path = "../futures", version = "0.3.0-alpha.9" }
-futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.9" }
+futures-preview = { path = "../futures", version = "0.3.0-alpha.10" }
+futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.10" }
diff --git a/futures-executor/src/lib.rs b/futures-executor/src/lib.rs
index e86a019866..a19c660176 100644
--- a/futures-executor/src/lib.rs
+++ b/futures-executor/src/lib.rs
@@ -7,7 +7,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_executor")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_executor")]
#[cfg(feature = "std")]
mod local_pool;
diff --git a/futures-io/Cargo.toml b/futures-io/Cargo.toml
index b1ee04f33f..799df34843 100644
--- a/futures-io/Cargo.toml
+++ b/futures-io/Cargo.toml
@@ -1,12 +1,12 @@
[package]
name = "futures-io-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_io"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_io"
description = """
The `AsyncRead` and `AsyncWrite` traits for the futures-rs library.
"""
@@ -19,9 +19,9 @@ std = ["futures-core-preview/std", "iovec"]
default = ["std"]
[dependencies]
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false }
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false }
iovec = { version = "0.1", optional = true }
[dev-dependencies]
-futures-preview = { path = "../futures", version = "0.3.0-alpha.9" }
+futures-preview = { path = "../futures", version = "0.3.0-alpha.10" }
assert_matches = "1.3.0"
diff --git a/futures-io/src/lib.rs b/futures-io/src/lib.rs
index 503dfb5f2c..dd3ff9c660 100644
--- a/futures-io/src/lib.rs
+++ b/futures-io/src/lib.rs
@@ -9,7 +9,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_io")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_io")]
#![feature(futures_api)]
diff --git a/futures-sink/Cargo.toml b/futures-sink/Cargo.toml
index f54543f0cb..cd1ef995dc 100644
--- a/futures-sink/Cargo.toml
+++ b/futures-sink/Cargo.toml
@@ -1,12 +1,12 @@
[package]
name = "futures-sink-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_sink"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_sink"
description = """
The asynchronous `Sink` trait for the futures-rs library.
"""
@@ -20,5 +20,5 @@ default = ["std"]
[dependencies]
either = { version = "1.4", default-features = false, optional = true }
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false }
-futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.9", default-features = false }
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false }
+futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.10", default-features = false }
diff --git a/futures-sink/src/lib.rs b/futures-sink/src/lib.rs
index 1f4209f8f0..33c5643174 100644
--- a/futures-sink/src/lib.rs
+++ b/futures-sink/src/lib.rs
@@ -5,7 +5,7 @@
#![cfg_attr(not(feature = "std"), no_std)]
#![warn(missing_docs, missing_debug_implementations)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_sink")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_sink")]
#![feature(pin, arbitrary_self_types, futures_api)]
diff --git a/futures-test/Cargo.toml b/futures-test/Cargo.toml
index 41bae94479..f19c29f2ab 100644
--- a/futures-test/Cargo.toml
+++ b/futures-test/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "futures-test-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Wim Looman "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
diff --git a/futures-util/Cargo.toml b/futures-util/Cargo.toml
index 57d78eff85..8d58cdcf95 100644
--- a/futures-util/Cargo.toml
+++ b/futures-util/Cargo.toml
@@ -3,12 +3,12 @@ cargo-features = ["rename-dependency"]
[package]
name = "futures-util-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_util"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_util"
description = """
Common utilities and extension traits for the futures-rs library.
"""
@@ -26,10 +26,10 @@ bench = []
nightly = []
[dependencies]
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false }
-futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.9", default-features = false }
-futures-io-preview = { path = "../futures-io", version = "0.3.0-alpha.9", default-features = false }
-futures-sink-preview = { path = "../futures-sink", version = "0.3.0-alpha.9", default-features = false}
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false }
+futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.10", default-features = false }
+futures-io-preview = { path = "../futures-io", version = "0.3.0-alpha.10", default-features = false }
+futures-sink-preview = { path = "../futures-sink", version = "0.3.0-alpha.10", default-features = false}
either = { version = "1.4", default-features = false }
rand = { version = "0.5.5", optional = true }
slab = { version = "0.4", optional = true }
@@ -39,7 +39,7 @@ tokio-io = { version = "0.1.9", optional = true }
pin-utils = "0.1.0-alpha.3"
[dev-dependencies]
-futures-preview = { path = "../futures", version = "0.3.0-alpha.9" }
-futures-executor-preview = { path = "../futures-executor", version = "0.3.0-alpha.9" }
-futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.9" }
+futures-preview = { path = "../futures", version = "0.3.0-alpha.10" }
+futures-executor-preview = { path = "../futures-executor", version = "0.3.0-alpha.10" }
+futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.10" }
tokio = "0.1.11"
diff --git a/futures-util/src/lib.rs b/futures-util/src/lib.rs
index 1e1444bc1b..da27572c08 100644
--- a/futures-util/src/lib.rs
+++ b/futures-util/src/lib.rs
@@ -9,7 +9,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures_util")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures_util")]
#[macro_use]
mod macros;
diff --git a/futures/Cargo.toml b/futures/Cargo.toml
index bb6e7a830b..f410b029d6 100644
--- a/futures/Cargo.toml
+++ b/futures/Cargo.toml
@@ -1,14 +1,14 @@
[package]
name = "futures-preview"
edition = "2018"
-version = "0.3.0-alpha.9"
+version = "0.3.0-alpha.10"
authors = ["Alex Crichton "]
license = "MIT OR Apache-2.0"
readme = "../README.md"
keywords = ["futures", "async", "future"]
repository = "https://github.com/rust-lang-nursery/futures-rs"
homepage = "https://rust-lang-nursery.github.io/futures-rs"
-documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures"
+documentation = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures"
description = """
An implementation of futures and streams featuring zero allocations,
composability, and iterator-like interfaces.
@@ -23,16 +23,16 @@ travis-ci = { repository = "rust-lang-nursery/futures-rs" }
appveyor = { repository = "rust-lang-nursery/futures-rs" }
[dependencies]
-futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.9", default-features = false }
-futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.9", default-features = false }
-futures-executor-preview = { path = "../futures-executor", version = "0.3.0-alpha.9", default-features = false }
-futures-io-preview = { path = "../futures-io", version = "0.3.0-alpha.9", default-features = false }
-futures-sink-preview = { path = "../futures-sink", version = "0.3.0-alpha.9", default-features = false }
-futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.9", default-features = false }
+futures-core-preview = { path = "../futures-core", version = "0.3.0-alpha.10", default-features = false }
+futures-channel-preview = { path = "../futures-channel", version = "0.3.0-alpha.10", default-features = false }
+futures-executor-preview = { path = "../futures-executor", version = "0.3.0-alpha.10", default-features = false }
+futures-io-preview = { path = "../futures-io", version = "0.3.0-alpha.10", default-features = false }
+futures-sink-preview = { path = "../futures-sink", version = "0.3.0-alpha.10", default-features = false }
+futures-util-preview = { path = "../futures-util", version = "0.3.0-alpha.10", default-features = false }
[dev-dependencies]
pin-utils = "0.1.0-alpha.3"
-futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.9", default-features = false }
+futures-test-preview = { path = "../futures-test", version = "0.3.0-alpha.10", default-features = false }
tokio = "0.1.11"
[features]
diff --git a/futures/src/lib.rs b/futures/src/lib.rs
index a63fdfd056..dbae48f2dd 100644
--- a/futures/src/lib.rs
+++ b/futures/src/lib.rs
@@ -28,7 +28,7 @@
#![warn(missing_docs, missing_debug_implementations)]
#![deny(bare_trait_objects)]
-#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.9/futures")]
+#![doc(html_root_url = "https://rust-lang-nursery.github.io/futures-api-docs/0.3.0-alpha.10/futures")]
#![cfg_attr(feature = "nightly", feature(cfg_target_has_atomic))]