7.2.0 - 2021-09-28
7.1.0 - 2021-09-21
7.0.0 - 2021-04-09
If you are upgrading: please see UPGRADING.md
.
- Replace
immediate
shim with smallerqueue-microtask
(a00e3ed
) (Vincent Weevers). - Remove need for full buffer shim (except in test suite) (
8f79234
) (Vincent Weevers) - Bump
level-concat-iterator
andlevel-supports
(0b5e1a3
) (Vincent Weevers) - Breaking: drop support of Safari 11 (
7c4cce6
) (Vincent Weevers) - Modernize syntax and bump standard from 14.x to 16.x (
cfe8040
) (Vincent Weevers) - Replace
xtend
dependency withObject.assign()
(9d4171f
) (Vincent Weevers) - Breaking: remove legacy range options (
start
&end
) (979d34f
) (Level/community#86) (Vincent Weevers) - Breaking: drop support of stock Android browser (AOSP) (
a1fd94e
) (Vincent Weevers) - Breaking: drop node 6 and 8 (
1beee24
) (Vincent Weevers) - Breaking (for browsers): bump
buffer
from 5.x to 6.x (#373) (f62f38b
) (Alex Potsides).
- Support arbitrary options on chained batch
put()
anddel()
(ba144b2
) (Level/levelup#633) (Vincent Weevers).
6.3.0 - 2020-04-11
- Support running test suite on a
levelup
db, as well as skippingstart
andend
tests (formultileveldown
) (#364) (@vweevers)
6.2.3 - 2020-04-03
6.2.2 - 2019-10-21
6.2.1 - 2019-10-01
6.2.0 - 2019-09-30
- Upgrade
hallmark
devDependency from^1.0.0
to^2.0.0
(#349) (@vweevers) - Upgrade
standard
devDependency from^13.0.1
to^14.0.0
(#348) (@vweevers)
- Add manifest (Level/community#83) (#351) (@vweevers)
- Document mandatory methods (#350) (@vweevers)
6.1.1 - 2019-08-18
6.1.0 - 2019-08-18
- Upgrade
hallmark
devDependency from^0.1.0
to^1.0.0
(#343) (@vweevers) - Upgrade
standard
devDependency from^12.0.0
to^13.0.1
(#341) (@vweevers)
6.0.3 - 2019-04-26
- Fix and test asynchronicity of empty batch (#337) (@vweevers)
- Fix Level badge (
8993257
) (@vweevers) - Remove link to dead website (
c0abe28
) (@vweevers)
6.0.2 - 2019-03-30
- Upgrade
sinon
devDependency from^6.0.0
to^7.2.4
(#330) (@ralphtheninja) - Upgrade
nyc
devDependency from^12.0.2
to^13.2.0
(#327) (@vweevers) - Upgrade
airtap
devDependency from0.1.0
to^2.0.0
(#323) (@vweevers) - Apply common project tweaks (#324, #325) (@vweevers)
6.0.1 - 2018-12-27
- Upgrade
hallmark
devDependency from0.0.2
to0.1.0
(#316) (@vweevers) - Split v6 upgrade guide into sections for consumers and implementors (@vweevers)
- Remove range tests that assumed zero-length strings or Buffers meant "not defined" (#319) (@vweevers)
6.0.0 - 2018-10-20
If you are upgrading: please see UPGRADING.md
.
- Upgrade
airtap
devDependency from0.0.5
to0.1.0
(#229, #231, #245,029f56a
, #252) (@vweevers, @ralphtheninja) - Upgrade
sinon
devDependency from^5.0.0
to^6.0.0
(#232) (@ralphtheninja) - Upgrade
standard
devDependency from^11.0.0
to^12.0.0
(#303) (@ralphtheninja) - Reject nullish values (#277) (@vweevers)
- Make default
_serializeKey
and_serializeValue
identity functions (#277) (@vweevers) - Don't coerce keys to strings to check if they're empty, instead check arrays explicitly (#277) (@vweevers)
- Make
db
property mandatory and public on iterator and chained batch (#257, #309) (@vweevers) - Align
AbstractChainedBatch#_clear
with_put
and_del
(#257) (@vweevers) - Add
AbstractChainedBatch#_write
with options (#257) (@vweevers) - Use
level-concat-iterator
instead ofcollectEntries
(#246) (@ralphtheninja) - Document API and test suite (#251, #290, #295, #296, #305) (@vweevers)
- Export test suite as a single function (#271, #293, #297) (@vweevers, @ralphtheninja)
- Use factory function to create
db
instances in test suite (#258, #268, #282) (@ralphtheninja, @vweevers) - Isolate snapshot tests so that they can be skipped (#239, #274) (@vweevers, @ralphtheninja)
- Isolate openAdvanced tests so that they can be skipped (#271) (@vweevers)
- Rename
abstract/
totest/
(#253) (@vweevers) - Refactor internal test methods to have the same signature
(test, testCommon)
(#268, #275) (@ralphtheninja) - Prefer
exports.*
overmodule.exports.*
(#276) (@ralphtheninja) - Tweak copyright years for less maintenance (
0b2949a
) (@ralphtheninja)
- Add
iterator#seek()
(#237, #302, #307) (@vweevers, @ralphtheninja) - Add
nyc
andcoveralls
devDependencies for code coverage (#253) (@vweevers) - Add
setUp
andtearDown
to all sub tests (#279, #289) (@ralphtheninja) - Add test for implementations that cannot support snapshots (#239) (@vweevers)
- Add
hallmark
devDependency for Markdown style and contributors (#312) (@vweevers)
- Remove
location
(#258) (@ralphtheninja) - Remove
lastLocation
,cleanup
,rimraf
(#249) (@vweevers) - Remove IE10 from Sauce Labs test matrix (#312) (@vweevers)
- Remove node 9 from Travis (
0b52395
) (@ralphtheninja) - Remove tests that assumed support of boolean and NaN keys (#277) (@vweevers)
- Remove range tests that assumed
null
meant "not defined" (#277) (@vweevers) - Remove sync test from
test/put-test.js
(#300) (@ralphtheninja) - Remove empty
errorValues()
test (#273) (@ralphtheninja) - Remove default
testCommon
parameter (#264, #271) (@vweevers) - Remove
contributors
frompackage.json
(542f350
) (@ralphtheninja) - Remove copyright headers from code (
a36c04f
) (@ralphtheninja)
- Make sure all
t.throw
tests check error messages correctly (#286) (@ralphtheninja) - Check options objects properly for
null
(#257, #288) (@ralphtheninja, @vweevers) - Serialize range options same as keys (#277) (@vweevers)
- Allow nullish and empty range options (#277) (@vweevers)
5.0.0 - 2018-05-22
If you are upgrading: please see UPGRADING.md
.
- Upgrade
sinon
to^5.0.0
(@ralphtheninja) - Tweak README (@ralphtheninja)
- Replace
const
withvar
to support IE10 (@vweevers)
- Add node 10 to Travis (@ralphtheninja)
- Add
airtap
for browser tests (@vweevers)
- Remove node 4, 5 and 7 from Travis (@ralphtheninja)
- Remove TypeScript tests (@vweevers)
- Remove TypeScript typings (@ralphtheninja)
4.0.3 - 2018-02-21
- Upgrade
ts-node
to^5.0.0
(@zixia) - Upgrade
standard
to^11.0.0
(@ralphtheninja)
- Remove invalid TypeScript from
Batch
(@Tapppi) - Add JSDoc to incorrectly inferred TypeScript types (@Tapppi)
4.0.2 - 2018-02-09
- Fix
iterator#next
to returnthis
(@vweevers)
4.0.1 - 2018-02-09
This was released as a patch because it only changed tests and TypeScript typings (which are marked experimental and don't follow semver).
- Run test suite in TypeScript in addition to Node.js (@vweevers)
- Add TypeScript smoke test (@vweevers)
- Add TypeScript readme section with stability badge (@vweevers)
- Remove obsolete parameters from tests (@vweevers)
- Update TypeScript typings for v4 (@vweevers)
- Use ES6 classes in tests to please TypeScript (@vweevers)
- Define default methods on prototype to please TypeScript (@vweevers)
4.0.0 - 2018-01-20
If you are upgrading: please see UPGRADING.md
.
- Ignore empty range options in
AbstractLevelDOWN#_setupIteratorOptions
(@ralphtheninja) - Make
testCommon.js
the default value fortestCommon
parameter (@ralphtheninja) - Use
Buffer.isBuffer()
instead ofAbstractLevelDOWN#isBuffer
(@ralphtheninja) - Cleanup iterator tests (#161) (@ralphtheninja)
- Pass test function as a parameter instead of setting local global (@ralphtheninja)
- Assert batch type is
'put'
or'del'
(@vweevers) - Assert batch array elements are objects (@vweevers)
- Add
standard
for linting (#150) (@ralphtheninja) - Test that callbacks are called asynchronously (@vweevers)
- Test serialization extensibility (@vweevers)
- Add @vweevers to contributors (@ralphtheninja)
- Add upgrade guide in
UPGRADING.md
(@ralphtheninja) - Add node 9 to Travis (@ralphtheninja)
- Remove
isLevelDOWN
function and corresponding tests (@ralphtheninja) - Remove
AbstractLevelDOWN#approximateSize
method and corresponding tests (@ralphtheninja) - Remove
testBuffer
inabstract/put-get-del-test.js
(@ralphtheninja) - Remove object value test in
abstract/put-test.js
(@vweevers) - Remove serialize buffer tests (@vweevers)
- Remove serialize object tests (@vweevers)
- Remove
BufferType
parameter inabstract/put-get-del-test.js
, useBuffer
(@ralphtheninja)
- Ensure stores are closed properly (fixes problems on Windows) (@ralphtheninja)
- Call back errors on next tick to avoid
zalgo
(@vweevers)
3.0.0 - 2017-11-04
If you are upgrading: please see UPGRADING.md
.
- Add node version badge (@vweevers)
- Drop support for
0.12
. Cause for new major version! (@vweevers)
- Fix errors in
index.d.ts
(@sandersn)
2.7.2 - 2017-10-11
- Update
README
with new style (@ralphtheninja)
2.7.1 - 2017-09-30
- Refactor typings as ES2015 module (@MeirionHughes)
2.7.0 - 2017-09-12
- Add
TypeScript
definitions inindex.d.ts
(@MeirionHughes)
2.6.3 - 2017-09-05
- Upgrade dependencies (@ralphtheninja)
- Convert nullish values to empty strings (@bigeasy)
- Use
t.equal(a, b)
instead oft.ok(a === b)
(@bigeasy) - Relax tests for serializing object in
abstract/chained-batch-test.js
(@ralphtheninja)
- Add
GreenKeeper
(@ralphtheninja) - Test key/value serialization (@bigeasy)
- Test
undefined
value serializing to empty string (@ralphtheninja)
- Document
.status
property (@ralphtheninja)
2.6.2 - 2017-07-30
- Upgrade dependencies and float
devDependencies
(@ralphtheninja) - Update copyright years (@ralphtheninja)
- Update node versions on Travis (@ralphtheninja)
- Test serialization extensibility (@juliangruber)
- Fix put test on object serialization (@juliangruber)
2.6.1 - 2016-09-12
- Fix
null
case in default value serializer (fixes problems in2.6.0
) (@juliangruber)
2.6.0 - 2016-03-10
This release was a breaking change. See @juliangruber's comment for more information.
- Use proto delegation to patch methods on db (@deanlandolt)
- Allow serialization functions to return buffers (@deanlandolt)
- Add
collectBatchOps
function to buffer_put
and_del
inputs inabstract/chained-batch-test.js
(@deanlandolt)
- Remove unnecessary initialization hackery in
abstract/chained-batch-test.js
(@deanlandolt)
2.5.0 - 2016-05-01
- Upgrade dependencies and add more node versions to Travis (@ralphtheninja)
- Add dependency badge to
README
(@ralphtheninja) - Add
AbstractLevelDOWN#_serializeKey
(@juliangruber) - Add
AbstractLevelDOWN#_serializeValue
(@juliangruber) - Add
AbstractChainedBatch#_serializeKey
(@juliangruber) - Add
AbstractChainedBatch#_serializeValue
(@juliangruber) - Test
_serialize
with object and buffer (@juliangruber)
- Remove stringification of keys and values (@juliangruber)
- Remove
.toBuffer
(@juliangruber)
- Update
memdown
url (@ralphtheninja) AbstractLevelDOWN#._checkKey
does not take three parameters (@ralphtheninja)- Only show build status for the master branch (@watson)
- Fix minor typos in
README
(@timkuijsten)
2.4.1 - 2015-08-29
- Remove use of
const
(@nolanlawson)
2.4.0 - 2015-05-19
- Add
.status
property toAbstractLevelDOWN
(@juliangruber)
2.3.1 - 2015-05-18
- Link to
level/community
(@ralphtheninja)
- Extract
Contributors
section fromREADME
intolevel/community
(@ralphtheninja)
- Document
isLevelDown
function (@ralphtheninja)
2.3.0 - 2015-05-18
- Use
t.equal(a, b)
instead oft.ok(a === b)
(@juliangruber) - Export API from
index.js
(@ralphtheninja)
- Import
isLevelDOWN
function tois-leveldown.js
(@ralphtheninja)
2.2.2 - 2015-05-13
- Revert changes to
location
in2.2.1
(@juliangruber)
2.2.1 - 2015-05-12
- Copy paste error gave wrong test description (@ralphtheninja)
t.throws()
is different fortape
(@ralphtheninja)- Assert
location
is not an empty string (@ralphtheninja)
2.2.0 - 2015-05-10
- Test
{ sync: true }
option inabstract/put-test.js
(@juliangruber)
2.1.4 - 2015-04-28
- Use
t.equal()
withtape
(@ralphtheninja)
2.1.3 - 2015-04-28
- Change from
tap
totape
(@ralphtheninja)
2.1.2 - 2015-04-27
- Convert buffer to string so we can compare (@ralphtheninja)
2.1.1 - 2015-04-27
- Update logo and copyright (@ralphtheninja)
- Add @ralphtheninja to contributors (@ralphtheninja)
- Add
0.12
andiojs
to Travis (@ralphtheninja)
- Include
.nonErrorValues()
test inabstract/put-get-del-test.js
(@hden) rvagg/node-abstract-leveldown
moved tolevel/abstract-leveldown
(@ralphtheninja)- Fix Travis for
0.8
(@ralphtheninja)
2.1.0 - 2014-11-09
- Use
setTimeout
instead ofprocess.nextTick
(@bigeasy)
- Don't fail if no value is returned by
._get
(@watson) - Use
error
test function when testing for errors (@watson)
2.0.3 - 2014-10-02
No change.
2.0.2 - 2014-10-02
- Test atomic batch operations (@calvinmetcalf)
2.0.1 - 2014-09-01
- Set default values for options to
.open
,.get
,.put
,.del
and.batch
(@watson) - Update pattern for setting default options for the iterator (@watson)
- Allow boolean options to be falsy/truthy (@watson)
- Remove default options that are too
LevelDOWN
specific (@watson)
2.0.0 - 2014-08-26
- Switch to allowing writes of empty values,
null
,undefined
,''
,[]
and empty buffer (@juliangruber) - Rename
AbstractLevelDOWN#_checkKeyValue
toAbstractLevelDOWN#_checkKey
(@rvagg)
1.0.0 - 2014-08-24
- Ensure
Boolean
iterator options areBoolean
(@watson)
- Test that an error is thrown when location isn't a string (@calvinmetcalf)
- Test opening and closing the store (@calvinmetcalf)
- Test iterator with
limit
set to0
(@watson) - Add more tests to
abstract/batch-test.js
(@calvinmetcalf) - Set default values of iterator options (@watson)
- Account for batch options that are
null
(@calvinmetcalf)
- Remove options.start hackery (@rvagg)
0.12.4 - 2014-08-20
- Change license to plain MIT (@andrewrk)
0.12.3 - 2014-06-27
- Upgrade
xtend
dependency (@andrewrk)
0.12.2 - 2014-04-26
- Have
isTypedArray
check for existence ofArrayBuffer
andUint8Array
constructors before usage (@rvagg)
0.12.1 - 2014-04-26
- Set default
BufferType
inabstract/put-get-del-test.js
toBuffer
instead ofArrayBuffer
(@maxogden)
0.12.0 - 2014-03-12
- Revert to pure
Buffer
and remove usage ofUint16Array
(@rvagg)
0.11.4 - 2014-03-11
- Remove duplicate call to
t.end()
(@maxogden)
0.11.3 - 2014-01-26
- Loosen the buffer type check (@rvagg)
0.11.2 - 2013-12-05
- Add npm badges (@rvagg)
- Fix iterator tests in
test.js
(@rvagg)
0.11.1 - 2013-11-15
- Adjust
abstract/approximate-size-test.js
to account for snappy compression (@rvagg)
0.11.0 - 2013-10-14
- Normalize
iterator()
options withAbstractLevelDOWN#_setupIteratorOptions
(@rvagg)
0.10.2 - 2013-09-06
- Refactor duplicated versions of
isTypedArray
intoabstract/util.js
(@rvagg) - Refactor duplicated versions of
'NotFound'
checks intoabstract/util.js
, fixed too-strict version inget-test.js
(@rvagg)
0.10.1 - 2013-08-29
- Relax check for
Not Found
error message to be case insensitive inget-test.js
(@rvagg)
0.10.0 - 2013-08-19
- Test
gt
,gte
,lt
andlte
ranges (@dominictarr)
0.9.0 - 2013-08-11
- Make
AbstractChainedBatch
extensible (@kesla) - Export
AbstractChainedBatch
fromabstract-leveldown.js
(@kesla)
- Fix broken test assertion in
abstract/get-test.js
(@rvagg) - Fix tests that weren't running properly (@kesla)
0.8.2 - 2013-08-02
No changes. Merely published changes made in 0.8.1
.
0.8.1 - 2013-08-02
The version in package.json
was changed from 0.7.4
to 0.8.1
. The 0.8.1
tag exists but this version was never published to npm.
- Remove use of
const
intestCommon.js
(@rvagg)
0.8.0 - 2013-08-02
It seems the version in package.json
was never changed to 0.8.0
in the git history, even though the 0.8.0
tag exists. Most likely package.json
was modified locally during npm publish
but was never committed.
- Use
process.browser
check instead ofprocess.title == 'browser'
(@rvagg)
- Add
BufferType
parameter toabstract/put-get-del-test.js
forbops
support (@rvagg) - Add
isTypedArray
function which checksArrayBuffer
orUint8Array
forbops
support (@rvagg)
- Fix
cleanup
function not calling back when browserified (@rvagg)
0.7.4 - 2013-08-02
- Fix problems related to
browserify
andrimraf
(@rvagg)
0.7.3 - 2013-07-26
0.7.2 - 2013-07-08
- Freeze chained batch state after
.write()
has been called (@rvagg) - Make
NotFound
error case insensitive (@rvagg) - Use
self
rather than binding functions tothis
(@juliangruber)
- Add
AbstractChainedBatch#_checkWritten
(@rvagg) - Test delete on non-existent key (@rvagg)
- Test iterator with
start
after databaseend
(@juliangruber)
- Don't coerce values to strings in browser (@maxogden)
- Make tests work in node and browser (@maxogden)
0.7.1 - 2013-05-15
- Adjust tests to be browserable (@rvagg)
0.7.0 - 2013-05-14
- Add
AbstractChainedBatch#clear
(@rvagg)
0.6.1 - 2013-05-14
- Make
AbstractIterator
call back with an error instead of throwing on nexting and ending (@mcollina)
0.6.0 - 2013-05-14
- Split
t.deepEqual()
into multiplet.equal()
inabstract/iterator-test.js
(@rvagg) - Make
AbstractIterator
call back with an error instead of throwing on nexting and ending (@mcollina)
0.5.0 - 2013-05-14
- Make
iterator.end(cb)
anditerator.next(cb)
call back with an error instead of throwing (@mcollina)
0.4.0 - 2013-05-14
- Move
AbstractIterator
fromabstract-leveldown.js
toabstract-iterator.js
(@rvagg)
- Add
AbstractChainedBatch
(@rvagg) - Add
AbstractLevelDOWN#_chainedBatch
(@rvagg) - Add
abstract/batch-test.js
andabstract/chained-batch-test.js
(@rvagg)
0.4.0-1 - 2013-05-14
0.3.0 - 2013-05-04
- Use
this._checkKeyValue()
instead of local function (@rvagg) - Use
this._isBuffer()
instead ofBuffer.isBuffer()
(@rvagg)
- Restore test for opening the database without options (@rvagg)
- Add
AbstractLevelDOWN#_isBuffer
so it can be overridden (@rvagg) - Add
AbstractLevelDOWN#_checkKeyValue
so it can be overridden (@rvagg)
0.2.3 - 2013-05-04
- Remove test for opening the database without options (@rvagg)
0.2.2 - 2013-05-04
- Split
.open()
tests into.open()
and.openAdvanced()
(@rvagg)
0.2.1 - 2013-05-04
- Convert values to
string
inabstract/put-get-del-test.js
ifBuffer
isundefined
(@rvagg)
0.2.0 - 2013-05-04
- Convert values to
string
inabstract/get-test.js
ifBuffer
isundefined
(@rvagg) - Don't stringify keys and values in
abstract/iterator-test.js
(@maxogden)
- Add
process.browser
check forstart
andend
keys in browser (@maxogden) - Add
levelup
contributors (@rvagg)
- Fix
tape
compatibility issues (@maxogden)
0.1.0 - 2013-04-23
- Import abstract tests from
leveldown
(@maxogden)
- Clarify
README
(@rvagg)
0.0.2 - 2013-03-18
- Export
checkKeyValue
(@rvagg)
0.0.1 - 2013-03-18
- Add
checkKeyValue
function for more complete error checking (@rvagg)
0.0.0 - 2013-03-15
First release. 🌱