Releases: mongodb/stitch-android-sdk
Releases · mongodb/stitch-android-sdk
4.7.0
Release 4.5.0
- Adds support for additional options for
watch
inRemoteMongoCollection
.- Watch for events on all documents.
- Watch for all events matching a provided
$match
filter.
- Fixes a bug where the remote MongoDB service for the server SDK had a dependency that had been deprecated and no longer published to gradle (see #166).
Release 4.4.1
- Update Jackson dependency to fix security vulnerability.
Release 4.4.0
NOTE: This release has breaking changes for the MongoDB Mobile Sync Beta
- Mobile sync now uses compact change streams, which should save on network usage for collections with large documents and frequent updates that only affect a few fields.
- When calling
configure
on aSync
, theChangeEventListener
will no longer guarantee that theChangeEvent
will have a non-null result forgetFullDocument()
if theOperationType
isUPDATE
. - When calling
configure
on aSync
, the signature for ConflictHandler#resolveConflict has changed:- It now returns a
ConflictResolution
. See the documentation for ConflictResolution for more information. - The type of the remote event in
resolveConflict
is now aCompactChangeEvent
, to reflect the type of event received from the server. This means that when the remote event is anUPDATE
,getFullDocument()
will always returnnull
.
- It now returns a
- When calling
- It is now possible to add a listener/callback on the stream returned by RemoteMongoCollection#watch and RemoteMongoCollection#watchCompact.
Release 4.3.3
- Fixed a bug where an invalid session might not get refreshed, causing sync to freeze up and
watch
streams to fail to open.
Release 4.3.0
- Adds support for
findOne,
findOneAndReplace,
findOneAndUpdate,
findOneAndDelete
operations - Adds recovery for network reconnect
- Uses hashing to improve synchronization behavior
- Automatically versions documents when remote and local are unversioned
- Local reads now permitted while sync is in progress
- Fixes various internal bugs and performance issues with the Mobile Sync Beta.
Release 4.2.1
- Fixes various internal bugs and performance issues with the Mobile Sync Beta.
- NOTE: This release has breaking changes for the Mobile Sync Beta.
- The methods
configure
,syncOne
,syncMany
,desyncOne
,desyncMany
,getSyncedIds
,getPausedDocumentIds
, andresumeSyncForDocument
are now asynchronous and return aTask
. This is to prevent accidentally freezing the UI on sync tasks. - Existing code that calls
configure
,syncOne
,syncMany
,desyncOne
, anddesyncMany
does not need to change, since the they returnTask<Void>
. A completion listener can be added if you would like to react to configuration completing, or a document being configured as synced, but it is not necessary. - Existing code that calls
getSyncedIds
,getPausedDocumentIds
, andresumeSyncForDocument
must be called with a completion listener, orTasks.await
to use the result.
- The methods
- NOTE: This release has breaking changes for the Mobile Sync Beta.
Release 4.2.0
- Adds multi-user support to the SDK
- Adds the ability to
watch
remote collections - Miscellaneous behind-the-scenes improvements in sync behavior
Release 4.1.4
This release addresses some dependency vulnerabilities:
- io.jsonwebtoken:jjwt:0.9.0 -> io.jsonwebtoken:jjwt:0.9.1
- com.fasterxml.jackson.core:jackson-databind:2.9.5 -> com.fasterxml.jackson.core:jackson-databind:2.9.7
- com.fasterxml.jackson.module:jackson-module-kotlin:2.9.5 -> com.fasterxml.jackson.module:jackson-module-kotlin:2.9.7
Release 4.1.3
- Support for contacting applications deployed with a "local" deployment model
- Before the first call to the client v2 API, the SDK now contacts the global MongoDB Stitch server to find out the deployment model and localized hostname for the application. The call is then redirected to the localized hostname (e.g. calls to Stitch for an app deployed locally to US-VA will hit a stitch server residing specifically in that location, while an app deployed globally will always use the global Stitch URL)
- Subsequent calls to the API use the cached result
- Fixed a bug in the sync beta code where a remote event with no version didn't conflict with a local document with no version.
- Fixed a bug in the sync beta example app where stale local data would sometimes be improperly displayed in the UI.