heed
A fully typed LMDB (mdb.master) wrapper with minimum overhead
0.22.1
4.9M downloads/mo
#4580 most downloaded on crates.io
Kerollmops/heed
What this package is like to depend on
Last release 4 months ago
07 Apr 2026
Release timing varies
gaps range from 8 days to 7 months
Rarely documented
notes for 3 of 34 stable releases
1 version withdrawn
withdrawn after publishing
7 years old
52 releases · first in 2019
8 releases in the last 12 months
see the full history below
Release timeline
52 releases · Oct 2019 to Apr 2026Releases
latest 52-
0.22.107 Apr 2026Release notes
Open source →heed & heed3
This release brings a new functionality: the possibility to create multiple nested read transactions from an uncommitted write transaction. You can also examine another usage in the dedicated example file.
We finally merged the changes to upstream LMDB (mdb.master3), and the patch has been thoroughly reviewed by Howard Chu.
// opening a write transaction let mut wtxn = env.write_txn()?; // [use the RwTxn to write into the env] // opening multiple read-only transactions without committing beforehand let rtxns = (0..1000).map(|_| env.nested_read_txn(&wtxn)).collect::<heed::Result<Vec<_>>>()?; // you can also spawn nested read transactions from the write txn too let rtxns = (0..1000).map(|_| wtxn.nested_read_txn()).collect::<heed::Result<Vec<_>>>()?; // [use the RoTxns and move them onto different threads]
-
0.22.1-nested-rtxns-724 Feb 2026 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns-605 Nov 2025 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns-524 Oct 2025 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns-423 Oct 2025 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns-313 Oct 2025 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns-209 Oct 2025 pre-releaseNothing published for this version
-
0.22.1-nested-rtxns30 Sep 2025 pre-releaseRelease notes
Open source →heed & heed3
This release brings a new experimental functionality: the possibility to create multiple nested read transactions from an uncommitted write transaction. You can also examine another usage in the dedicated example file or in this Meilisearch pull request.
We are attempting to merge the necessary changes to upstream LMDB, but it will require additional work to ensure it produces correct C code. You can review the dedicated OpenLDAP tracking issue to see how it progresses.
// opening a write transaction let mut wtxn = env.write_txn()?; // [use the RwTxn to write into the env] // opening multiple read-only transactions without committing beforehand let rtxns = (0..1000).map(|_| env.nested_read_txn(&wtxn)).collect::<heed::Result<Vec<_>>>()?; // [use the RoTxns and move them onto different threads]
-
0.22.013 Mar 2025Release notes
Open source →heed & heed3
This release brings better-polished support for the heed/heed3 duality. It also improves the documentation, adds support for custom duplicate sort comparators, supports the
PREV_SNAPSHOTflag, better support for Thread Local Storage (TLS)-backed of transactions, and bumps LMDB to the latest patch.What's Changed
- Combined version of LMDB mdb.master and mdb.master3 by @Kerollmops in #278
- Upgrade dependencies by @Kerollmops in #295, #304, #320, and #303
- List the examples in the Cargo tomls by @Kerollmops in #298
- Parametric TLS for read transactions by @Kerollmops in #300
- Fix the
MDB_NOTLSdocumentation by @Kerollmops in #302 - Update license for 2025 by @meili-bot in #305
- Bump LMDB commit, use GitLab for LMDB and improve the build script by @Kerollmops in #310 and #311
- Break and improve the
Env::copy_to_filemethod by @Kerollmops in #312 - Introduce the
PREV_SNAPSHOTflag by @irevoire in #296 - Rename
FIXED_MAPflag name by @Kerollmops in #313 - Expose
USE_VALGRINDcompilation flag asuse-valgrindfeature by @dureuill in #288 - Introduce
AnyTlsby @dureuill in #315 - Show ranges of slice in the doc by @Kerollmops in #318
- More
Envparameter accessors by @Kerollmops in #321 - Setting
NDEBUGon release builds by @Kerollmops in #324 - Bump
-syscrates and heed/heed3 versions by @Kerollmops in #325 - Introduce the
Env::copy_to_pathmethod by @Kerollmops in #326 - Make the
Env<WithTls>the default by @Kerollmops in #327 - Add Dup Sort Custom Comparator support by @Kerollmops and @oXtxNt9U in #319
Full Changelog: v0.21.0...v0.22.0
-
0.21.006 Dec 2024Release notes
Open source →heed & heed3
This release introduces the first wrapper around the mdb.master3 LMDB branch, which features encryption at rest. You can use the new heed3 crate to read and write data encrypted on disk and decrypted on demand.
What's Changed
- Make the
RoTxncovariant and keep it!Syncby @Kerollmops in #285 - Relax the
HeedDecodebound onLazy::remapby @irevoire in #287 - add custom ordering support to range types by @Boog900 in #289
New Contributors
Full Changelog: v0.20.5...v0.21.0
- Make the
-
0.20.518 Aug 2024Nothing published for this version
-
0.20.412 Aug 2024Nothing published for this version
-
0.20.302 Jul 2024Nothing published for this version
-
0.20.231 May 2024Nothing published for this version
-
0.20.116 May 2024Nothing published for this version
-
0.20.026 Apr 2024Nothing published for this version
-
0.20.0-alpha.927 Nov 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.824 Nov 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.723 Nov 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.607 Nov 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.506 Nov 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.423 Aug 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.313 Jul 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.227 Jun 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.108 Jun 2023 pre-releaseNothing published for this version
-
0.20.0-alpha.011 Jan 2023 pre-releaseNothing published for this version
-
0.11.028 Jan 2021Nothing published for this version
-
0.10.616 Dec 2020Nothing published for this version
-
0.10.504 Dec 2020Nothing published for this version
-
0.10.419 Nov 2020Nothing published for this version
-
0.10.318 Nov 2020Nothing published for this version
-
0.10.214 Nov 2020Nothing published for this version
-
0.10.102 Nov 2020Nothing published for this version
-
0.10.030 Oct 2020Nothing published for this version
-
0.9.028 Oct 2020Nothing published for this version
-
0.8.105 Jul 2020Nothing published for this version
-
0.8.026 May 2020Nothing published for this version
-
0.7.226 May 2020 withdrawnNothing published for this version
-
0.7.126 Apr 2020Nothing published for this version
-
0.7.028 Mar 2020Nothing published for this version
-
0.6.509 Mar 2020Nothing published for this version
-
0.6.406 Feb 2020Nothing published for this version
-
0.6.325 Dec 2019Nothing published for this version
-
0.6.224 Dec 2019Nothing published for this version
-
0.6.106 Dec 2019Nothing published for this version
-
0.6.026 Nov 2019Nothing published for this version
-
0.5.003 Nov 2019Nothing published for this version
-
0.4.031 Oct 2019Nothing published for this version
-
0.3.131 Oct 2019Nothing published for this version
-
0.3.031 Oct 2019Nothing published for this version
-
0.2.028 Oct 2019Nothing published for this version
-
0.1.020 Oct 2019Nothing published for this version