All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
Releases may yanked if there is a security bug, a soundness bug, or a regression.
0.2.12 - 2024-08-23
- Disable
derive
andclone-impls
features ofsyn
dependency.
0.2.11 - 2024-04-27
- Fix build failure on the latest nightly (nightly-2024-04-25+). (#97)
0.2.10 - 2024-01-12
- Fix "unexpected token" error on the comma following the async block. (#94, thanks @ethe)
0.2.9 - 2023-10-21
-
Update to new coroutine API since nightly-2023-10-21. (5860296)
On this crate's user side, the only change required is the following:
- #![feature(generators)] + #![feature(coroutines)]
0.2.8 - 2023-10-09
- Update to syn 2.0. (#92)
0.2.7 - 2023-06-29
- Fix build error from dependency when built with
-Z minimal-versions
.
0.2.6 - 2023-01-05
- Fix "generator cannot be sent between threads safely" error since nightly-2023-01-04.
0.2.5 - 2021-01-05
- Exclude unneeded files from crates.io.
0.2.4 - 2020-12-29
- Documentation improvements.
0.2.3 - 2020-11-08
- Update
pin-project
to 1.0.
0.2.2 - 2020-06-11
-
All macros can now compile with
forbid(unsafe_code)
. -
Support overlapping lifetime names in HRTB.
-
Diagnostic improvements.
0.2.1 - 2020-05-21
- Diagnostic improvements.
0.2.0 - 2020-05-10
-
Rename
#[async_stream]
to#[stream]
. (#45) -
Rename
#[async_try_stream]
to#[stream]
. (#45) -
Rename
async_stream_block!
tostream_block!
. (#45) -
Rename
async_try_stream_block!
totry_stream_block!
. (#45) -
Bug fixes.
-
Diagnostic improvements.
0.1.5 - 2020-05-04
#[async_stream]
and#[async_try_stream]
attributes can now be used on async blocks. (#44)
0.1.4 - 2020-04-22
- futures-async-stream now works on no-std environment. (#34)
0.1.3 - 2020-02-20
- Fix build failure on the latest nightly. (#33)
0.1.2 - 2019-12-10
- Fix build failure on the latest nightly. (#31)
0.1.1 - 2019-11-13
- Fix duplicate documentation.
0.1.0 - 2019-11-13
- Update
futures
to 0.3.0.
0.1.0-alpha.7 - 2019-09-25
- Update
pin-project
to 0.4.
0.1.0-alpha.6 - 2019-09-06
-
Add
async_try_stream
to support?
operator in async stream. (#15)For example, you can write the following:
#![feature(generators)] use futures::stream::Stream; use futures_async_stream::async_try_stream; #[async_try_stream(ok = i32, error = Box<dyn std::error::Error>)] async fn foo(stream: impl Stream<Item = String>) { #[for_await] for x in stream { yield x.parse()?; } }
-
Update
pin-project
to 0.4.0-alpha.9.
0.1.0-alpha.5 - 2019-08-29
- Pin the version of pin-project dependency.
0.1.0-alpha.4 - 2019-08-23
-
Remove usage of some feature gates.
-
Update
pin-project
to 0.4.0-alpha.4.
0.1.0-alpha.3 - 2019-08-14
- Update
proc-macro2
,syn
, andquote
to 1.0.
0.1.0-alpha.2 - 2019-08-07
-
You can now use async stream functions in traits. (#12)
For example, you can write the following:
#![feature(async_await, generators)] use futures_async_stream::async_stream; trait Foo { #[async_stream(boxed, item = u32)] async fn method(&mut self); } struct Bar(u32); impl Foo for Bar { #[async_stream(boxed, item = u32)] async fn method(&mut self) { while self.0 < u32::MAX { self.0 += 1; yield self.0; } } }
0.1.0-alpha.1 - 2019-07-31
Initial release