Skip to content

Commit

Permalink
Merge master into v10
Browse files Browse the repository at this point in the history
* origin/master:
  Drop support for Xcode 10
  Add empty changelog section
  Release 5.1.0
  Fix a race condition in the sync tests
  Fix a broken test
  Allow opening full-sync Realms in read-only mode
  Fix a case where we would accidentally reuse schedulers
  Add empty changelog section
  Release 5.0.3
  Fix a warning when using KVO on Object.isInvalidated
  Property initialize the schema for frozen Realms
  Add error checking for freezing objects in the transaction they were created in
  Actually implement -[RLMObject isFrozen]
  • Loading branch information
tgoyne committed Jun 24, 2020
2 parents 95f98bf + 5fb7651 commit eebcd8a
Show file tree
Hide file tree
Showing 27 changed files with 463 additions and 861 deletions.
471 changes: 12 additions & 459 deletions .jenkins.yml

Large diffs are not rendered by default.

64 changes: 42 additions & 22 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
x.y.z Release notes (yyyy-MM-dd)
=============================================================

This release also contains all changes from 5.0.3 and 5.1.0.

### Breaking Changes
* The following classes & aliases have been renamed to align Cocoa with the other Realm SDKs:

Expand Down Expand Up @@ -32,7 +35,7 @@ x.y.z Release notes (yyyy-MM-dd)
| `[RLMApp linkUser:credentials:]` | `[RLMUser linkWithCredentials:]` |
| `App.linkUser(user, credentials)` | `User.link(credentials)` |

- `refreshCustomData()` on User now returns void and passes the custom data to the callback on success.
* `refreshCustomData()` on User now returns void and passes the custom data to the callback on success.

### Compatibility
* This release introduces breaking changes w.r.t some sync classes and MongoDB Realm Cloud functionality.
Expand All @@ -47,6 +50,7 @@ x.y.z Release notes (yyyy-MM-dd)

10.0.0-beta.2 Release notes (2020-06-09)
=============================================================

### Enhancements
* None.

Expand Down Expand Up @@ -153,28 +157,25 @@ later will be able to open the new file format.
* Upgraded realm-core from v6.0.3 to v10.0.0-beta.1
* Upgraded realm-sync from v5.0.1 to v10.0.0-beta.2

5.0.2 Release notes (2020-06-02)
5.1.0 Release notes (2020-06-22)
=============================================================

### Enhancements

* Allow opening full-sync Realms in read-only mode. This disables local schema
initialization, which makes it possible to open a Realm which the user does
not have write access to without using asyncOpen. In addition, it will report
errors immediately when an operation would require writing to the Realm
rather than reporting it via the sync error handler only after the server
rejects the write.

### Fixed

* Fix errSecDuplicateItem (-25299) errors when opening a synchronized Realm
when upgrading from pre-5.0 versions of Realm.
([#6538](https://github.com/realm/realm-cocoa/issues/6538), [#6494](https://github.com/realm/realm-cocoa/issues/6494), since 5.0.0).
* Opening Realms stored on filesystems which do not support preallocation (such
as ExFAT) would give "Operation not supported" exceptions.
([#6508](https://github.com/realm/realm-cocoa/issues/6508), since 3.2.0).
* 'NoSuchTable' exceptions would sometimes be thrown after upgrading a Relam
file to the v10 format. ([Core #3701](https://github.com/realm/realm-core/issues/3701), since 5.0.0)
* If the upgrade process was interrupted/killed for various reasons, the
following run could stop with some assertions failing. No instances of this
happening were reported to us. (Since 5.0.0).
* Queries filtering a `List` where the query was on an indexed property over a
link would sometimes give incomplete results.
([#6540](https://github.com/realm/realm-cocoa/issues/6540), since 4.1.0 but
more common since 5.0.0)
* Opening a file in read-only mode would attempt to make a spurious write to
the file, causing errors if the file was in read-only storage (since 5.0.0).
* Opening a Realm using a configuration object read from an existing Realm
would incorrectly bind the new Realm to the original Realm's thread/queue,
resulting in "Realm accessed from incorrect thread." exceptions.
([#6574](https://github.com/realm/realm-cocoa/issues/6574),
[#6559](https://github.com/realm/realm-cocoa/issues/6559), since 5.0.0).

### Compatibility

Expand All @@ -184,10 +185,29 @@ later will be able to open the new file format.
* APIs are backwards compatible with all previous releases in the 5.x.y series.
* Carthage release for Swift is built with Xcode 11.5.

### Internal
5.0.3 Release notes (2020-06-10)
=============================================================

* Upgraded realm-core from v6.0.4 to v6.0.6
* Upgraded realm-sync from v5.0.3 to v5.0.5
### Fixed

* `-[RLMObject isFrozen]` always returned false. ([#6568](https://github.com/realm/realm-cocoa/issues/6568), since 5.0.0).
* Freezing an object within the write transaction that the object was created
in now throws an exception rather than crashing when the object is first
used.
* The schema for frozen Realms was not properly initialized, leading to crashes
when accessing a RLMLinkingObjects property.
([#6568](https://github.com/realm/realm-cocoa/issues/6568), since 5.0.0).
* Observing `Object.isInvalidated` via a keypath literal would produce a
warning in Swift 5.2 due to the property not being marked as @objc.
([#6554](https://github.com/realm/realm-cocoa/issues/6554))

### Compatibility

* File format: Generates Realms with format v10 (Reads and upgrades all previous formats)
* Realm Object Server: 3.21.0 or later.
* Realm Studio: 3.11 or later.
* APIs are backwards compatible with all previous releases in the 5.x.y series.
* Carthage release for Swift is built with Xcode 11.5.

5.0.2 Release notes (2020-06-02)
=============================================================
Expand Down
2 changes: 1 addition & 1 deletion Configuration/Base.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,6 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
WATCHOS_DEPLOYMENT_TARGET = 2.0;
TVOS_DEPLOYMENT_TARGET = 9.0;

SWIFT_VERSION = 4.0;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = 1,2,3,4;
SDKROOT = $(REALM_SDKROOT);
9 changes: 2 additions & 7 deletions Jenkinsfile.releasability
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
xcodeVersions = ['10.3', '11.1', '11.2.1', '11.3', '11.4.1', '11.5']
xcodeVersions = ['11.3', '11.4.1', '11.5']
platforms = ['osx', 'ios', 'watchos', 'tvos', 'catalyst']
carthagePlatforms = ['osx', 'ios', 'watchos', 'tvos']
platformNames = ['osx': 'macOS', 'ios': 'iOS', 'watchos': 'watchOS', 'tvos': 'tvOS', 'catalyst': 'Catalyst']
carthageXcodeVersion = '11.5'
objcXcodeVersion = '10.3'
objcXcodeVersion = '11.3'
docsSwiftVersion = '5.2.4'

def installationTest(platform, test, language) {
Expand Down Expand Up @@ -163,11 +163,6 @@ def doBuild() {
unstash "${platform}-${objcXcodeVersion}"
}

// The 10.x builds don't actually have a framework for catalyst, so
// use the 11.0 version instead
unstash 'catalyst-11.1'
sh "mv realm-framework-catalyst-11.1.zip realm-framework-catalyst-${objcXcodeVersion}.zip"

unstash 'ios-static'
unstash 'examples'
unstash 'source'
Expand Down
Loading

0 comments on commit eebcd8a

Please sign in to comment.