Skip to content

Commit f1e0528

Browse files
committed
Merge branch 'feature/primitive_list' into my/primitive_list_api
2 parents 8be7be7 + f3f4a26 commit f1e0528

126 files changed

Lines changed: 3270 additions & 2892 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## 4.0.0-BETA3 (YYYY-MM-DD)
2+
3+
### Internal
4+
5+
* Upgraded to Realm Sync 2.0.0-rc16.
6+
* Upgraded to Realm Core 3.0.0-rc5.
7+
18
## 4.0.0-BETA2 (2017-07-27)
29

310
### Bug Fixes
@@ -28,18 +35,36 @@
2835

2936
## 3.6.0 (YYYY-MM-DD)
3037

38+
### Breaking Changes
39+
40+
* [ObjectServer] `SyncUser.logout()` no longer throws an exception when associated Realms instances are not closed (#4962).
41+
42+
### Deprecated
43+
44+
* [ObjectServer] `SyncUser#retrieveUser` and `SyncUser#retrieveUserAsync` replaced by `SyncUser#retrieveInfoForUser`
45+
and `SyncUser#retrieveInfoForUserAsync` which returns a `SyncUserInfo` with mode information (#5008).
46+
* [ObjectServer] `SyncUser#Callback` replaced by the generic version `SyncUser#RequestCallback<T>`.
47+
3148
### Enhancements
3249

3350
* [ObjectServer] Added `SyncSession.uploadAllLocalChanges()`.
3451
* [ObjectServer] APIs of `UserStore` have been changed to support same user identity but different authentication server scenario.
35-
* [ObjectServer] Added `SyncUser.allSessions` to retrive the all valid sessions belonging to the user (#4783).
52+
* [ObjectServer] Added `SyncUser.allSessions` to retrieve the all valid sessions belonging to the user (#4783).
3653
* Added `Nullable` annotation to methods that may return `null` in order to improve Kotlin usability. This also introduced a dependency to `com.google.code.findbugs:jsr305`.
54+
* `org.jetbrains.annotations.NotNull` is now an alias for `@Required`. This means that the Realm Schema now fully understand Kotlin non-null types.
3755
* Added support for new data type `MutableRealmIntegers`. The new type behaves almost exactly as a reference to a Long (mutable nullable, etc) but supports `increment` and `decrement` methods, which implement a Conflict Free Replicated Data Type, whose value will converge even when changed across distributed devices with poor connections (#4266).
56+
* Added more detailed exception message for `RealmMigrationNeeded`.
57+
* Bumping schema version only without any actual schema changes will just succeed even when the migration block is not supplied. It threw an `RealmMigrationNeededException` before in the same case.
58+
* Throw `IllegalStateException` when schema validation fails because of wrong declaration of `@LinkingObjects`.
3859

3960
### Bug Fixes
4061

4162
### Internal
4263

64+
* [ObjectServer] removed `ObjectServerUser` and its inner classes, in a step to reduce `SyncUser` complexity (#3741).
65+
* [ObjectServer] changed the `SyncSessionStopPolicy` to `AfterChangesUploaded` to align with other binding and to prevent use cases where the Realm might be deleted before the last changes get synchronized (#5028).
66+
* Upgraded Realm Sync to 1.10.8
67+
* Let Object Store handle migration.
4368

4469
## 3.5.1 (YYYY-MM-DD)
4570

@@ -49,6 +74,7 @@
4974
* `Realm.copyToRealmOrUpdate()` might cause a `RealmList` field to contain duplicated elements (#4957).
5075
* `RealmSchema.create(String)` and `RealmObjectSchema.setClassName(String)` did not accept class name whose length was 51 to 57.
5176
* Workaround for an Android JVM crash when using `compactOnLaunch()` (#4964).
77+
* Class name in exception message from link query is wrong (#5096).
5278

5379
### Internal
5480

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ RUN sdkmanager --update
5252
RUN sdkmanager 'platform-tools'
5353
RUN sdkmanager 'build-tools;26.0.1'
5454
RUN sdkmanager 'extras;android;m2repository'
55-
RUN sdkmanager 'platforms;android-25'
55+
RUN sdkmanager 'platforms;android-26'
5656

5757
# Install the NDK
5858
RUN mkdir /opt/android-ndk-tmp && \

README.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ The API reference is located at [realm.io/docs/java/api](https://realm.io/docs/j
2424
- **Need help with your code?**: Look for previous questions on the [#realm tag](https://stackoverflow.com/questions/tagged/realm?sort=newest) — or [ask a new question](http://stackoverflow.com/questions/ask?tags=realm). We activtely monitor & answer questions on SO!
2525
- **Have a bug to report?** [Open an issue](https://github.com/realm/realm-java/issues/new). If possible, include the version of Realm, a full log, the Realm file, and a project that shows the issue.
2626
- **Have a feature request?** [Open an issue](https://github.com/realm/realm-java/issues/new). Tell us what the feature should do, and why you want the feature.
27-
- Sign up for our [**Community Newsletter**](http://eepurl.com/VEKCn) to get regular tips, learn about other use-cases and get alerted of blogposts and tutorials about Realm.
27+
- Sign up for our [**Community Newsletter**](https://go.pardot.com/l/210132/2017-04-26/3j74l) to get regular tips, learn about other use-cases and get alerted of blogposts and tutorials about Realm.
2828

2929
## Using Snapshots
3030

@@ -60,7 +60,7 @@ In case you don't want to use the precompiled version, you can build Realm yours
6060
### Prerequisites
6161

6262
* Download the [**JDK 7**](http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html) or [**JDK 8**](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) from Oracle and install it.
63-
* Download & install the Android SDK **Build-Tools 26.0.1**, **Android N (API 25)** (for example through Android Studio’s **Android SDK Manager**).
63+
* Download & install the Android SDK **Build-Tools 26.0.1**, **Android O (API 26)** (for example through Android Studio’s **Android SDK Manager**).
6464
* Install CMake from SDK manager in Android Studio ("SDK Tools" -> "CMake").
6565
* If you use Android Studio, Android Studio 3.0 or later is required.
6666

@@ -256,15 +256,17 @@ style/lint in the drop-down to the left of the Manage... button.
256256
## License
257257
258258
Realm Java is published under the Apache 2.0 license.
259-
The underlying core is available under the [Realm Core Binary License](LICENSE#L210-L243) while we [work to open-source it under the Apache 2.0 license](https://realm.io/docs/java/#faq).
259+
260+
Realm Core is also published under the Apache 2.0 license and is available
261+
[here](https://github.com/realm/realm-core).
260262
261263
**This product is not being made available to any person located in Cuba, Iran,
262264
North Korea, Sudan, Syria or the Crimea region, or to any other person that is
263265
not eligible to receive the product under U.S. law.**
264266
265267
## Feedback
266268
267-
**_If you use Realm and are happy with it, all we ask is that you please consider sending out a tweet mentioning [@realm](http://twitter.com/realm), or email [help@realm.io](mailto:help@realm.io) to let us know about it!_**
269+
**_If you use Realm and are happy with it, all we ask is that you please consider sending out a tweet mentioning [@realm](http://twitter.com/realm) to share your thoughts!_**
268270
269271
**_And if you don't like it, please let us know what you would like improved, so we can fix it!_**
270272

dependencies.list

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Realm Sync Core release used by Realm Java
22
# https://github.com/realm/realm-sync/releases
3-
REALM_SYNC_VERSION=2.0.0-rc12
4-
REALM_SYNC_SHA256=5f111903159ee2d74c5418560c72977e91a10e291e23e6a7d9999aa856858ca4
3+
REALM_SYNC_VERSION=2.0.0-rc16
4+
REALM_SYNC_SHA256=c20c4e7333f01a3a4ea350cb20b9b7feba95ad4e52d612368b6187b72d518aa1
55

66
# Object Server Release used by Integration tests
77
# Stable releases: https://packagecloud.io/realm/realm?filter=debs

examples/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
project.ext.sdkVersion = 25
1+
project.ext.sdkVersion = 26
22
project.ext.buildTools = '26.0.1'
33

44
// Don't cache SNAPSHOT (changing) dependencies.
@@ -24,8 +24,8 @@ allprojects {
2424
}
2525
dependencies {
2626
classpath 'com.android.tools.build:gradle:3.0.0-alpha4'
27-
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.6'
28-
classpath 'com.novoda:gradle-android-command-plugin:1.5.0'
27+
classpath 'com.novoda:gradle-android-command-plugin:1.7.1'
28+
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
2929
classpath "io.realm:realm-gradle-plugin:${currentVersion}"
3030
}
3131
}

examples/encryptionExample/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,6 @@ android {
2323
}
2424

2525
command {
26-
events 2000
26+
monkey.events 2000
2727
}
2828
}

examples/gridViewExample/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ android {
2222
}
2323

2424
command {
25-
events 2000
25+
monkey.events 2000
2626
}
2727

2828
splits {

examples/introExample/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ android {
2424
}
2525

2626
command {
27-
events 2000
27+
monkey.events 2000
2828
}
2929
}

examples/jsonExample/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ android {
2323
}
2424

2525
command {
26-
events 2000
26+
monkey.events 2000
2727
}
2828
}
2929

examples/kotlinExample/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
buildscript {
2-
ext.kotlin_version = '1.1.3-2'
2+
ext.kotlin_version = '1.1.4-2'
33
repositories {
44
jcenter()
55
mavenCentral()
@@ -11,6 +11,7 @@ buildscript {
1111

1212
apply plugin: 'com.android.application'
1313
apply plugin: 'kotlin-android'
14+
apply plugin: 'kotlin-kapt'
1415
apply plugin: 'android-command'
1516
apply plugin: 'realm-android'
1617

@@ -36,7 +37,7 @@ android {
3637
}
3738

3839
command {
39-
events 2000
40+
monkey.events 2000
4041
}
4142

4243
sourceSets {

0 commit comments

Comments
 (0)