John Nunley
db5857b0b7
v5.3.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2024-04-05 08:40:07 -07:00
Jacob Rothstein
f402b7e24c
feat: Add a loom implementation for event-listener
2024-03-30 12:00:55 -07:00
John Nunley
8f11a87281
v5.2.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2024-02-28 21:15:47 -08:00
John Nunley
3a49a00639
v5.1.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2024-02-17 21:37:31 -08:00
John Nunley
4c3568010a
v5.0.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2024-02-04 19:23:00 -08:00
John Nunley
e0fefc28b1
ex: Remove unsafe code from mutex example
...
This brings in the try-lock dependency.
Signed-off-by: John Nunley <dev@notgull.net>
2024-02-03 09:49:22 -08:00
Taiki Endo
b1d437ae83
Release 4.0.3
2024-01-07 03:03:27 +09:00
Taiki Endo
aade0393e8
Relax MSRV to 1.60
...
https://github.com/crossbeam-rs/crossbeam/pull/1056
2024-01-07 02:52:24 +09:00
dependabot[bot]
08c7e163a0
Update criterion requirement from 0.4.0 to 0.5.1 ( #62 )
...
Updates the requirements on [criterion](https://github.com/bheisler/criterion.rs ) to permit the latest version.
- [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bheisler/criterion.rs/compare/0.4.0...0.5.1 )
---
updated-dependencies:
- dependency-name: criterion
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-01-07 01:39:35 +09:00
John Nunley
9e986e614a
v4.0.2
...
Signed-off-by: John Nunley <dev@notgull.net>
2024-01-01 12:13:55 -08:00
John Nunley
ea0f6016ea
v4.0.1
...
Signed-off-by: John Nunley <dev@notgull.net>
2023-12-19 08:40:55 -08:00
John Nunley
cc33cc5467
Bump MSRV to 1.61 ( #102 )
...
This commit also adds portable-atomic tests for MIRI.
Signed-off-by: John Nunley <dev@notgull.net>
2023-12-16 12:44:52 -08:00
John Nunley
531c106f0e
v4.0.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2023-11-19 09:38:08 -08:00
John Nunley
e6ec597886
v3.1.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2023-11-12 16:14:53 -08:00
dependabot[bot]
c42dc40785
Update futures-lite requirement from 1.12.0 to 2.0.0
...
Updates the requirements on [futures-lite](https://github.com/smol-rs/futures-lite ) to permit the latest version.
- [Release notes](https://github.com/smol-rs/futures-lite/releases )
- [Changelog](https://github.com/smol-rs/futures-lite/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/futures-lite/compare/v1.12.0...v2.0.0 )
---
updated-dependencies:
- dependency-name: futures-lite
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-10-31 02:17:33 +09:00
John Nunley
ca654755ac
v3.0.1
...
Signed-off-by: John Nunley <dev@notgull.net>
2023-10-28 18:57:22 -07:00
Taiki Endo
ccd2dfe873
Migrate to Rust 2021 ( #85 )
2023-10-13 10:36:17 +09:00
John Nunley
d2ed2cdbf2
v3.0.0
...
Signed-off-by: John Nunley <dev@notgull.net>
2023-09-10 11:45:06 -07:00
John Nunley
cbbe9aafba
Move event-listener-strategy to its own repository
...
https://github.com/smol-rs/event-listener-strategy
Signed-off-by: John Nunley <dev@notgull.net>
2023-09-04 08:40:30 -07:00
John Nunley
c278371cfb
feat: Add explicit web support
...
This commit adds WASM compilation support to this crate. The main thing
is that the wait() family of APIs are removed in WASM mode, as blocking
is not allowed in WASM.
In addition, tests are added to CI to support WASM.
Signed-off-by: John Nunley <dev@notgull.net>
2023-08-26 12:53:39 -07:00
John Nunley
e408ccda10
bugfix: Tracking down a deadlock in async-channel
...
There was a deadlock where notifications would not get delivered for
listeners that were stuck in the fallback queue. There is an
optimization where the notification count is checked to see if the
notifications delivered by the user would make any impact on the
listener chain; if it wouldn't, then it isn't done at all. For no_std,
I've removed this optimization, as I doubt that it can be done
consistently due to the nature of the fallback queue.
During testing I also uncovered problems with the current implementation
of the fallback queue itself. I've replaced it with concurrent-queue for
now, as I doubt that a fully functioning queue wouldn't be trivial
enough to justify inlining it into event-listener itself. Unfortunately
it adds three additional dependencies to the tree of event-listener.
With this change, the async-channel tests pass consistently.
Signed-off-by: John Nunley <dev@notgull.net>
2023-08-19 08:36:34 -07:00
Taiki Endo
7ce2634cb5
bugfix: Use inline assembly in full_fence
...
Bumps the MSRV to 1.59
2023-08-13 14:31:59 -07:00
Taiki Endo
0ea464102e
m: Remove most of Pin API related unsafe code
...
- Use Option::as_pin_mut/Pin::set
- Use pin-project-lite
2023-08-09 12:27:09 -07:00
jtnunley
723c3282bb
Fix various CI errors
...
Fixes the following issues:
- Failed to build on MSRV due to Unpin bound
- Failed to build on no_std, as I didn't import Box
- Failed to build on portable-atomic, as Arc didn't implement Unpin
2023-04-04 09:44:23 -07:00
John Nunley
e909945dcb
Add a portable-atomic feature ( #53 )
2023-04-02 21:36:44 -07:00
jtnunley
20c69a16b5
Add a libstd implementation of the inner list
...
This implementation is around 20% faster than the no_std one, according
to benchmarks. Therefore, we should use it where we can.
2023-03-31 13:24:20 -07:00
jtnunley
5c83b86b90
Remove the `crossbeam-utils` dependency
...
Everything from that crate can either be inlined or ignored.
I also fix a bug with the list implementation as well.
2023-03-31 11:24:37 -07:00
jtnunley
1188962f0c
Remove the `slab` dependency
...
Ideally, we should have as few dependencies as possible. This change
inlines most of the logic from `slab` that we used into the
`ListenerSlab` struct.
2023-03-31 11:18:57 -07:00
jtnunley
9e3217767d
Move inner data to lib.rs
2023-03-30 09:14:22 -07:00
John Nunley
52cb4bfd1a
feat: Add the event-listener-strategy crate ( #49 )
2023-03-15 08:48:40 -07:00
John Nunley
0235e55a0f
Replace the linked list with a safer and less allocation-heavy alternative ( #38 )
...
* Use slab to avoid unsafe code
* Move send+sync impls down to Mutex
* Code review
* Unwrap the key earlier
* Reduce the scope of one of the unsafe blocks.
2022-11-21 08:42:27 -08:00
John Nunley
64965711e1
Bump criterion to 0.4.0 ( #35 )
2022-11-12 08:14:57 -08:00
John Nunley
16b3d599fc
Implement an algorithm to make this crate no_std, take 3 ( #34 )
2022-11-11 07:53:43 -08:00
John Nunley
5c1ae634fb
Add basic benchmarks ( #31 )
2022-09-09 07:30:51 -07:00
John Nunley
c36d7d5ca8
Bump rust-version to 1.39 ( #29 )
2022-08-31 20:54:19 -07:00
John Nunley
a01518f41c
Use the parking crate instead of threading APIs ( #27 )
2022-08-24 06:39:27 -07:00
Taiki Endo
a38fcb4955
Release 2.5.3
2022-07-27 11:26:40 +09:00
Taiki Endo
c73ad619f6
Release 2.5.2
2022-01-22 16:38:14 +09:00
Taiki Endo
c2be9b7511
Create GitHub release automatically
2022-01-08 19:28:55 +09:00
Taiki Endo
153fd3d871
Clean up CI config
2022-01-08 19:28:02 +09:00
Taiki Endo
4dcf727262
Remove readme field from Cargo.toml
2021-02-14 19:44:16 +09:00
Taiki Endo
5cdd66c265
Update URLs
2020-12-26 23:47:13 +09:00
Stjepan Glavina
f28e3c6010
Bump to v2.5.1
2020-09-22 10:17:13 +02:00
Stjepan Glavina
95f3eae73e
Bump to v2.5.0
2020-09-22 09:00:11 +02:00
Stjepan Glavina
9ce9fe3527
Bump to v2.4.0g
2020-08-20 17:56:45 +00:00
Stjepan Glavina
fe9ec7e60e
Bump to v2.3.3
2020-08-07 18:59:33 +02:00
Stjepan Glavina
a7beb7c9e0
Bump to v2.3.2
2020-08-05 18:59:58 +02:00
Stjepan Glavina
7658a8dcee
Bump to v2.3.1
2020-08-05 17:06:14 +02:00
Stjepan Glavina
a7506f2fe5
Bump to v2.3.0
2020-07-31 14:33:39 +02:00
Stjepan Glavina
3a50b9a3f3
Bump to v2.2.1
2020-07-24 16:28:08 +02:00