Lmdb

Latest version: v1.6.2

Safety actively analyzes 714815 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 7

0.82

Not secure
* Both variants now implement max_spare_txns, reducing the cost of creating a
read-only transaction 4x for an uncontended database and by up to 20x for
very read-busy environments. By default only 1 read-only transaction is
cached, adjust max_spare_txns= parameter if your script operates multiple
simultaneous read transactions.

* Patch from Vladimir Vladimirov implementing MDB_NOLOCK.

* The max_spare_iters and max_spare_cursors parameters were removed, neither
ever had any effect.

* Cursor.putmulti() implemented based on a patch from Luke Kenneth Casson
Leighton. This function moves the loop required to batch populate a
database out of Python and into C.

* The bundled LMDB 0.9.11 has been updated with several fixes from upstream
Git.

* The cost of using keyword arguments in the CPython extension was
significantly reduced.

0.81

Not secure
* On Python 2.x the extension module would silently interpret Unicode
instances as buffer objects, causing UCS-2/UCS-4 string data to end up in
the database. This was never intentional and now raises TypeError. Any
Unicode data passed to py-lmdb must explicitly be encoded with .encode()
first.

* open_db()'s name argument was renamed to key, and its semantics now match
get() and put(): in other words the key must be a bytestring, and passing
Unicode will raise TypeError.

* The extension module now builds under Python 3.4 on Windows.

0.80

Not secure
* Both variants now build successfully as 32 bit / 64bit binaries on
Windows under Visual Studio 9.0, the compiler for Python 2.7. This enables
py-lmdb to be installed via pip on Windows without requiring a compiler to
be available. In future, .egg/.whl releases will be pre-built for all recent
Python versions on Windows.

Known bugs: Environment.copy() and Environment.copyfd() currently produce a
database that cannot be reopened.

* The lmdb.enable_drop_gil() function was removed. Its purpose was
experimental at best, confusing at worst.

0.79

Not secure
* CPython Cursor.delete() lacked dupdata argument, fixed.

* Fixed minor bug where CFFI _get_cursor() did not note its idea of
the current key and value were up to date.

* Cursor.replace() and Cursor.pop() updated for MDB_DUPSORT databases. For
pop(), the first data item is popped and returned. For replace(), the first
data item is returned, and all duplicates for the key are replaced.

* Implement remaining Cursor methods necessary for working with MDB_DUPSORT
databases: next_dup(), next_nodup(), prev_dup(), prev_nodup(), first_dup(),
last_dup(), set_key_dup(), set_range_dup(), iternext_dup(),
iternext_nodup(), iterprev_dup(), iterprev_nodup().

* The default for Transaction.put(dupdata=...) and Cursor.put(dupdata=...) has
changed from False to True. The previous default did not reflect LMDB's
normal mode of operation.

* LMDB 0.9.11 is bundled along with extra fixes from upstream Git.

0.78

Not secure
* Patch from bra-fsn to fix LMDB_LIBDIR.

* Various inaccurate documentation improvements.

* Initial work towards Windows/Microsoft Visual C++ 9.0 build.

* LMDB 0.9.11 is now bundled.

* To work around install failures minimum CFFI version is now >=0.8.0.

* ticket 38: remove all buffer object hacks. This results in ~50% slowdown
for cursor enumeration, but results in far simpler object lifetimes. A
future version may introduce a better mechanism for achieving the same
performance without loss of sanity.

0.77

Not secure
* Added Environment.max_key_size(), Environment.max_readers().

* CFFI now raises the correct Error subclass associated with an MDB_* return
code.

* Numerous CFFI vs. CPython behavioural inconsistencies have been fixed.

* An endless variety of Unicode related 2.x/3.x/CPython/CFFI fixes were made.

* LMDB 0.9.10 is now bundled, along with some extra fixes from Git.

* Added Environment(meminit=...) option.

Page 6 of 7

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.