All Versions
117
Latest Version
Avg Release Cycle
17 days
Latest Release
2037 days ago

Changelog History
Page 7

  • v0.16.0 Changes

    Public API Changes

    • LYRQueryController initialization on the LYRClient changes from queryControllerWithQuery: to queryControllerWithQuery:error: to return an error when the client isn't authenticated and a controller can't be created.
    • ๐Ÿ“‡ LYRQuery now supports LYRConversation querying on property metadata in dictionary and key path forms.
    • LayerKit client now tries to resolve message parts' MIMEType and uses an appropriate filename extension for the rich content (LYRMessagePart *)part.fileURL.

    ๐Ÿ›  Bugfix

    • โšก๏ธ Ensure LYRMessagePart fileURL property is updated when LYRProgress fractionCompleted is 1.
    • ๐Ÿ›  Fixed LayerKit connection issue when XCode Product Name contained a unicode character.
    • ๐Ÿ›  Fixed a minor memory leak when interacting with the Keychain APIs.

    โœจ Enhancements

    • โšก๏ธ Updated exception language when an invalid parameter is supplied to an LYRQuery.
    • โšก๏ธ Updated error language when attempting to authenticate with an invalid nonce.
    • โž• Adding metadata querying support.
  • v0.15.0 Changes

    Public API Changes

    • ๐Ÿ”„ Changed LYRClient initializer to accept an NSURL object for the appID parameter.
    • ๐Ÿ”„ Changed appID property type from NSUUID to NSURL on LYRClient.

    โœจ Enhancements

    • Introduced file protection with NSFileProtectionCompleteUntilFirstUserAuthentication for all LayerKit files.

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed an issue which caused a crash when calling objectAtIndexPath: on an empty LYRQueryController.
  • v0.14.3 Changes

    โœจ Enhancements

    • When transitioning to background LYRClient now keeps the messaging services running for as long as iOS allows the app to run in the background.

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixes an issue where LYRMessageParts hold outdated objects in memory, where updating it can throw exceptions due to mismatched version number.
    • ๐Ÿ›  Fixes an issue where deleting conversation metadata at key path didn't work.
    • ๐Ÿ›  Fixes an issue which caused LayerKit to indefinitely retry conversation creation after receiving an unrecoverable error from server.
    • ๐Ÿ›  Fixes an issue where the LYRClient would auto-purge most of the downloaded content when setting the client.diskCapacity property.
  • v0.14.2 Changes

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixes an issue where creating a query controller mutates a collection the client is enumerating.
  • v0.14.1 Changes

    Public API Changes

    • Introduced LYRConversation query predicate and sort descriptor lastMessage.sentAt, which joins the already existing lastMessage.receivedAt.

    โœจ Enhancements

    • โž• Added logic to speed up synchronization of conversation deletions and metadata updates.

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixes an issue where deleted conversations with pending changes caused the sync to completely stop.
    • ๐Ÿ›  Fixes an issue where mutlitple local deletions and distinct conversation creations could create object cache inconsistencies and crash.
    • ๐Ÿ›  Fixes an issue which caused LayerKit to return nil instead of NSUIntegerMax if an error occurred during a count query.
  • v0.14.0 Changes

    โœจ Enhancements

    • Introduced Announcements, special Messages sent to all users of the application or to a list of users that will arrive outside of the context of a conversation. Announcements can only be sent through the Platform API.
    • ๐Ÿ‘€ Introduced the ability to create a single distinct conversations between participants. This will prevent duplicate conversations if multiple users try to create conversations with each other at the same time. See Public API Changes for more details. Distinct conversations are now the default when creating new conversations. All conversations created before v0.14 are set to be non-distinct.

    Public API Changes

    • โž• Added LYRAnnouncement, which models a platform message sent externally from any conversation. LYRAnnouncement subclasses LYRMessage and is queryable by itself. This works in conjunction with the Platform API.
    • โž• Added LYRConversationOptionsDistinctByParticipantsKey to LYRConversation as a key for the conversation options initilization parameter. Setting the value for this key to YES during initialization will guarantee that Layer only ever creates a single conversation for the specified participants. YES is also default if no options are specified.
    • โž• Added isDistinct property to LYRConversation to indicate whether or not the conversation is distinct by its participant list.
  • v0.13.3 Changes

    Public API Changes

    • Introduced LYRObjectChange, which models a change that has occured upon a Layer model object. This object replaces the change dictionaries that LYRClient posted with change notifications.
    • ๐Ÿ—„ Deprecated the following object change dictionary keys: LYRObjectChangeTypeKey, LYRObjectChangeObjectKey, LYRObjectChangePropertyKey, LYRObjectChangeOldValueKey, LYRObjectChangeNewValueKey. Use the public properties on LYRObjectChange instead.

    โœจ Enhancements

    • ๐Ÿ‘Œ Improved the performance of the Rich Content management (smaller memory footprint and CPU usage).
    • โฑ Prioritized auto-download scheduling of message parts with Rich Content.

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed crash caused by attempting to add a participant to a conversation they are already in.
    • ๐Ÿ›  Fixed crash caused by attempting to remove a participant from a conversation they are not in.
    • ๐Ÿ›  Fixed crash when dealing with huge numbers of Rich Content parts.
    • ๐Ÿ›  Fixed an issue where sent messages' recipient statuses seemed to be stuck on LYRRecipientStatusPending, even though messages were successfully sent.
  • v0.13.2 Changes

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed bug that prevented LYRClient objects from being properly deallocated.
  • v0.13.1 Changes

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed crash during synchronization caused by improperly set error pointers.
    • ๐Ÿ›  Fixed crash during synchronization caused by fetching thousands of conversations at a time.
    • ๐Ÿ›  Fixed crash caused by a Layer Client being deauthenticated while trying to mark messages as read.
    • ๐Ÿ›  Fixed bug that could cause message recipient status to not update properly.
  • v0.13.0 Changes

    โœจ Enhancements

    • โž• Added the ability to receive messages from non-human actors via the Layer Platform API.
    • ๐Ÿ–จ Implemented partial object faulting to lower memory footprint.
    • โž• Added LYRRecipientStatusPending to the LYRRecipientStatus enumeration to align more closely with Layer Android SDK.

    ๐Ÿ› Bug Fixes

    • ๐Ÿ”„ Changed the behavior of recipientStatusByUserID such that the status for each recipient is LYRRecipientStatusPending rather than LYRRecipientStatusSent when a message is awaiting transport.

    Public API Changes

    • ๐Ÿ—„ The LYRMessage property sentByUserID has been deprecated.
    • ๐Ÿ‘ The LYRActor object sender is a new property on LYRMessage to support non-human actors. The sender has two mutually exclusive properties, userID and name. userID is the user ID of a participant that sends a message, and name is the name specified from a platform non-human message sent in a conversation.