trie-db
Merkle-Patricia Trie generic over key hasher and node encoding
0.32.0
14M downloads/mo
#2591 most downloaded on crates.io
paritytech/trie
What this package is like to depend on
Last release 4 days ago
19 Aug 2026
Release timing varies
gaps range from 9 days to 10 months
Some releases are documented
notes for 22 of 42 stable releases
4 versions withdrawn
withdrawn after publishing
8 years old
46 releases · first in 2019
6 releases in the last 12 months
see the full history below
Release timeline
46 releases · Jan 2019 to Aug 2026Releases
latest 46-
0.32.019 Aug 2026Release notes
Open source →- Fix the item count returned by
decode_compact/decode_compact_from_iterwhen the last decoded node carries an attached (detached-at-encoding) value: the value item was not counted, so continuing to decode concatenated encodings at the returned offset re-read the value as a node. #227 - Add
encode_compact_skip_duplicates, emitting each distinct item in a compact proof — trie node or detached value node — only once instead of once per referencing position. Deduplicated encodings reconstruct a readable hash-keyed database with any decoder, including already released ones; decoding them into position-keyed (prefixed) databases, or relying on reconstructed reference counts, is unsupported — a proof is a record of state accesses, not a database to mutate (polkadot-sdk#12565). #233
- Fix the item count returned by
-
0.31.008 Dec 2025Release notes
Open source →-
explicit commit on drop
-
doc updated
-
trie-db: version bumped
-
review: docs
-
version bump
-
bool flag: commit_on_drop
-
tests added
-
fmt
-
fixes
-
versions bumped
-
-
0.30.125 May 2026Nothing published for this version
-
0.30.007 Mar 2025 -
0.29.225 May 2026Nothing published for this version
-
0.29.114 May 2024 -
0.29.003 Apr 2024 -
0.28.125 May 2026Nothing published for this version
-
0.28.012 Sep 2023 -
0.27.225 May 2026Nothing published for this version
-
0.27.117 Mar 2023 -
0.27.014 Mar 2023Release notes
Open source → -
0.26.024 Feb 2023 -
0.25.114 Feb 2023 -
0.25.003 Feb 2023 -
0.24.004 Aug 2022Release notes
Open source →-
Do not check for root in
TrieDBandTrieDBMutconstructors: #155To get back the old behavior you have to add the following code:
if !db.contains(root, EMPTY_PREFIX) { return Err(InvalidStateRoot(root)) } -
Introduce trie level cache & recorder: #157
This pull requests introduced a cache that is directly baked into the trie-db. This cache can be used to speed up accessing data in the trie. Alongside the cache, the recorder was also made a first class citizen of the trie. The pull requests introduces quite a lot of changes to the trie api.
TrieDBandTrieDBMutare now for example now using a builder pattern. For more information see the pr.
-
-
0.23.104 Feb 2022 -
0.23.019 Oct 2021 -
0.22.602 Jul 2021 -
0.22.526 May 2021Nothing published for this version
-
0.22.426 May 2021Nothing published for this version
-
0.22.328 Jan 2021 -
0.22.205 Jan 2021 -
0.22.124 Jul 2020 -
0.22.006 Jul 2020 -
0.21.106 Jul 2020 withdrawnNothing published for this version
-
0.21.005 Jun 2020 -
0.20.114 Apr 2020Nothing published for this version
-
0.20.007 Feb 2020 -
0.19.216 Jan 2020 -
0.19.115 Jan 2020 withdrawnNothing published for this version
-
0.19.015 Jan 2020 withdrawnNothing published for this version
-
0.18.102 Jan 2020Nothing published for this version
-
0.18.019 Dec 2019Nothing published for this version
-
0.16.019 Nov 2019Nothing published for this version
-
0.15.219 Aug 2019Nothing published for this version
-
0.15.001 Aug 2019Nothing published for this version
-
0.14.004 Jul 2019Nothing published for this version
-
0.12.418 Jun 2019Nothing published for this version
-
0.12.312 Jun 2019 withdrawnNothing published for this version
-
0.12.229 Mar 2019Nothing published for this version
-
0.12.128 Mar 2019Nothing published for this version
-
0.12.027 Mar 2019Nothing published for this version
-
0.11.006 Feb 2019Nothing published for this version
-
0.9.123 Jan 2019Nothing published for this version
-
0.9.022 Jan 2019Nothing published for this version