ringbuffer-spsc
A fast thread-safe single producer-single consumer ring buffer
0.2.2
4.3M downloads/mo
#4871 most downloaded on crates.io
Mallets/ringbuffer-spsc
What this package is like to depend on
Last release 6 months ago
27 Jan 2026
Ships unpredictably
gaps range from 2 weeks to 2.1 years
Rarely documented
notes for 3 of 17 stable releases
2 versions withdrawn
withdrawn after publishing
4 years old
19 releases · first in 2022
5 releases in the last 12 months
see the full history below
Release timeline
19 releases · Jul 2022 to Jan 2026Releases
latest 19-
0.2.227 Jan 2026 -
0.2.106 Jan 2026Release notes
Open source →What's Changed
- Improve no-std support by @all-is-to-be-dared in #5
New Contributors
- @all-is-to-be-dared made their first contribution in #5
Full Changelog: https://github.com/Mallets/ringbuffer-spsc/commits/v0.2.1
-
0.2.022 Nov 2025Release notes
Open source →Removal of const generic for RingBuffer capacity
The RingBuffer no longer relies on a const generic parameter for its capacity.
The capacity is now stored directly in memory, making it significantly easier to embed both theRingbufferReaderandRingbufferWriterinside user-defined structs without needing to propagate const generics through your type system.This change improves ergonomics and simplifies integration into other data structures.
New initialization API
The RingBuffer is now constructed using the
ringbuffer()function instead of the formerRingBuffer::init()associated method.let (mut reader, mut writer) = ringbuffer(capacity);
This provides a cleaner and more intuitive initialization API.
New reader methods:
peekandpeek_mutRingbufferReadernow supports:peek()– inspect data without consuming itpeek_mut()– mutably inspect data without consuming it
These methods allow lookahead operations and in-place modifications while preserving the unread portion of the buffer.
-
0.1.1503 Sep 2025Nothing published for this version
-
0.1.1403 Sep 2025Nothing published for this version
-
0.1.1310 Feb 2025Nothing published for this version
-
0.1.1210 Feb 2025 withdrawnNothing published for this version
-
0.1.1129 Jan 2025Nothing published for this version
-
0.1.1029 Jan 2025Nothing published for this version
-
0.1.930 Dec 2022Nothing published for this version
-
0.1.812 Dec 2022Nothing published for this version
-
0.1.708 Dec 2022 withdrawnNothing published for this version
-
0.1.622 Sep 2022Nothing published for this version
-
0.1.522 Sep 2022Nothing published for this version
-
0.1.422 Sep 2022Nothing published for this version
-
0.1.327 Jul 2022Nothing published for this version
-
0.1.227 Jul 2022Nothing published for this version
-
0.1.127 Jul 2022Nothing published for this version
-
0.1.027 Jul 2022Nothing published for this version