Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 3.0.0-rc1 to changelog #115

Merged
merged 3 commits into from
May 27, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 69 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,73 @@

## [Unreleased]

## [3.0.0-rc1] - 2016-05-26

### Changed
* Upgrade `abstract-leveldown` from `0.12.0` to `5.0.0` (@vweevers)
* Upgrade `typedarray-to-buffer` from `1.0.0` to `3.1.5` (@vweevers)
* Upgrade `levelup` devDependency from `0.18.2` to `3.0.0` (@vweevers)
* Upgrade `browserify` devDependency from `4.1.2` to `16.2.2` (@vweevers)
* Switch license from BSD to MIT (@ralphtheninja)
* Replace `IDBWrapper` with straight IndexedDB code (@vweevers)
* Change default database prefix from `IDBWrapper-` to `level-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 for `null` and `undefined` (@vweevers)
* Use `immediate` module for consistent microtask behavior (@vweevers)
* Replace `Buffer()` with `Buffer.from()` (@vweevers)
* Rename `Iterator#iterator` to `#transaction` (@vweevers)
* Replace `beefy` with `airtap --local` for local testing (@vweevers)
* Homogenize README title, description and headers (@vweevers)
* Make real `tape` tests out of `test-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` and `version` 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` stringifies `Buffer.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 fulfill `abstract-leveldown` snapshot guarantees (@vweevers)
* Stop advancing `Iterator` cursor when `options.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 of `Buffer` (@vweevers)
* Remove now unneeded `raw` option from `#_get()` and `#_iterator()` (@vweevers)
* Run tests without `IndexedDBShim` (@vweevers)
* Remove `Buffer` to `Uint8Array` 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 in `Iterator` constructor (@vweevers)
* Rely on `abstract-leveldown` callback defaults (@vweevers)
* Remove testling from `package.json` (@vweevers)
* Remove `level.js` logo (@vweevers)

**Historical Note** As a result of removing `IDBWrapper`, only modern browsers with a non-prefixed `window.indexedDB` are supported in this release. IE10 and Firefox 52 are known to be broken. The current test matrix of `level-js` includes the latest versions of Chrome, Firefox, Safari, Edge and IE.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can later move (some or all of) these notes to the upgrade guide


**Historical Note** Though `level-js` now passes the full `abstract-leveldown` test suite, fulfulling the snapshot guarantee (reads not being affected by simultaneous writes) means a loss of backpressure as iterators have to keep reading from their IndexedDB cursors. Memory consumption might increase if an iterator is not consumed fast enough. A future release will have an option to favor backpressure over snapshot guarantees.

**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.

## [2.2.4] - 2016-05-09

### Changed
Expand Down Expand Up @@ -210,7 +277,8 @@

:seedling: Initial release.

[Unreleased]: https://github.com/level/level.js/compare/v2.2.4...HEAD
[Unreleased]: https://github.com/level/level.js/compare/v3.0.0-rc1...HEAD
[3.0.0-rc1]: https://github.com/level/level.js/compare/v2.2.4...v3.0.0-rc1
[2.2.4]: https://github.com/level/level.js/compare/v2.2.3...v2.2.4
[2.2.3]: https://github.com/level/level.js/compare/v2.2.2...v2.2.3
[2.2.2]: https://github.com/level/level.js/compare/v2.2.1...v2.2.2
Expand All @@ -235,4 +303,3 @@
[1.0.3]: https://github.com/level/level.js/compare/v1.0.2...v1.0.3
[1.0.2]: https://github.com/level/level.js/compare/v1.0.1...v1.0.2
[1.0.1]: https://github.com/level/level.js/compare/v1.0.0...v1.0.1

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Being `abstract-leveldown` compliant means you can use many of the [Level module

## Example

**This assumes use of version `3.0.0-rc1`. The next release will have an upgrade guide.**
**This assumes use of version `3.0.0-rc1`. The next release will have an upgrade guide. Until then, please see the [changelog](CHANGELOG.md).**

```js
var levelup = require('levelup')
Expand Down