lmdb-js

Simple, efficient, ultra-fast, scalable data store wrapper for LMDB

OTHER License

Downloads
20M
Stars
505
Committers
39

Bot releases are visible (Hide)

lmdb-js - v2.4.0

Published by github-actions[bot] over 2 years ago

The significant updates in v2.4 include:

  • Testing and fixes for compatibility with and optimization for bun (coming soon with some bug fixes in bun, but major parts for optimized use of bun are done).
  • Databases are opened with a write transaction (partly to address #164 and possibly #153). In v2.3, databases were opened with a read txn when possible, but it turns out this has a number of problems.
  • Switching to scoped names for the platform binary packages (like @lmdb/lmdb-linux-x64)
lmdb-js - v2.3.10

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.9

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.8

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.7

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.6

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.4

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.3

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.2

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.1

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.0

Published by github-actions[bot] over 2 years ago

V2.3 represents a major code refactor/upgrade switching to using NAPI instead of NAN as the interface to Node/V8. This has two primary benefits:

  • A single binary (per platform) can be used across all (supported) versions of NodeJS, past and future.
  • Deno is adopting NAPI (https://github.com/denoland/deno/pull/13633), and this will make it much easier and more efficient to support Deno (than FFI).

In addition, lmdb-js is now using a set of platform-specific sub-packages to install the appropriate binary for the platform (and only the appropriate binary). Together, this should dramatically decrease the downloaded/installed size of lmdb-js (from probably 15 MB to about 1 MB).

NAPI is a slightly slower than NAN (because it is an extra layer of abstraction). However, lmdb-js also ships binaries with extra version-specific NAN/V8 functions for performance sensitive functions. The distribution includes binary functions for Node V16 and also includes fast-api-calls, which should actually be faster than previous versions for V16 users. lmdb-js can be compiled to different Node versions if an extra boost in performance is needed.

Also note that with the transition to using NAPI as the interface for Deno support, FFI support is being dropped. That means that lmdb-js V2.3 will (probably) require Deno 1.22+, lmdb-js will need to be installed via package manager. For earlier versions of Deno, you would need to use lmdb-js V2.2.

Some other new features/improvements in V2.3:

  • Multiple versions of lmdb-js (V2.3+) can now be simultaneously installed and should properly work on the same database #136.
  • Added support for caching in combination with (abortable) child transactions #137.
lmdb-js - test-build

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.0-beta3

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.0-beta2

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.0-beta

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.2.6

Published by github-actions[bot] over 2 years ago

lmdb-js - arm64

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.2.5

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.3.0-alpha.1

Published by github-actions[bot] over 2 years ago

lmdb-js - v2.2.4

Published by github-actions[bot] over 2 years ago