Skip to content

Latest commit

 

History

History
1336 lines (765 loc) · 57.8 KB

CHANGELOG.md

File metadata and controls

1336 lines (765 loc) · 57.8 KB

Changelog

6.1.1 - 2022-03-25

Fixed

  • Fix getMany() memory leak (#804) (51979d1) (Vincent Weevers)
  • Document new features (ba729d2) (Vincent Weevers).

6.1.0 - 2021-09-28

Added

  • Add db.getMany(keys) (#787) (50dc50b) (Vincent Weevers).

6.0.3 - 2021-09-28

Fixed

  • Build universal binary for M1 (Apple silicon) (#781) (26ea717) (Vincent Weevers)
  • Make db.clear() 27x faster by doing it natively (aedf49e) (Vincent Weevers)
  • Optimize db.iterator() (112906b) (Vincent Weevers)
  • Cleanup hanging iterator also when next() errored (7356ba4) (Vincent Weevers)
  • Prevent GC of db during clear() and other operations (9a3f59a) (Vincent Weevers).

6.0.2 - 2021-09-12

Fixed

  • Close database on environment exit (#783) (8fdcaaa) (Vincent Weevers).

6.0.1 - 2021-08-01

Fixed

  • Support approximateSize() on db bigger than 4 GB (#777) (8740057) (Lars Kuhtz)

6.0.0 - 2021-04-10

If you are upgrading: please see UPGRADING.md.

Changed

  • Breaking: bump abstract-leveldown (15d5a9e) (Vincent Weevers)
  • Breaking: drop node 8 (Level/community#98) (8502b34) (Vincent Weevers)
  • Bump node-gyp from 6.x to 7.x (8bc5696) (Vincent Weevers)
  • Bump standard from 14.x to 16.x (d39e232, 39e3ca3) (Vincent Weevers)
  • Bump node-gyp-build from 4.1.x to 4.2.x (#708) (91711fa) (Vincent Weevers)
  • Skip stack exhaustion test (55a33b1) (Vincent Weevers)

Removed

5.6.0 - 2020-03-27

Changed

  • Upgrade nyc devDependency from ^14.0.0 to ^15.0.0 (#696) (@vweevers)
  • Upgrade electron devDependency from ^7.0.1 to ^8.0.0 (#700) (@vweevers)

Added

5.5.1 - 2020-02-24

Fixed

  • Fix android arm64 prebuild by disabling exceptions (#706) (@vweevers)

5.5.0 - 2020-02-19

Changed

Added

5.4.1 - 2019-10-26

Fixed

5.4.0 - 2019-10-19

Changed

  • Refactor initialization of range options (#681) (@vweevers)
  • Make iterator seek target a local variable (#683) (@vweevers)
  • Upgrade node-gyp devDependency from ^5.0.0 to ^6.0.0 (#677) (@vweevers)
  • Upgrade dependency-check devDependency from ^3.3.0 to ^4.1.0 (8965e58) (@vweevers)

Added

5.3.0 - 2019-10-04

Changed

  • Replace Ubuntu 16.04 with CentOS 7 for prebuilds (#674) (@rvagg). This makes the prebuilt binary for linux compatible with Debian 8, Ubuntu 14.04, RHEL 7, CentOS 7 and other flavors with an old glibc.

Added

5.3.0-0 - 2019-10-04

This was a prerelease of 5.3.0 for testing purposes. Changes listed above.

5.2.1 - 2019-09-20

Added

Fixed

5.2.0 - 2019-09-06

Changed

  • Upgrade abstract-leveldown from ~6.0.3 to ~6.1.1 (#660) (@vweevers)
  • Upgrade napi-macros from ~1.8.1 to ~2.0.0 (#657) (@vweevers)
  • Upgrade hallmark devDependency from ^0.1.0 to ^2.0.0 (#654, #663) (@vweevers)
  • Upgrade standard devDependency from ^12.0.0 to ^14.0.0 (#653, #661) (@vweevers)
  • Upgrade rimraf devDependency from ^2.6.1 to ^3.0.0 (#658) (@vweevers)
  • Upgrade electron devDependency from ^5.0.0 to ^6.0.0 (#656) (@vweevers)

Added

5.1.1 - 2019-06-28

Changed

  • Remove fast-future in favor of native cache limit (#638) (@vweevers)
  • Upgrade delayed devDependency from ^1.0.1 to ^2.0.0 (#650) (@vweevers)
  • Upgrade readfiletree devDependency from ~0.0.1 to ^1.0.0 (#648) (@vweevers)
  • Upgrade du devDependency from ~0.1.0 to ^1.0.0 (#649) (@vweevers)
  • Upgrade mkfiletree devDependency from ^1.0.1 to ^2.0.0 (#647) (@vweevers)
  • Upgrade node-gyp devDependency from ^4.0.0 to ^5.0.0 (#642) (@vweevers)
  • Replace async devDependency with async-each (#637) (@vweevers)

Removed

Fixed

  • Fix batch compression test to actually compress (#651) (@vweevers)

5.1.0 - 2019-05-18

Changed

  • Upgrade node-gyp-build from ~3.8.0 to ~4.1.0 (#625) (@vweevers)
  • Upgrade prebuildify devDependency from prebuild/prebuildify#override-platform to ^3.0.0 (#625) (@vweevers)
  • Upgrade electron devDependency from ^4.1.2 to ^5.0.0 (#616) (@vweevers)
  • CI optimization: skip initial compilation in Travis arm job (#625) (@vweevers)
  • CI optimization: skip redundant npm install in arm containers (#625) (@vweevers)

Added

Fixed

  • Add armv tag to ARM prebuilds (to ensure ARM version matches) (#625) (@vweevers)

5.0.3 - 2019-04-26

Changed

Added

Fixed

  • Prevent segfault: create reference to chained batch object (#621) (@vweevers)
  • Skip writing empty (chained) batch and make callbacks asynchronous (#619) (@vweevers)
  • Throw error in iterator_seek if iterator has ended (#618) (@vweevers)

5.0.2 - 2019-04-23

Changed

  • Upgrade nyc devDependency from ^13.2.0 to ^14.0.0 (#610) (@vweevers)
  • Upgrade tempy devDependency from ^0.2.1 to ^0.3.0 (#611) (@vweevers)

Fixed

5.0.1 - 2019-04-07

Added

Removed

Fixed

  • Skip hallmark test because it broke (and is out of scope for) CITGM (#606) (@vweevers)

5.0.0 - 2019-03-29

If you are upgrading: please see UPGRADING.md.

Changed

Added

Removed

Fixed

  • Serialize compactRange() arguments (#517) (@vweevers)
  • Prevent segfault: when calling iterator() on non-open db (#514) (@vweevers)
  • Prevent segfault: add PriorityWorker to defer closing until put is done (#597) (@vweevers)
  • Prevent segfault: keep persistent references to iterators until they are ended (#597) (@vweevers)
  • Gitignore Debug builds of LevelDB and Snappy (#597) (@vweevers)
  • Fix subtests by adding t.plan() (#594) (@vweevers)

4.0.2 - 2019-03-02

Changed

Added

4.0.1 - 2018-05-22

Changed

Removed

4.0.0 - 2018-05-16

Added

Changed

Fixed

Removed

3.0.2 - 2018-05-05

Changed

3.0.1 - 2018-04-26

Added

  • Run verify-travis-appveyor as part of tests to ensure they are in sync (@ralphtheninja)
  • Test that destroy() doesn't inadvertently create the directory (@vweevers)
  • Add node 10 to Travis and AppVeyor (@ralphtheninja)

Changed

Fixed

  • Handle all errors in destroy tests (@vweevers)
  • Fix deprecation warnings related to Buffer() (@peakji)
  • Fix deprecation warnings related to nan (@ralphtheninja)

Removed

  • Remove node 5 and 7 from AppVeyor (@ralphtheninja)
  • Remove console.log() from approximate-size-test.js (@vweevers)

3.0.0 - 2018-01-30

Changed

Removed

Fixed

  • Make sure destroy() deletes LevelDB-only dir (@joyeecheung)

2.1.1 - 2017-12-02

Fixed

  • Omit docs from LevelDB and test files from Snappy (@peakji)

2.1.0 - 2017-11-24

Fixed

  • Fix Android compilation (@staltz)

2.0.2 - 2017-11-23

Added

Changed

2.0.1 - 2017-11-11

Changed

Fixed

2.0.0 - 2017-10-02

Changed

Removed

1.9.0 - 2017-09-28

Added

  • Add default export of LevelDOWN (@zixia)

1.8.0 - 2017-09-14

Added

Changed

1.7.2 - 2017-06-08

Changed

  • iterator.next() calls back with error if called after iterator.end() (@peakji)

Fixed

  • Closing db with open iterator should not crash (@peakji)

1.7.1 - 2017-06-01

Added

Changed

1.7.0 - 2017-05-17

Changed

1.7.0-0 - 2017-04-12

Added

  • Add support for OpenBSD (@qbit)

Changed

1.6.0 - 2017-02-02

Added

Changed

1.5.3 - 2016-12-30

Added

1.5.2 - 2016-12-29

Added

1.5.1 - 2016-12-27

Added

Changed

  • Enable iterator.seek() with buffers (@peakji)

Removed

1.5.0 - 2016-09-27

Changed

Removed

1.4.6 - 2016-04-29

Added

Changed

1.4.5 - 2016-04-18

Added

Changed

Removed

Fixed

  • Fix delete calls not using [] (@chjj)
  • Free start slices on conflicting options (@chjj)
  • Dispose of unused slices (@chjj)
  • Release iterator snapshots (@chjj)
  • Fix iterator leak (@chjj)
  • Add handlescopes to fix potential memory leaks (@chjj)
  • Fix repair-test for multilang windows (@vweevers)
  • Repair error is different on windows (@ralphtheninja)

1.4.4 - 2016-01-25

Changed

Fixed

1.4.3 - 2015-12-14

Added

Changed

Fixed

1.4.2 - 2015-10-21

Added

Changed

1.4.1 - 2015-08-15

Added

Changed

1.4.0 - 2015-07-28

Added

Changed

Removed

1.3.1-0 - 2015-07-20

Changed

Removed

1.3.0 - 2015-06-16

Added

Changed

  • Upgrade to LevelDB@1.18.0 (Braydon Fuller)

Removed

Fixed

  • Add LEVELDB_PLATFORM_UV to LevelDB port.h to fix test (Braydon Fuller)

1.2.2 - 2015-06-02

Fixed

  • Ignore build-pre-gyp/ folder when publishing to npm (@ralphtheninja)

1.2.1 - 2015-06-01

Changed

  • Use remote_path with node-pre-gyp to dodge preparing package.json every time (@ralphtheninja)
  • Add more io.js versions (@ralphtheninja)
  • Use node-gyp-install to make sure correct node-gyp headers are downloaded (@ralphtheninja)

1.2.0 - 2015-06-01

Added

1.1.0 - 2015-05-28

Changed

1.0.7 - 2015-05-27

Added

Changed

1.0.6 - 2015-05-05

Changed

1.0.5 - 2015-05-05

Fixed

1.0.4 - 2015-05-05

Changed

1.0.3 - 2015-05-02

Changed

Fixed

1.0.2 - 2015-04-26

Added

  • Add documentation about snapshots (@maxogden)

Changed

1.0.1 - 2015-01-16

Changed

  • Upgrade to nan@1.5 for io.js support (@rvagg)

Fixed

  • Fix LevelDB builds for modern gcc versions (@sharvil)

1.0.0 - 2014-08-26

Changed

  • Upgrade to nan@1.3 for Node 0.11.13+ support (@rvagg)
  • Upgrade to LevelDB@1.17.0 (@kesla)
  • Allow writing empty values: null, undefined, '', [] and Buffer(0). Entries come out as '' or Buffer(0) (@ggreer, @juliangruber, @rvagg)
  • Massive speed up of iterators by chunking reads (@kesla)
  • Wrap in abstract-leveldown for consistent type-checking across *DOWNs (@kesla)
  • Switch to plain MIT license (@andrewrk)

Removed

  • Remove compile option that borked EL5 compiles (@rvagg)

Fixed

  • Fix clang build (@thlorenz)
  • Fix minor memory leaks in options attributes (@ggreer)

0.10.6 - 2016-01-07

Added

Changed

Removed

0.10.5 - 2015-05-05

Changed

0.10.4 - 2015-02-07

Changed

0.10.3 - 2015-02-07

Changed

0.10.2 - 2013-11-30

Fixed

0.10.1 - 2013-11-21

From this release and onward, tags in git start with the prefix v, i.e. this release corresponds to the tag v0.10.1.

Changed

  • Upgrade to nan@0.6 for Node 0.11.6 support, v8::Local<T>::New(val) rewritten to NanNewLocal<T>(val) (@rvagg)

0.10.0 - 2013-11-18

Added

  • Add new simple batch() leak tester (@rvagg)

Changed

  • Upgrade to Snappy@1.1.1 (@rvagg and @No9)
  • Upgrade to nan@0.5.x (@rvagg)
  • Upgrade to abstract-leveldown@0.11.x for testing (@rvagg)
  • Switch all callback->Call()s to node::MakeCallback() to properly support Node.js domains (@rvagg)
  • Enable LevelDB's BloomFilter (@Kyotoweb)
  • Properly enable compression by default (@Kyotoweb)

Removed

  • Remove Persistent references for all batch() operations as WriteBatch takes an explicit copy of the data (@mcollina and @rvagg)

Fixed

0.9.2 - 2013-11-02

Fixed

  • Minor fixes to support Node@0.11.8 and new Linux gcc (warnings) (@rvagg)

0.9.1 - 2013-10-03

Fixed

  • Include port_uv.h for Windows compile, added test to suite to make sure this happens every time LevelDB is upgraded (@rvagg)

0.9.0 - 2013-10-01

Changed

  • Upgrade to LevelDB@0.14.0, includes change from .sst to .ldb file extension for SST files (@rvagg)

0.8.3 - 2013-09-18

The diff between this version and the previous shows 0.8.4 in the commit message. This is incorrect, since that version was never released.

Changed

  • Upgrade to nan@0.4.0, better support for latest Node master & support for installing within directory structures containing spaces in directory names (@rvagg)

0.8.2 - 2013-09-01

Added

0.8.1 - 2013-09-01

Added

Fixed

  • Fix minor V8-level leaks (@rvagg)

0.8.0 - 2013-08-26

Added

Changed

  • Switch to nan as an npm dependency (@rvagg)

0.7.0 - 2013-08-11

Added

Changed

  • Use nan for Node 0.8->0.11 compatibility (@rvagg)
  • Minor perf improvements in C++ (@mscdex)

0.6.2 - 2013-07-07

Changed

  • Compatibility for Node@0.11.3, breaks compatibility with 0.11.2

0.6.1 - 2013-06-15

Fixed

  • Fix broken Windows compile, apply port-uv patch to LevelDB's port.h (@rvagg)

0.6.0 - 2013-06-14

Changed

0.5.0 - 2013-05-21

Changed

  • Bump major version for db.getProperty() addition (should have been done in 0.4.4) (@rvagg)
  • Disallow batch() operations after a write() (@rvagg)

0.4.4 - 2013-05-18

Added

  • Add db.getProperty(), see README for details (@rvagg)

Fixed

  • More work on memory management, including late-creation of Persistent handles (@rvagg)

0.4.3 - 2013-05-18

Fixed

  • Better memory leak fix (@rvagg)

0.4.2 - 2013-05-17

Fixed

  • Same memory leak fixes as 0.4.1, properly applied to batch() operations too (@rvagg)

0.4.1 - 2013-05-17

Fixed

  • Fix memory leak caused when passing String objects in as keys and values, conversion to Slice created new char[] but wasn't being disposed. Buffers are automatically disposed (reported by @kylegetson levelup/#140) (@rvagg)

0.4.0 - 2013-05-15

Changed

0.3.1 - 2013-05-14

Fixed

  • Don't allow empty batch() operations through to LevelDB, on chained of array forms (@rvagg)

0.3.0 - 2013-05-14

In the early days minor versions were looked upon as major versions. Semver practices we use today was not adopted fully at this time. This is why the history might look a bit confusing.

Added

Changed

  • Pull API tests up into AbstractLevelDOWN, require it to run the tests. AbstractLevelDOWN can now be used to test LevelDOWN-compliant API's (@maxogden)
  • Change iterator methods to return errors on the callbacks rather than throw (@mcollina & @rvagg)
  • Update documentation for .get() (@deanlandolt)

Removed

  • Remove browserify shim (@rvagg)

0.2.3 - 2013-05-17

Fixed

  • Backport memory leak fixes (@rvagg)

0.2.2 - 2013-05-14

Added

  • Add node 0.10 to Travis (@rvagg)
  • Add @mcollina to contributors (@rvagg)
  • Add browserify shim so levelup can run in the browser (@No9)

Changed

  • Extract basic test code to abstract-leveldown (@maxogden)

0.2.1 - 2013-04-08

Changed

  • Ignore empty string/buffer start/end options on iterators (@kesla)
  • Macro cleanup, replace some with static inline functions (@rvagg)

Fixed

  • Fix iterator to start on correct value when reverse=true, also handle end-of-store case (#27) (@kesla)

0.2.0 - 2013-03-30

Added

  • Add windows support, using a combination of libuv and Windows-specific code. See README for details about what's required (@rvagg)
  • Add leveldown.destroy(location, cb) to delete an existing LevelDB store, exposes LevelDB.DestroyDB() (@rvagg)
  • Add leveldown.repair(location, cb) to repair an existing LevelDB store, exposes LevelDB.RepairDB() (@rvagg)
  • Add advanced options: writeBufferSize, blockSize, maxOpenFiles, blockRestartInterval, exposes LevelDB options (@rvagg)
  • Add chained batch operations. Argument-less db.batch() will return a new Batch object that can .put() and .del() and then .write(). API in flux so not documented yet. (@juliangruber / @rvagg)

Changed

  • Auto-cleanup iterators that are left open when you close a database; any iterators left open when you close a database instance will kill your process so we now keep track of iterators and auto-close them before a db.close completes (@rvagg)

0.1.4 - 2013-03-11

Changed

0.1.3 - 2013-03-09

Fixed

0.1.2 - 2013-02-24

Changed

  • Upgrade to LevelDB@1.9.0, fairly minor changes since 1.7.0 (@rvagg)
  • Upgrade to Snappy@1.1.0, changes block size to improve compression ~3%, slight decrease in speed (@rvagg)

0.1.1 - 2013-02-24

Fixed

0.1.0 - 2013-02-24

Added

  • Add complete, independent test suite (@rvagg)

Changed

  • Change API to export single function levelup() (@rvagg)
  • Move createIterator() to levelup#iterator() (@rvagg)
  • Make all options arguments optional (@rvagg)
  • Argument number & type checking on all methods (@rvagg)
  • Stricter checking on key & value types, String/Object.toString()/Buffer, non-zero-length (@rvagg)

Removed

  • Remove use namespace and add namespace leveldown everywhere (@rvagg)

Fixed

0.0.2 - 2013-01-20

Changed

  • Finalize rename of internal components to LevelDOWN, removing LevelUP references (@rvagg)

0.0.1 - 2013-01-20

Added

  • Complete documentation of current API (@rvagg)

Fixed

  • Callback is not optional for .close() (@rvagg)

0.0.0 - 2013-01-06

🌱 First release. Extracted from levelup as a stand-alone package (@rvagg)