Features:
- Improve emitted errors of the GraphQL replication #3630 Thanks @nirvdrum
- Added Dexie.js based
RxStorage. Read the docs
Features:
- Added
toTypedRxJsonSchemaandExtractDocumentTypeFromTypedRxJsonSchemato generate the document types from the schema.
BREAKING:
- RxStorage: The non async functions
prepareQuery,getSortComparatorandgetQueryMatcherhave been moved out ofRxStorageInstanceintoRxStorage. This was needed to have better WebWorker support. This will not affect you do not use a customRxStorageimplementation. - LokiJS: Do not use the
IdleQueueof the RxDatabase to handle calls to saveDatabase(), instead wait for CPU idleness of the JavaScript process. RxStorageInterface:- Replaced all
Mapwith plain json objects so that they can beJSON.stringify-ed - Replaced typings of event stream to use
EventBulkand process events in bulks to save performance. - Move all static methods into the
staticsproperty so we can code-split when using the worker plugin. digestandlengthof attachment data is now created by RxDB, not by the RxStorage. #3548- Added the statics
hashKeyproperty to identify the used hash function.
- Replaced all
- Internally all events are handles via bulks, this saves performance when events are transfered over a WebWorker or a BroadcastChannel.
- Removed the deprecated
recievedmethods, usereceivedinstead. See #3392 - Removed the
no-validateplugin. To use RxDB without schema validation, just do not add a validation plugin to your custom build.
Bugfixes:
- Do not throw an error when database is destroyed while a GraphQL replication is running.
- Compound primary key migration throws "Value of primary key(s) cannot be changed" #3546 Thanks @nothingkid
- Allow
_idas primaryKey #3562 Thanks @SuperKirik - LokiJS: Remote operations do never resolve when remote instance was leader and died.
Other:
- LokiJS: All documents are stored with a
$lastWriteAtfield, so we can implement an auto compaction later. - Transpile
async/awaitto promises instead of generators. via babel-plugin-transform-async-to-promises
11.0.0-beta.X BREAKING read the announcement
BREAKING:
- RxStorage: The non async functions
prepareQuery,getSortComparatorandgetQueryMatcherhave been moved out ofRxStorageInstanceintoRxStorage. This was needed to have better WebWorker support. This will not affect you do not use a customRxStorageimplementation. - LokiJS: Do not use the
IdleQueueof the RxDatabase to handle calls to saveDatabase(), instead wait for CPU idleness of the JavaScript process. RxStorageInterface:- Replaced all
Mapwith plain json objects so that they can beJSON.stringify-ed - Replaced typings of event stream to use
EventBulkand process events in bulks to save performance. - Move all static methods into the
staticsproperty so we can code-split when using the worker plugin. digestandlengthof attachment data is now created by RxDB, not by the RxStorage. #3548- Added the statics
hashKeyproperty to identify the used hash function.
- Replaced all
- Internally all events are handles via bulks, this saves performance when events are transfered over a WebWorker or a BroadcastChannel.
- Removed the deprecated
recievedmethods, usereceivedinstead. See #3392
Bugfixes:
- Do not throw an error when database is destroyed while a GraphQL replication is running.
- Compound primary key migration throws "Value of primary key(s) cannot be changed" #3546 Thanks @nothingkid
- Allow
_idas primaryKey #3562 Thanks @SuperKirik
Other:
- LokiJS: All documents are stored with a
$lastWriteAtfield, so we can implement an auto compaction later. - Transpile
async/awaitto promises instead of generators. via babel-plugin-transform-async-to-promises