NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2326 most downloaded on crates.io
Persistent data structures with structural sharing
Last release 4 months ago
15 May 2026
Release timing varies
gaps range from 4 weeks to 1.4 years
Nearly every release is documented
notes for 21 of 21 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
21 releases · first in 2017
Improved the performance of the HashTrie{Map,Set} .
HashTrie{Map,Set}.HashTrie{Map,Set} iterator.Added parallel iterator support for HashTrieMapSync .
HashTrieMapSync.ptr_eq() to {HashTrie,RedBlackTree}Map and {HashTrie,RedBlackTree}Set.One column per quarter.
Relicensed project under the MIT license.
Updated dependencies.
Use triomphe reference-counting pointer by default in Sync data structures, which improves their performance.
Sync data structures,Fix the tests of SparseArrayUsize on 32-bit computers. This issue did not affect production code which did work correctly on 32-bit platforms.
SparseArrayUsize on 32-bit computers. This issue did not affect production code which did work correctly on 32-bit platforms.First stable version. It’s time to commit to a stable release :).
{HashTrie,RedBlackTree}Map and {HashTrie,RedBlackTree}Set, as well as{HashTrie,RedBlackTree}Set when the references are the same.Updated archery fixing a soundness bug. See issue #18 .
Implemented Hash ofr RedBlackTreeSet .
Hash ofr RedBlackTreeSet.Added {HashTrie,RedBlackTree}Map::get_key_value() and {HashTrie,RedBlackTree}Set::get() .
{HashTrie,RedBlackTree}Map::get_key_value() and {HashTrie,RedBlackTree}Set::get().Improved {HashTrieMap,HashTrieSet} iteration performance.
{HashTrieMap,HashTrieSet} iteration performance.Added {HashTrie,RedBlackTree}Map::get_mut().
{HashTrie,RedBlackTree}Map::get_mut().HashTrieMap performance when using Rc pointers.* Added support for no_std.
no_std.Now the shared pointer type of all data structures use can be parameterizable. See the Thread safety section in the README for details.
Implemented RedBlackTree{Map,Set}::range() iterator.
RedBlackTree{Map,Set}::range() iterator.IndexMut and Vector::get_mut().#[must_use] to the immutable methods of all data structures.List::reverse_mut().RedBlackTreeSet serialization.Mutable methods galore. Now all data structures offer mutable methods. These are generally much faster!
Extend for Vector.Added macros to create data structures with the given values (analog to vec![]).
vec![]).{HashTrieSet,RedBlackTreeSet}::{is_disjoint(),is_subset(),is_superset()}.Added support for serialization with serde.
HashTrieMap::remove() by ~70%.Vector::push_back() by ~80%.Implemented RedBlackTreeMap data structure.
RedBlackTreeMap data structure.RedBlackTreeSet data structure.Implemented Queue data structure.
Queue data structure.HashTrieSet data structure.Stack data structure.List::last() and List::reverse().Initial release of rpds. This release contains these data structures: List, Vector, and HashTrieMap.
List, Vector, and HashTrieMap.Your coding agent can read these notes before it upgrades. Set up the MCP server →