{"id":21945239,"url":"https://github.com/ardaku/smelling_salts","last_synced_at":"2025-04-22T21:13:13.419Z","repository":{"id":40398015,"uuid":"236219025","full_name":"ardaku/smelling_salts","owner":"ardaku","description":"Start a thread to wake an async executor when the OS's I/O event notifier gathers that the hardware is ready.","archived":false,"fork":false,"pushed_at":"2023-02-21T00:57:35.000Z","size":137,"stargazers_count":10,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"stable","last_synced_at":"2025-04-22T21:12:51.977Z","etag":null,"topics":["async-await","futures","hardware","rust-library","wake","wakers"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ardaku.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE_APACHE_2_0.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-25T19:30:34.000Z","updated_at":"2024-06-08T00:54:51.000Z","dependencies_parsed_at":"2024-11-29T04:18:07.492Z","dependency_job_id":"afd1bea2-05a4-4a9b-aa97-b0ca1ea0d78b","html_url":"https://github.com/ardaku/smelling_salts","commit_stats":{"total_commits":98,"total_committers":4,"mean_commits":24.5,"dds":0.4591836734693877,"last_synced_commit":"d7f90469a083519a41f606b13e1ce6b479550e3d"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardaku%2Fsmelling_salts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardaku%2Fsmelling_salts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardaku%2Fsmelling_salts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardaku%2Fsmelling_salts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ardaku","download_url":"https://codeload.github.com/ardaku/smelling_salts/tar.gz/refs/heads/stable","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250324708,"owners_count":21411946,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["async-await","futures","hardware","rust-library","wake","wakers"],"created_at":"2024-11-29T04:18:03.528Z","updated_at":"2025-04-22T21:13:13.401Z","avatar_url":"https://github.com/ardaku.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smelling Salts\n\n#### [Changelog][3] | [Source][4] | [Getting Started][5]\n\n[![tests](https://github.com/ardaku/smelling_salts/workflows/tests/badge.svg)][2]\n[![docs](https://docs.rs/smelling_salts/badge.svg)][0]\n[![crates.io](https://img.shields.io/crates/v/smelling_salts.svg)][1]\n\nAbstraction over OS APIs to handle asynchronous device waking.\n\n## About\nIf you're writing a Rust library to handle hardware asynchronously, you should\nuse this crate.  This library automatically wakes futures by registering a waker\nwith a device that you construct with a file descriptor.\n\n### Currently Supported APIs\n - Epoll (Linux)\n\n### Planned APIs\n - Run loops (MacOS)\n - Kqueue (BSD/MacOS)\n - IOCP (Windows)\n - Various Bare Metal?\n - Others?\n\n## MSRV\nThe minimum supported Rust version of Smelling Salts is 1.66; bumping the MSRV\nis considered a breaking change and requires incrementing the leftmost version\nnumber.\n\n## License\nLicensed under any of\n - Apache License, Version 2.0, ([LICENSE_APACHE_2_0.txt][7]\n   or [https://www.apache.org/licenses/LICENSE-2.0][8])\n - Boost Software License, Version 1.0, ([LICENSE_BOOST_1_0.txt][11]\n   or [https://www.boost.org/LICENSE_1_0.txt][12])\n - MIT License, ([LICENSE_MIT.txt][9] or [https://mit-license.org/][10])\n\nat your option.\n\n### Contribution\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\nlicensed as described above, without any additional terms or conditions.\n\n## Help\nIf you want help using or contributing to this library, feel free to send me an\nemail at [aldaronlau@gmail.com][13].\n\n[0]: https://docs.rs/smelling_salts\n[1]: https://crates.io/crates/smelling_salts\n[2]: https://github.com/ardaku/smelling_salts/actions?query=workflow%3Atests\n[3]: https://github.com/ardaku/smelling_salts/blob/stable/CHANGELOG.md\n[4]: https://github.com/ardaku/smelling_salts/\n[5]: https://docs.rs/smelling_salts#getting-started\n[6]: https://aldaronlau.com/\n[7]: https://github.com/ardaku/smelling_salts/blob/stable/LICENSE_APACHE_2_0.txt\n[8]: https://www.apache.org/licenses/LICENSE-2.0\n[9]: https://github.com/ardaku/smelling_salts/blob/stable/LICENSE_MIT.txt\n[10]: https://mit-license.org/\n[11]: https://github.com/ardaku/smelling_salts/blob/stable/LICENSE_BOOST_1_0.txt\n[12]: https://www.boost.org/LICENSE_1_0.txt\n[13]: mailto:aldaronlau@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fardaku%2Fsmelling_salts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fardaku%2Fsmelling_salts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fardaku%2Fsmelling_salts/lists"}