async-executor/CHANGELOG.md

111 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

# Version 1.11.0
- Re-export the `async_task::FallibleTask` primitive. (#113)
- Support racy initialization of the executor state. This should allow the executor to be
initialized on web targets without any issues. (#108)
# Version 1.10.0
- Add a function `spawn_batch` that allows users to spawn multiple tasks while only locking the executor once. (#92)
# Version 1.9.1
- Remove the thread-local optimization due to the bugs that it introduces. (#106)
# Version 1.9.0
- Re-introduce the thread-local task push optimization to the executor. (#93)
- Bump `async-task` to v4.4.0. (#90)
- Replace some unnecessary atomic operations with non-atomic operations. (#94)
- Use weaker atomic orderings for notifications. (#95)
- When spawning a future, avoid looking up the ID to assign to that future twice. (#96)
# Version 1.8.0
- When spawned tasks panic, the panic is caught and then surfaced in the spawned
`Task`. Previously, the panic would be surfaced in `tick()` or `run()`. (#78)
# Version 1.7.2
- Fix compilation under WebAssembly targets (#77).
# Version 1.7.1
- Fix compilation under WebAssembly targets (#75).
- Add a disclaimer indicating that this is a reference executor (#74).
# Version 1.7.0
- Bump `async-lock` and `futures-lite` to their latest versions. (#70)
# Version 1.6.0
- Remove the thread-local queue optimization, as it caused a number of bugs in production use cases. (#61)
# Version 1.5.4
- Fix a panic that could happen when two concurrent `run()` calls are made and the thread local task slot is left as `None`. (#55)
# Version 1.5.3
- Fix an accidental breaking change in v1.5.2, where `ex.run()` was no longer `Send`. (#50)
- Remove the unused `memchr` dependency. (#51)
# Version 1.5.2
- Add thread-local task queue optimizations, allowing new tasks to avoid using the global queue. (#37)
- Update `fastrand` to v2. (#45)
2023-04-07 18:01:23 +00:00
# Version 1.5.1
- Implement a better form of debug output for Executor and LocalExecutor. (#33)
2022-11-09 02:34:15 +00:00
# Version 1.5.0
- Remove the dependency on the `once_cell` crate to restore the MSRV. (#29)
- Update `concurrent-queue` to v2.
2021-04-24 08:56:59 +00:00
# Version 1.4.1
- Remove dependency on deprecated `vec-arena`. (#23)
2020-11-10 14:56:55 +00:00
# Version 1.4.0
- Add `Executor::is_empty()` and `LocalExecutor::is_empty()`.
2020-09-20 14:32:51 +00:00
# Version 1.3.0
- Parametrize executors over a lifetime to allow spawning non-`static` futures.
2020-09-20 00:40:01 +00:00
# Version 1.2.0
- Update `async-task` to v4.
2020-09-14 13:51:41 +00:00
# Version 1.1.1
- Replace `AtomicU64` with `AtomicUsize`.
2020-09-10 21:29:05 +00:00
# Version 1.1.0
- Use atomics to make `Executor::run()` and `Executor::tick()` futures `Send + Sync`.
2020-09-07 14:03:27 +00:00
# Version 1.0.0
- Stabilize.
2020-08-29 18:07:00 +00:00
# Version 0.2.1
- Add `try_tick()` and `tick()` methods.
2020-08-26 21:47:41 +00:00
# Version 0.2.0
- Redesign the whole API.
2020-07-23 16:47:28 +00:00
# Version 0.1.2
- Add the `Spawner` API.
2020-07-23 10:03:03 +00:00
# Version 0.1.1
- Initial version