21 releases (11 breaking)
0.12.1 | Feb 21, 2023 |
---|---|
0.11.0 | Jan 22, 2023 |
0.9.2 | Dec 10, 2022 |
0.8.0 | Oct 17, 2022 |
0.1.0 | May 3, 2020 |
#1262 in Asynchronous
74 downloads per month
Used in 8 crates
(6 directly)
19KB
278 lines
Smelling Salts
Changelog | Source | Getting Started
Abstraction over OS APIs to handle asynchronous device waking.
About
If you're writing a Rust library to handle hardware asynchronously, you should use this crate. This library automatically wakes futures by registering a waker with a device that you construct with a file descriptor.
Currently Supported APIs
- Epoll (Linux)
Planned APIs
- Run loops (MacOS)
- Kqueue (BSD/MacOS)
- IOCP (Windows)
- Various Bare Metal?
- Others?
MSRV
The minimum supported Rust version of Smelling Salts is 1.66; bumping the MSRV is considered a breaking change and requires incrementing the leftmost version number.
License
Licensed under any of
- Apache License, Version 2.0, (LICENSE_APACHE_2_0.txt or https://www.apache.org/licenses/LICENSE-2.0)
- Boost Software License, Version 1.0, (LICENSE_BOOST_1_0.txt or https://www.boost.org/LICENSE_1_0.txt)
- MIT License, (LICENSE_MIT.txt or https://mit-license.org/)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as described above, without any additional terms or conditions.
Help
If you want help using or contributing to this library, feel free to send me an email at aldaronlau@gmail.com.
Dependencies
~59KB