This repository has been archived by the owner on Dec 2, 2024. It is now read-only.
v3.0.0-rc1
Pre-release
Pre-release
Changed
- Upgrade
abstract-leveldown
from0.12.0
to5.0.0
(@vweevers) - Upgrade
typedarray-to-buffer
from1.0.0
to3.1.5
(@vweevers) - Upgrade
levelup
devDependency from0.18.2
to3.0.0
(@vweevers) - Upgrade
browserify
devDependency from4.1.2
to16.2.2
(@vweevers) - Switch license from BSD to MIT (@ralphtheninja)
- Replace
IDBWrapper
with straight IndexedDB code (@vweevers) - Change default database prefix from
IDBWrapper-
tolevel-js-
(@vweevers) - Implement abstract
#_serializeKey
with support of all IndexedDB Second Edition types including binary keys (as Buffers) (@vweevers) - Implement abstract
#_serializeValue
with support of all types of the structured clone algorithm except fornull
andundefined
(@vweevers) - Use
immediate
module for consistent microtask behavior (@vweevers) - Replace
Buffer()
withBuffer.from()
(@vweevers) - Rename
Iterator#iterator
to#transaction
(@vweevers) - Replace
beefy
withairtap --local
for local testing (@vweevers) - Homogenize README title, description and headers (@vweevers)
- Make real
tape
tests out oftest-levelup.js
(@vweevers) - Restructure custom tests to follow abstract test suite format (@vweevers)
Added
- Add continuous browser tests with
airtap
and Sauce Labs (@vweevers) - Add
prefix
andversion
options to constructor (@vweevers) - Detect binary key support and fallback to
String(buffer)
(@vweevers) - Detect array key support and fallback to
String(array)
(@vweevers) - Test all value types of the structured clone algorithm (@vweevers)
- Catch
DataCloneError
if the environment does not support serializing the type of a key or value (@vweevers) - Include Promise polyfill for
levelup
integration tests (@vweevers) - Test that
Iterator
stringifiesBuffer.from()
argument (@vweevers) - Add README badges, new goals and a code example with
levelup
(@vweevers) - Add npm files to
.gitignore
(@vweevers)
Fixed
- Start
Iterator
cursor immediately and fill an in-memory cache to fulfillabstract-leveldown
snapshot guarantees (@vweevers) - Stop advancing
Iterator
cursor whenoptions.limit
is reached (@vweevers) - Rename public
#iterator
to private#_iterator
(@vweevers) - Fix
#_iterator({ limit: 0 })
to yield 0 entries (@vweevers) - Handle transaction errors in
Iterator
(@vweevers) - Fix constructor to call super (@vweevers)
- Make one request at a time in a batch transaction, saving CPU time (@vweevers)
- Properly close and destroy db's in custom tests (@vweevers)
- Update README links (@vweevers)
Removed
- Remove support of
ArrayBuffer
values in favor ofBuffer
(@vweevers) - Remove now unneeded
raw
option from#_get()
and#_iterator()
(@vweevers) - Run tests without
IndexedDBShim
(@vweevers) - Remove
Buffer
toUint8Array
conversion in#_put()
and#_batch()
(@vweevers) - Remove obsolete
#_approximateSize
(@vweevers) - Remove obsolete
#_isBuffer
(@vweevers) - Remove obsolete
testBuffer
from abstract tests (@vweevers) - Remove obsolete writestream test from
test-levelup.js
(@vweevers) - Rely on
abstract-leveldown
defaults inIterator
constructor (@vweevers) - Rely on
abstract-leveldown
callback defaults (@vweevers) - Remove testling from
package.json
(@vweevers) - Remove
level.js
logo (@vweevers)
Historical Note Support of ArrayBuffer
values was restored in 3.0.0
.
Historical Note This release introduced the boolean binaryKeys
and arrayKeys
properties on the constructor, indicating whether the environment supports binary and array keys respectively. These properties may become private.
Historical Note The vendored IndexedDBShim
is still included, but likely to be removed.
Historical Note Though we upgraded browserify
to 16.2.2
, the effective version used in tests is 13.3.0
because we switched from beefy
to airtap
, which ships with its own browserify
dependency.