This document describes breaking changes and how to upgrade. For a complete list of changes including minor and patch releases, please refer to the changelog.
Currently available as prerelease: npm i level@next
.
Upgraded to [email protected]
and (through level-packager@6
) levelup@4
and encoding-down@6
. Please follow these links for more information. A quick summary: range options (e.g. gt
) are now serialized the same as keys, { gt: undefined }
is not the same as {}
, nullish values are now rejected and streams are backed by readable-stream@3
.
In addition, level
got browser support! It uses leveldown
in node and level-js
in browsers (backed by IndexedDB). As such, level-browserify
is not needed anymore and will be deprecated later on. To learn what the integration of level-js
means for platform, browser and type support, please see the updated README.
Dropped support for node 4. No other breaking changes.
No breaking changes to the level
API.
This is an upgrade to leveldown@^3.0.0
which is based on abstract-leveldown@~4.0.0
which in turn contains breaking changes to .batch()
. Though this is negated by levelup
, we decided to release a new major version in the event of dependents reaching down into db.db
.
No breaking changes to the level
API.
The parts that make up level
have been refactored to increase modularity. This is an upgrade to leveldown@~2.0.0
and level-packager@~2.0.0
, which in turn upgraded to levelup@^2.0.0
. The responsibility of encoding keys and values moved from levelup
to encoding-down
, which comes bundled with level-packager
.
Being a convenience package, level
glues the parts back together to form a drop-in replacement for the users of levelup@1
, while staying fully compatible with level@1
. One thing we do get for free, is native Promise support.
const db = level('db')
await db.put('foo', 'bar')
console.log(await db.get('foo'))
This does not affect the existing callback API, functionality-wise or performance-wise.
For more information please check the corresponding CHANGELOG.md
for: