A fast, local first, reactive Database for JavaScript Applications https://rxdb.info/
APACHE-2.0 License
Bot releases are hidden (Show)
Published by pubkey almost 3 years ago
BREAKING:
prepareQuery
, getSortComparator
and getQueryMatcher
have been moved out of RxStorageInstance
into RxStorage
. This was needed to have better WebWorker support. This will not affect you do not use a custom RxStorage
implementation.IdleQueue
of the RxDatabase to handle calls to saveDatabase(), instead wait for CPU idleness of the JavaScript process.RxStorageInterface
:
Map
with plain json objects so that they can be JSON.stringify
-edEventBulk
and process events in bulks to save performance.statics
property so we can code-split when using the worker plugin.digest
and length
of attachment data is now created by RxDB, not by the RxStorage. #3548
hashKey
property to identify the used hash function.recieved
methods, use received
instead. See #3392
Bugfixes:
_id
as primaryKey #3562 Thanks @SuperKirik
Other:
$lastWriteAt
field, so we can implement an auto compaction later.async
/await
to promises instead of generators. via babel-plugin-transform-async-to-promises
Published by pubkey almost 3 years ago
Bugfixes:
getSortComparator()
broken on some complex $or
query.Published by pubkey almost 3 years ago
Other:
requestIdlePromise
to not slow down more important tasks.Bugfixes:
mustUseLocalState()
should not create multiple local states.Published by pubkey almost 3 years ago
Bugfixes:
requestIdlePromise
and while replication IO is running, the database must not be idle.Published by pubkey almost 3 years ago
Other:
Changes:
autosave: true
Published by pubkey almost 3 years ago
Other:
pouchdb-utils
random-token
and use the same random string generator everywhere.Published by pubkey almost 3 years ago
Bugfixes:
Other:
-
in collection and database names.Published by pubkey almost 3 years ago
Bugfixes:
findDocumentsById()
returned additional $loki
property.bulkAddRevisions()
must not mutate the input.Published by pubkey almost 3 years ago
Bugfixes:
Published by pubkey almost 3 years ago
Bugfixes:
Published by pubkey almost 3 years ago
Bugfixes:
Published by pubkey almost 3 years ago
Features:
Bugfixes:
RxStorage
instances when the database or collection is destroyed.Other:
LeaderElector
Published by pubkey about 3 years ago
Bugfixes:
Other:
sideEffects: false
to the default in the package.json so tree shaking can work.Features:
Published by pubkey about 3 years ago
Other:
Bugfixes:
RxDatabase.remove()
recieved -> received
everywhere. The old getters are still useable but deprecated
#3392. Thanks chrisdrackett
Published by pubkey over 3 years ago
Breaking:
Setting a primaryKey
for a schema is now required.
When using the type RxJsonSchema<DocType>
the DocType
is now required.
A JsonSchema must have the required
array at the top level and it must contain the primary key.
Outgoing data is now Readonly
typed and deep-frozen in dev mode
RxDocument.putAttachment()
no longer supports string as data, only Blob
or Buffer
.
Changed the default of putAttachment
to skipIfSame=true
.
Removed the deprecated atomicSet()
, use atomicPatch()
instead.
Removed the deprecated RxDatabase.collection()
use RxDatabase().addCollections()
instead.
Moved everything pouchdb related to the pouchdb
plugin.
Pouchdb plugins are not longer added via addRxPlugin()
but addPouchPlugin()
. (RxDB plugins are still added via addRxPlugin
).
Removed plugin hook preCreatePouchDb
.
Removed the watch-for-changes
plugin, this is now directly integrated into the pouchdb RxStorage
.
Removed the adapter-check
plugin. (The function adapterCheck
is move to the pouchdb plugin).
Calling RxDatabase.server()
now returns a promise that resolves when the server is started up.
Changed the defaults of PouchDBExpressServerOptions
from the server()
method, by default we now store logs in the tmp folder and the config is in memory.
Renamed replication
-plugin to replication-couchdb
to be more consistend in naming like with replication-graphql
RxCollection().sync()
to RxCollection().syncCouchDB()
Renamed the functions of the json import/export plugin to be less confusing
dump()
is now exportJSON()
importDump()
is now importJSON()
RxCollection
uses a separate pouchdb instance for local documents, so that they can persist during migrations.
Features:
Other:
should never happen
errors into own error code.Typings:
Published by pubkey over 3 years ago
Features:
dataPath
property to GraphQL replication pull options to allow the document JSON lookup path to configured instead of assuming the document data is always the first child of the response #2606 Thanks @joshmcarthur
Types:
getLocal()
can return undefined
. Thanks @chrisdrackett
noUncheckedIndexedAccess
. Thanks @seanwu1105