Skip to content

Commit c7433a7

Browse files
Redesign @AsyncOpen and @AutoOpen initialisers to allow setting a client reset mode for any sync configuration,
and avoid confusion with the configuration and the sync configuration from the user on each intialiser.
1 parent edfa04b commit c7433a7

File tree

5 files changed

+493
-97
lines changed

5 files changed

+493
-97
lines changed

CHANGELOG.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,30 @@
11
x.y.z Release notes (yyyy-MM-dd)
22
=============================================================
33
### Enhancements
4-
* None.
4+
* Redesign `@AsyncOpen` and `@AutoOpen` initialisers to allow setting a client reset modes for any sync configuration,
5+
and avoid confusion with the injected configuration and the sync configuration from the user on each intialiser.
56

67
### Fixed
78
* <How to hit and notice issue? what was the impact?> ([#????](https://github.com/realm/realm-swift/issues/????), since v?.?.?)
89
* None.
910

10-
<!-- ### Breaking Changes - ONLY INCLUDE FOR NEW MAJOR version -->
11+
### Breaking Changes
12+
* `AsyncOpen.init(appId:partitionValue:configuration:timeout)` and
13+
`AutoOpen.init(appId:partitionValue:configuration:timeout)` will change behavior. Previously
14+
injecting both the configuration and a partition value will make the property wrappers to set
15+
the injected configuration (if not nil) combine with the syncConfiguration from the
16+
`user.configuration(partitionValue:)`. This will change to either user the injected configuration (if not nil)
17+
or the configuration obtained from `user.configuration(partitionValue:)` for the current logged user.
18+
This API will be deprecated on the next major release.
19+
* `AsyncOpen.init(appId:configuration:timeout)` and `AutoOpen.init(appId:configuration:timeout)`
20+
will change behavior. Previously this initialiser will set the injected configuration (if present)
21+
combine with the flexible sync configuration `user.flexibleSyncConfiguration` from the logged user.
22+
This will change to use the injected configuration which should already include a sync configuration.
23+
* `AsyncOpen.init(appId:partitionValue:timeout)` and `AutoOpen.init(appId:partitionValue:timeout)`
24+
are two new initialisers which allow us to configure the property wrappers for a partition based sync
25+
configuration for the current logged user.
26+
* `AsyncOpen.init(appId:timeout)` and `AutoOpen.init(appId:timeout)` are two new initialisers which
27+
allow us to configure the property wrappers for a flexible sync configuration for the current logged user.
1128

1229
### Compatibility
1330
* Realm Studio: 11.0.0 - 12.0.0.

0 commit comments

Comments
 (0)