Skip to content

Releases: Drup/ocaml-lmdb

1.1.1 - build system and test fixes

19 Jan 23:09

Choose a tag to compare

This minor release includes no changes to the library.

  • ship lmdb c library as a fallback when no system library is available. This helps windows where MSYS2 does not include lmdb and cygwin has broken and outdated lmdb 0.9.19
  • ship seq_of_dispenser to support tests on OCaml < 4.14.
  • increase size of test environment to avoid Map_full on OSX. Tests still fail most of the time on OSX.

1.1

12 Jan 11:41
43b466d

Choose a tag to compare

1.1
  • Fix bad allocation pattern in mdbs_cursor_get causing sporadic segfaults.
  • Add Map.close. Map/dbi slots are not freed by the GC anymore.
  • Implement Map.to_dispenser iterator to be used with the Stdlib.Seq module.
  • Deprecate iterators in the Cursor module. They can be easily constructed from a dispenser via Stdlib.Seq or the Gen module.
  • adjust depexts for alpine, rhel, centos, opensuse
  • Fix bogus warning about unused type in Map.create
  • fix simle_db.ml example
  • few documentation fixes

1.0

18 Apr 19:06

Choose a tag to compare

1.0
  • drop support for OCaml 4.02
  • add benchmark
  • add tests
  • fix several bugs
  • move away from ctypes, implement stubs in C
    • fixing a use-after-free bug and memory leaks
    • use (possibly mmaped) Bigstrings as representation of raw keys / values
    • also export the new raw bindings in case someone does not like the high level api
  • drop oasis, use dune
  • use MDB_RESERVE when possible (no duplicates, converter using provided allocator)
  • restructure the Modules to allow global transactions
  • cursors can no longer be cancelled - transactions can
  • phantom types for duplicates
  • more cursor movements
  • implement GET_MULTIPLE as *_all functions
  • implement iterators making use of GET_MULTIPLE where possible
  • single key-value databases are now called Map

0.1

17 Nov 19:11

Choose a tag to compare

0.1
Initial version.