rxdb

A fast, local first, reactive Database for JavaScript Applications https://rxdb.info/

APACHE-2.0 License

Downloads
69.4K
Stars
20.7K
Committers
235

Bot releases are visible (Hide)

rxdb - 13.4.3

Published by github-actions[bot] about 2 years ago

  • ADD new premium plugin RxStorage Localstorage Meta Optimizer

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.4.2

Published by github-actions[bot] about 2 years ago

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.4.1

Published by github-actions[bot] about 2 years ago

  • REFACTOR stuff for a new optimization plugin

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.4.0

Published by github-actions[bot] about 2 years ago

  • FIX image attachments not working correctly in the browser
  • FIX Push batchSize in not respected #3994
  • FIX boolean indexes not working #3994

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.3.0

Published by github-actions[bot] about 2 years ago

  • FIX(sqlite) use dollar params instead of named params
  • CHANGE run performance tests without the dev-mode plugin
  • IMPROVE performance of document writes by not using try-catch in a hot path.
  • FIX RxDatabase.remove() must properly remove the collection storage together with the replication states.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.2.0

Published by github-actions[bot] about 2 years ago

  • FIX respect the prefers-reduced-motion media query to not show blinking animations to neurodiverse people at the landingpage.
  • ADD pull.responseModifier to the graphql replication plugin so that you can aggregate the checkpoint from the returned graphql response.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.1.0

Published by github-actions[bot] about 2 years ago

  • FIX saving multiple attachments broke previously stored attachments on some storages.
  • UPDATE graphql websocket dependencies #3980 Thanks @herefishyfish
  • FIX on RxCollection.remove() the related storages like the meta of replications, must also be removed.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.3

Published by github-actions[bot] about 2 years ago

  • FIX sorting via event-reduce did not work when key-compression plugin was used.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.2

Published by github-actions[bot] about 2 years ago

  • FIX event-reduce did not work when key-compression plugin was used.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.1

Published by github-actions[bot] about 2 years ago

  • FIX graphQLSchemaFromRxSchema() must not create broken schema when there are no headerFields

  • ADD credentials settings to the GraphQL replication plugin #3976 Thanks @marcoklein

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0

Published by pubkey about 2 years ago

BREAKING read the announcement

  • ADD credentials settings to the GraphQL replication plugin #3976 Thanks @marcoklein

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

rxdb - 13.0.0-beta.31

Published by github-actions[bot] about 2 years ago

  • ADD credentials settings to the GraphQL replication plugin #3976 Thanks @marcoklein

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.30

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.29

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.28

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

  • REFACTORED the layout of RxChangeEvent to better match the RxDB requirements and to fix the 'deleted-document-is-modified-but-still-deleted' bug.

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.27

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • ADDED the FoundationDB RxStorage

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.26

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.25

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.24

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

NOTICE: An overview about all releases can be found at the changelog

rxdb - 13.0.0-beta.23

Published by github-actions[bot] about 2 years ago

  • RENAMED the ajv-validate plugin to validate-ajv to be in equal with the other validation plugins.

  • The is-my-json-valid validation is no longer supported until this bug is fixed.

  • REFACTORED the schema validation plugins, they are no longer plugins but now they get wrapped around any other RxStorage.

    • It allows us to run the validation inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows us to configure which RxDatabase instance must use the validation and which does not. In production it often makes sense to validate user data, but you might not need the validation for data that is only replicated from the backend.
  • REFACTORED the key compression plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the key-comresion inside of a Worker RxStorage instead of running it in the main JavaScript process.
  • REFACTORED the encryption plugin, it is no longer a plugin but now a wrapper around any other RxStorage.

    • It allows to run the encryption inside of a Worker RxStorage instead of running it in the main JavaScript process.
    • It allows do use asynchronous crypto function like WebCrypto
  • Store the password hash in the same write request as the database token to improve performance.

  • REMOVED many unused plugin hooks because they decreased the performance.

  • REMOVED support for temporary documents see here

  • REMOVED RxDatabase.broadcastChannel The broadcast channel has been moved out of the RxDatabase and is part of the RxStorage. So it is not longer exposed via RxDatabase.broadcastChannel.

  • In the RxDB internal _meta.lwt field, we now use 2 decimals number of the unix timestamp in milliseconds.

  • REMOVE RxStorageStatics .hash and .hashKey

  • CHANGE removed default usage of md5 as default hashing. Use a faster non-cryptographic hash instead.

    • ADD option to pass a custom hash function when calling createRxDatabase.
  • Removed the liveInterval option of the replication. It was an edge case feature with wrong defaults. If you want to run the pull replication on internval, you can send a RESYNC event manually in a loop.

  • CHANGE use Float instead of Int to represent timestamps in GraphQL.

  • REPLACED RxReplicationPullError and RxReplicationPushError with normal RxError like in the rest of the RxDB code.

  • REMOVED the option to filter out replication documents with the push/pull modifiers #2552 because this does not work with the new replication protocol.

  • CHANGE default of replication live to be set to true. Because most people want to do a live replication, not a one time replication.

  • CHANGED Attachment data is now always handled as Blob because Node.js does support Blob since version 18.0.0 so we no longer have to use a Buffer but instead can use Blob for browsers and Node.js

  • FIXED multiple problems with encoding attachments data. We now use the js-base64 library which properly handles utf-8/binary/ascii transformations.

  • RENAMED the server plugin is now called server-couchdb and RxDatabase.server() is now RxDatabase.serverCouchDB()

  • ADDED the websocket replication plugin

  • FIX couchdb-server plugin missed out events from the replication.

  • ADD Support JsonSchema for nested additionalProperties #3952 Thanks @swnf

NOTICE: An overview about all releases can be found at the changelog