2024-04-05 15:34:23 +00:00
|
|
|
# Version 5.3.0
|
|
|
|
|
|
|
|
- Add a `loom` implementation. This feature is unstable and is not semver-supported. (#126)
|
|
|
|
- Make the panic message for polling the `EventListener` after it has completed more clear. (#125)
|
|
|
|
|
2024-02-29 05:15:47 +00:00
|
|
|
# Version 5.2.0
|
|
|
|
|
|
|
|
- Make `StackSlot` `Sync`. (#121)
|
|
|
|
|
2024-02-18 00:22:18 +00:00
|
|
|
# Version 5.1.0
|
|
|
|
|
|
|
|
- Make `StackSlot` `Send`. (#119)
|
|
|
|
|
2024-02-05 03:23:00 +00:00
|
|
|
# Version 5.0.0
|
|
|
|
|
|
|
|
- **Breaking:** Rework the API to afford better usage. (#105)
|
|
|
|
- The heap-based API of the v2.x line is back.
|
|
|
|
- However, there is a stack-based API as an alternative.
|
|
|
|
- Add a way to get the total number of listeners. (#114)
|
|
|
|
|
2024-01-06 17:56:54 +00:00
|
|
|
# Version 4.0.3
|
|
|
|
|
|
|
|
- Relax MSRV to 1.60. (#110)
|
|
|
|
|
2024-01-01 20:13:55 +00:00
|
|
|
# Version 4.0.2
|
|
|
|
|
|
|
|
- Avoid spinning in `wait_deadline`. (#107)
|
|
|
|
|
2023-12-19 16:40:55 +00:00
|
|
|
# Version 4.0.1
|
|
|
|
|
|
|
|
- Fix a use-after-move error after an `EventListener` is assigned to listen to
|
|
|
|
another `Event`. (#101)
|
|
|
|
|
2023-11-19 17:38:08 +00:00
|
|
|
# Version 4.0.0
|
|
|
|
|
|
|
|
- **Breaking:** Fix a footgun in the `EventListener` type. `EventListener::new()`
|
|
|
|
now no longer takes an `&Event` as an argument, and `EventListener::listen()`
|
|
|
|
takes the `&Event` as an argument. Hopefully this should prevent `.await`ing
|
|
|
|
on a listener without making sure it's listening first. (#94)
|
|
|
|
|
2023-11-13 00:14:53 +00:00
|
|
|
# Version 3.1.0
|
|
|
|
|
|
|
|
- Implement `UnwindSafe` and `RefUnwindSafe` for `EventListener`. This was unintentionally removed in version 3 (#96).
|
|
|
|
|
2023-10-29 01:57:22 +00:00
|
|
|
# Version 3.0.1
|
|
|
|
|
|
|
|
- Emphasize that `listen()` must be called on `EventListener` in documentation. (#90)
|
|
|
|
- Write useful output in `fmt::Debug` implementations. (#86)
|
|
|
|
|
2023-09-10 18:45:06 +00:00
|
|
|
# Version 3.0.0
|
|
|
|
|
|
|
|
- Use the `parking` crate instead of threading APIs (#27)
|
|
|
|
- Bump MSRV to 1.59 (#71)
|
|
|
|
- **Breaking:** Make this crate `no_std`-compatible on `default-features = false`. (#34)
|
|
|
|
- Create a new `event-listener-strategy` crate for abstracting over blocking/non-blocking operations. (#49)
|
|
|
|
- **Breaking:** Change the `EventListener` API to be `!Unpin`. (#51)
|
|
|
|
- Enable a feature for the `portable-atomic` crate. (#53)
|
|
|
|
- **Breaking:** Add a `Notification` trait which is used to enable tagged events. (#52)
|
|
|
|
- Add an `is_notified()` method to `Event`. (#48)
|
|
|
|
- **Breaking:** Make it so `notify()` returns the number of listeners notified. (#57)
|
|
|
|
|
2022-07-27 02:26:40 +00:00
|
|
|
# Version 2.5.3
|
|
|
|
|
|
|
|
- Fix fence on x86 and miri.
|
|
|
|
|
2022-01-22 07:38:14 +00:00
|
|
|
# Version 2.5.2
|
|
|
|
|
|
|
|
- Fix stacked borrows violation when `-Zmiri-tag-raw-pointers` is enabled. (#24)
|
|
|
|
|
2020-09-22 08:17:13 +00:00
|
|
|
# Version 2.5.1
|
|
|
|
|
|
|
|
- Replace spinlock with a mutex.
|
|
|
|
|
2020-09-22 07:00:11 +00:00
|
|
|
# Version 2.5.0
|
|
|
|
|
|
|
|
- Add `EventListener::discard()`.
|
|
|
|
|
2020-08-20 17:56:45 +00:00
|
|
|
# Version 2.4.0
|
|
|
|
|
|
|
|
- `Event::new()` is now a const fn.
|
|
|
|
|
2020-08-07 16:59:33 +00:00
|
|
|
# Version 2.3.3
|
|
|
|
|
|
|
|
- Fix a bug in `List::insert()` that was causing deadlocks.
|
|
|
|
|
2020-08-05 16:59:58 +00:00
|
|
|
# Version 2.3.2
|
|
|
|
|
|
|
|
- Optimization: use a simple spinlock and cache an `Entry` for less allocation.
|
|
|
|
|
2020-08-05 15:06:14 +00:00
|
|
|
# Version 2.3.1
|
|
|
|
|
|
|
|
- Optimization: don't initialize `Inner` when notifying `Event`.
|
|
|
|
|
2020-07-31 12:33:39 +00:00
|
|
|
# Version 2.3.0
|
|
|
|
|
|
|
|
- Implement `UnwindSafe`/`RefUnwindSafe` for `Event`/`EventListener`.
|
|
|
|
|
2020-07-24 14:28:08 +00:00
|
|
|
# Version 2.2.1
|
|
|
|
|
|
|
|
- Always keep the last waker in `EventListener::poll()`.
|
|
|
|
|
2020-07-02 16:16:36 +00:00
|
|
|
# Version 2.2.0
|
|
|
|
|
|
|
|
- Add `EventListener::same_event()`.
|
|
|
|
|
2020-07-02 15:30:49 +00:00
|
|
|
# Version 2.1.0
|
|
|
|
|
|
|
|
- Add `EventListener::listens_to()`.
|
|
|
|
|
2020-06-24 00:04:48 +00:00
|
|
|
# Version 2.0.1
|
|
|
|
|
|
|
|
- Replace `usize::MAX` with `std::usize::MAX`.
|
|
|
|
|
2020-05-27 11:10:11 +00:00
|
|
|
# Version 2.0.0
|
|
|
|
|
|
|
|
- Remove `Event::notify_one()` and `Event::notify_all()`.
|
|
|
|
- Add `Event::notify_relaxed()` and `Event::notify_additional_relaxed()`.
|
|
|
|
- Dropped notified `EventListener` now notifies one *or* one additional listener.
|
|
|
|
|
2020-05-25 10:50:36 +00:00
|
|
|
# Version 1.2.0
|
|
|
|
|
|
|
|
- Add `Event::notify_additional()`.
|
|
|
|
|
2020-05-25 10:06:18 +00:00
|
|
|
# Version 1.1.2
|
|
|
|
|
|
|
|
- Change a `Relaxed` load to `Acquire` load.
|
|
|
|
|
2020-05-25 09:47:24 +00:00
|
|
|
# Version 1.1.1
|
|
|
|
|
|
|
|
- Fix a bug in `EventListener::wait_timeout()`.
|
|
|
|
|
2020-05-24 22:34:54 +00:00
|
|
|
# Version 1.1.0
|
|
|
|
|
|
|
|
- Add `EventListener::notify()`.
|
|
|
|
|
2020-05-20 19:17:36 +00:00
|
|
|
# Version 1.0.1
|
2020-05-16 17:44:50 +00:00
|
|
|
|
2020-05-24 22:34:54 +00:00
|
|
|
- Reduce the complexity of `notify_all()` from O(n) to amortized O(1).
|
2020-05-20 19:17:36 +00:00
|
|
|
- Fix a bug where entries were notified in wrong order.
|
|
|
|
- Add tests.
|
2020-05-16 17:44:50 +00:00
|
|
|
|
2020-05-20 19:17:36 +00:00
|
|
|
# Version 1.0.0
|
2020-05-16 17:44:50 +00:00
|
|
|
|
2020-05-20 19:17:36 +00:00
|
|
|
- Initial version.
|