PackageTrack
Sign in Get early access

blocking

A thread pool for isolating blocking I/O in async programs

1.6.2 164M downloads/mo #582 most downloaded on crates.io smol-rs/blocking

What this package is like to depend on

Last release 1 years ago

06 Jul 2025

Release timing varies

gaps range from 2 weeks to 1.1 years

Nearly every release is documented

notes for 31 of 31 stable releases

1 version withdrawn

withdrawn after publishing

7 years old

32 releases · first in 2019

0 releases in the last 12 months

see the full history below

Release timeline

32 releases · Jun 2019 to Jul 2025
2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 32
  1. 1.6.2 06 Jul 2025
    Release notes
    • Fix build failure with minimal-versions. (#71)
    Open source →
    Release notes
    • Fix build failure with minimal-versions. (#71)
    Open source →
  2. 1.6.1 26 May 2024
    Release notes
    • Remove our dependency on the async-lock crate. (#59)
    Open source →
    Release notes
    • Remove our dependency on the async-lock crate. (#59)
    Open source →
  3. 1.6.0 27 Apr 2024
    Release notes
    • Panics that occur in unblocked functions are now propagated to the calling
      function. (#58)
    • Add a new optional tracing feature. When enabled, this feature adds logging
      to the implementation. By default it is disabled. (#60)
    • Remove the unused fastrand dependency. (#61)
    Open source →
    Release notes
    • Panics that occur in unblocked functions are now propagated to the calling function. (#58)
    • Add a new optional tracing feature. When enabled, this feature adds logging to the implementation. By default it is disabled. (#60)
    • Remove the unused fastrand dependency. (#61)
    Open source →
  4. 1.5.1 13 Nov 2023
    Release notes
    • Fix compilation on WebAssembly targets (#54).
    Open source →
    Release notes
    • Fix compilation on WebAssembly targets (#54).
    Open source →
  5. 1.5.0 06 Nov 2023 withdrawn
    Release notes
    • Bump MSRV to 1.61. (#50)
    Open source →
    Release notes
    • Bump MSRV to 1.61. (#50)
    Open source →
  6. 1.4.1 08 Oct 2023
    Release notes
    • Change the error_span in grow_pool into trace_span. (#45)
    Open source →
    Release notes
    • Change the error_span in grow_pool into trace_span. (#45)
    Open source →
  7. 1.4.0 25 Sep 2023
    Release notes
    • Bump MSRV to 1.59. (#44)
    • Remove the unused memchr dependency. (#38)
    • Extract read/write pipes into the piper crate, which this crate now uses. (#37)
    • Mark as forbid(unsafe_code) (#37).
    • Set up logging using tracing. (#40)
    Open source →
    Release notes
    • Bump MSRV to 1.59. (#44)
    • Remove the unused memchr dependency. (#38)
    • Extract read/write pipes into the piper crate, which this crate now uses. (#37)
    • Mark as forbid(unsafe_code) (#37).
    • Set up logging using tracing. (#40)
    Open source →
  8. 1.3.1 07 Apr 2023
    Release notes
    • Gracefully handle the inability to spawn threads. (#31)
    Open source →
    Release notes
    • Gracefully handle the inability to spawn threads. (#31)
    Open source →
  9. 1.3.0 26 Nov 2022
    Release notes
    • Remove the dependency on the once_cell crate to restore the MSRV. (#30)
    Open source →
    Release notes
    • Remove the dependency on the once_cell crate to restore the MSRV. (#30)
    Open source →
  10. 1.2.0 12 Mar 2022
    Release notes
    • Return Task from unblock instead of returning opaque type. (#25)
    Open source →
  11. 1.1.0 10 Nov 2021
    Release notes
    • Add an environment variable to customize the maximum number of threads. (#21)
    Open source →
  12. 1.0.2 09 Oct 2020
    Release notes
    • Update futures-lite.
    Open source →
  13. 1.0.1 05 Oct 2020
    Release notes
    • Use async-task.
    Open source →
  14. 1.0.0 07 Sep 2020
    Release notes
    • Stabilize.
    Open source →
  15. 0.6.1 28 Aug 2020
    Release notes
    • Add probabilistic yielding to improve fairness.
    Open source →
  16. 0.6.0 26 Aug 2020
    Release notes
    • Remove the unblock! macro.
    Open source →
  17. 0.5.2 18 Aug 2020
    Release notes
    • Implement Sync for Unblock.
    Open source →
  18. 0.5.1 14 Aug 2020
    Release notes
    • Add Unblock::with_capacity().
    • Add unblock() function.
    • An optimization in task spawning.
    Open source →
  19. 0.5.0 21 Jul 2020
    Release notes
    • Simplify the API to just unblock! and Unblock.
    Open source →
  20. 0.4.7 19 Jul 2020
    Release notes
    • Simplify dependencies for faster compilation.
    Open source →
  21. 0.4.6 17 Jun 2020
    Release notes
    • Update doc comment on Unblock.
    Open source →
  22. 0.4.5 17 Jun 2020
    Release notes
    • Implement AsyncSeek/Seek for Unblock/BlockOn.
    Open source →
  23. 0.4.4 30 May 2020
    Release notes
    • Remove the initial poll in block_on that caused lost wakeups.
    Open source →
  24. 0.4.3 23 May 2020
    Release notes
    • Fix a bug where a closed Receiver causes panics.
    Open source →
  25. 0.4.2 17 May 2020
    Release notes
    • Start thread numbering from 1.
    Open source →
  26. 0.4.1 17 May 2020
    Release notes
    • Attach names to spawned threads.
    Open source →
  27. 0.4.0 17 May 2020
    Release notes
    • Remove Future impl for Blocking.
    • Add unblock().
    • Rename blocking! to unblock!.
    • Rename Blocking to Unblock.
    • Add block_on(), block_on!, and BlockOn.
    Open source →
  28. 0.3.2 11 May 2020
    Release notes
    • Make Blocking implement Send in more cases.
    Open source →
  29. 0.3.1 10 May 2020
    Release notes
    • Add Blocking::with_mut().
    Open source →
  30. 0.3.0 10 May 2020
    Release notes
    • Remove Blocking::spawn().
    • Implement Future for Blocking only when the inner type is a FnOnce.
    Open source →
  31. 0.2.0 09 May 2020
    Release notes
    • Initial version
    Open source →
  32. 0.1.0 15 Jun 2019
    Release notes
    • Reserved crate name
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive