All Versions
285
Latest Version
Avg Release Cycle
11 days
Latest Release
481 days ago

Changelog History
Page 24

  • v0.96.0 Changes

    October 14, 2015
    • No functional changes since beta2.
  • v0.96.0-beta2 Changes

    October 08, 2015

    ๐Ÿ›  Bugfixes

    • โž• Add RLMOptionalBase.h to the podspec.
  • v0.96.0-beta Changes

    October 07, 2015

    API breaking changes

    • CocoaPods v0.38 or greater is now required to install Realm and RealmSwift as pods.

    โœจ Enhancements

    • Functionality common to both List and Results is now declared in a RealmCollectionType protocol that both types conform to.
    • Results.realm now returns an Optional<Realm> in order to conform to RealmCollectionType, but will always return .Some() since a Results cannot exist independently from a Realm.
    • Aggregate operations are now available on List: min, max, sum, average.
    • Committing write transactions (via commitWrite / commitWriteTransaction and write / transactionWithBlock) now optionally allow for handling errors when the disk is out of space.
    • โž• Added isEmpty property on RLMRealm/Realm to indicate if it contains any objects.
    • The @count, @min, @max, @sum and @avg collection operators are now supported in queries.

    ๐Ÿ›  Bugfixes

    • ๐Ÿ›  Fix assertion failure when inserting NSData between 8MB and 16MB in size.
    • ๐Ÿ›  Fix assertion failure when rolling back a migration which removed an object link or RLMArray/List property.
    • โž• Add the path of the file being opened to file open errors.
    • ๐Ÿ›  Fix a crash that could be triggered by rapidly opening and closing a Realm many times on multiple threads at once.
    • ๐Ÿ›  Fix several places where exception messages included the name of the wrong function which failed.
  • v0.95.3 Changes

    October 05, 2015

    ๐Ÿ›  Bugfixes

    • Compile iOS Simulator framework architectures with -fembed-bitcode-marker.
    • ๐Ÿ›  Fix crashes when the first Realm opened uses a class subset and later Realms opened do not.
    • ๐Ÿ›  Fix inconsistent errors when Object(value: ...) is used to initialize the default value of a property of an Object subclass.
    • ๐Ÿ‘ป Throw an exception when a class subset has objects with array or object properties of a type that are not part of the class subset.
  • v0.95.2 Changes

    September 24, 2015
    • Enable bitcode for iOS and watchOS frameworks.
    • ๐Ÿ— Build libraries with Xcode 7 final rather than the GM.
  • v0.95.1 Changes

    September 23, 2015

    โœจ Enhancements

    • โž• Add missing KVO handling for moving and exchanging objects in RLMArray and List.

    ๐Ÿ›  Bugfixes

    • Setting the primary key property on persisted RLMObjects / Objects via subscripting or key-value coding will cause an exception to be thrown.
    • ๐Ÿ›  Fix crash due to race condition in RLMRealmConfiguration where the default configuration was in the process of being copied in one thread, while released in another.
    • ๐Ÿ›  Fix crash when a migration which removed an object or array property is rolled back due to an error.
  • v0.95.0 Changes

    August 25, 2015

    API breaking changes

    • ๐Ÿ—„ The following APIs have been deprecated in favor of the new RLMRealmConfiguration class in Realm Objective-C:

    ๐Ÿ—„ | Deprecated API | New API | |:------------------------------------------------------------------|:---------------------------------------------------------------------------------| | +[RLMRealm realmWithPath:readOnly:error:] | +[RLMRealm realmWithConfiguration:error:] | | +[RLMRealm realmWithPath:encryptionKey:readOnly:error:] | +[RLMRealm realmWithConfiguration:error:] | | +[RLMRealm setEncryptionKey:forRealmsAtPath:] | -[RLMRealmConfiguration setEncryptionKey:] | | +[RLMRealm inMemoryRealmWithIdentifier:] | +[RLMRealm realmWithConfiguration:error:] | 0๏ธโƒฃ | +[RLMRealm defaultRealmPath] | +[RLMRealmConfiguration defaultConfiguration] | 0๏ธโƒฃ | +[RLMRealm setDefaultRealmPath:] | +[RLMRealmConfiguration setDefaultConfiguration:] | 0๏ธโƒฃ | +[RLMRealm setDefaultRealmSchemaVersion:withMigrationBlock] | RLMRealmConfiguration.schemaVersion and RLMRealmConfiguration.migrationBlock | | +[RLMRealm setSchemaVersion:forRealmAtPath:withMigrationBlock:] | RLMRealmConfiguration.schemaVersion and RLMRealmConfiguration.migrationBlock | | +[RLMRealm migrateRealmAtPath:] | +[RLMRealm migrateRealm:] | | +[RLMRealm migrateRealmAtPath:encryptionKey:] | +[RLMRealm migrateRealm:] |

    • ๐Ÿ”ง The following APIs have been deprecated in favor of the new Realm.Configuration struct in Realm Swift for Swift 1.2:

    ๐Ÿ—„ | Deprecated API | New API | |:--------------------------------------------------------------|:-----------------------------------------------------------------------------| ๐Ÿ”ง | Realm.defaultPath | Realm.Configuration.defaultConfiguration | ๐Ÿ”ง | Realm(path:readOnly:encryptionKey:error:) | Realm(configuration:error:) | ๐Ÿ”ง | Realm(inMemoryIdentifier:) | Realm(configuration:error:) | ๐Ÿ”ง | Realm.setEncryptionKey(:forPath:) | Realm(configuration:error:) | ๐Ÿ”ง | setDefaultRealmSchemaVersion(schemaVersion:migrationBlock:) | Realm.Configuration.schemaVersion and Realm.Configuration.migrationBlock | ๐Ÿ”ง | setSchemaVersion(schemaVersion:realmPath:migrationBlock:) | Realm.Configuration.schemaVersion and Realm.Configuration.migrationBlock | ๐Ÿ”ง | migrateRealm(path:encryptionKey:) | migrateRealm(configuration:) |

    • ๐Ÿ”ง The following APIs have been deprecated in favor of the new Realm.Configuration struct in Realm Swift for Swift 2.0:

    ๐Ÿ—„ | Deprecated API | New API | |:--------------------------------------------------------------|:-----------------------------------------------------------------------------| ๐Ÿ”ง | Realm.defaultPath | Realm.Configuration.defaultConfiguration | ๐Ÿ”ง | Realm(path:readOnly:encryptionKey:) throws | Realm(configuration:) throws | ๐Ÿ”ง | Realm(inMemoryIdentifier:) | Realm(configuration:) throws | ๐Ÿ”ง | Realm.setEncryptionKey(:forPath:) | Realm(configuration:) throws | ๐Ÿ”ง | setDefaultRealmSchemaVersion(schemaVersion:migrationBlock:) | Realm.Configuration.schemaVersion and Realm.Configuration.migrationBlock | ๐Ÿ”ง | setSchemaVersion(schemaVersion:realmPath:migrationBlock:) | Realm.Configuration.schemaVersion and Realm.Configuration.migrationBlock | ๐Ÿ”ง | migrateRealm(path:encryptionKey:) | migrateRealm(configuration:) |

    • List.extend in Realm Swift for Swift 2.0 has been replaced with List.appendContentsOf, mirroring changes to RangeReplaceableCollectionType.

    • Object properties on Object subclasses in Realm Swift must be marked as optional, otherwise a runtime exception will be thrown.

    โœจ Enhancements

    • Persisted properties of RLMObject/Object subclasses are now Key-Value Observing compliant.
    • The different options used to create Realm instances have been consolidated into a single RLMRealmConfiguration/Realm.Configuration object.
    • Enumerating Realm collections (RLMArray, RLMResults, List<>, Results<>) now enumerates over a copy of the collection, making it no longer an error to modify a collection during enumeration (either directly, or indirectly by modifying objects to make them no longer match a query).
    • ๐Ÿ‘Œ Improve performance of object insertion in Swift to bring it roughly in line with Objective-C.
    • ๐Ÿ‘ Allow specifying a specific list of RLMObject / Object subclasses to include in a given Realm via RLMRealmConfiguration.objectClasses / Realm.Configuration.objectTypes.

    ๐Ÿ›  Bugfixes

    • Subscripting on RLMObject is now marked as nullable.
  • v0.94.1 Changes

    August 10, 2015

    API breaking changes

    • ๐Ÿ— Building for watchOS requires Xcode 7 beta 5.

    โœจ Enhancements

    • Object.className is now marked as final.

    ๐Ÿ›  Bugfixes

    • ๐Ÿ›  Fix crash when adding a property to a model without updating the schema version.
    • ๐Ÿ›  Fix unnecessary redownloading of the core library when building from source.
    • ๐Ÿ›  Fix crash when sorting by an integer or floating-point property on iOS 7.
  • v0.94.0 Changes

    July 29, 2015

    API breaking changes

    • None.

    โœจ Enhancements

    • โฌ‡๏ธ Reduce the amount of memory used by RLMRealm notification listener threads.
    • Avoid evaluating results eagerly when filtering and sorting.
    • โž• Add nullability annotations to the Objective-C API to provide enhanced compiler warnings and bridging to Swift.
    • ๐Ÿ‘‰ Make RLMResults and RLMArrays support Objective-C generics.
    • โž• Add support for building watchOS and bitcode-compatible apps.
    • ๐Ÿ‘‰ Make the exceptions thrown in getters and setters more informative.
    • Add -[RLMArray exchangeObjectAtIndex:withObjectAtIndex] and List.swap(_:_:) to allow exchanging the location of two objects in the given RLMArray / List.
    • โž• Added anonymous analytics on simulator/debugger runs.
    • โž• Add -[RLMArray moveObjectAtIndex:toIndex:] and List.move(from:to:) to allow moving objects in the given RLMArray / List.

    ๐Ÿ›  Bugfixes

    • ๐Ÿ‘ป Processes crashing due to an uncaught exception inside a write transaction will no longer cause other processes using the same Realm to hang indefinitely.
    • ๐Ÿ›  Fix incorrect results when querying for < or <= on ints that require 64 bits to represent with a CPU that supports SSE 4.2.
    • ๐Ÿ‘ป An exception will no longer be thrown when attempting to reset the schema version or encryption key on an open Realm to the current value.
    • Date properties on 32 bit devices will retain 64 bit second precision.
    • ๐Ÿš€ Wrap calls to the block passed to enumerate in an autoreleasepool to reduce memory growth when migrating a large amount of objects.
    • In-memory realms no longer write to the Documents directory on iOS or Application Support on OS X.
  • v0.93.2 Changes

    June 12, 2015

    ๐Ÿ›  Bugfixes

    • ๐Ÿ›  Fixed an issue where the packaged OS X Realm.framework was built with GCC_GENERATE_TEST_COVERAGE_FILES and GCC_INSTRUMENT_PROGRAM_FLOW_ARCS enabled.
    • ๐Ÿ›  Fix a memory leak when constructing standalone Swift objects with NSDate properties.
    • ๐Ÿ‘ป Throw an exception rather than asserting when an invalidated object is added to an RLMArray.
    • ๐Ÿ›  Fix a case where data loss would occur if a device was hard-powered-off shortly after a write transaction was committed which had to expand the Realm file.