What’s new in RxDB 8.0.0?
- RxDB has upgraded to pouchdb 7.0.0, its latest version
- As disableKeyCompression was not used by many users, it is now disabled by default and has been renamed as keyCompression
- RxDatabase.collection() now only takes the json-schema as schema-attribute
- In order to comply with the json-schema-standard, it is not allowed to set the required fields using required: true, instead you can use required: [‘myfield’]
- Setters and save() are no more allowed on non-temporary documents. To change document-data, use RxDocument.atomicUpdate(), RxDocument.atomicSet(), or RxDocument.update().
- The document methods, RxDocument.synced$ and RxDocument.resync() are removed
- middleware-hooks contain plain json as first parameter and RxDocument as second
- You can now set QueryChangeDetection by adding the boolean field queryChangeDetection: true when creating the database
- Option for CORS to server-plugin
- All methods of RxDocument are bound to the instance
- Added RxReplicationState.denied$, which emits when a document failed to replicate
- Added RxReplicationState.alive$, which emits true or false depending if the replication is alive – data is transmitting properly between databases
- Performance is improved by enabling cross-instance communication with broadcast-channel
- Upgraded to eslint 5 and babel 7
To read the full list of changes, check out RxDB’s GitHub repository.