Skip to content

Releases: ably/ably-cocoa

v1.2.8

13 Jan 18:22
4344801
Compare
Choose a tag to compare

Changes

Full Changelog

Implemented enhancements:

  • Rename ARTDeviceTokenKey to ARTAPNSDeviceTokenKey #1209
  • Deprecation: Replace usages of deprecated kCCAlgorithmAES128 with kCCAlgorithmAES #1199
  • Add support for remembered REST fallback host #815
  • Ensure request method accepts UPDATE, PATCH & DELETE verbs #780

Fixed bugs:

  • Calling state's machine activation callback upon push device details failure #1236
  • Push device deregistration does not clear/ reset device details #1177

Closed issues:

  • Check ability of using ably-cocoa in SwiftUI projects #1254
  • Improve test file structure and naming #1203
  • Run static analysis for builds in CI #1202
  • Investigate how we might get rid of the Quick testing framework #1201

Merged pull requests:

Installation and Compatibility

For SPM, CocoaPods and Carthage see Installation Guide.

Ably.framework.zip, attached to this release, was built with Xcode 13.2.1.

v1.2.7

09 Nov 13:07
b2db07d
Compare
Choose a tag to compare

Full Changelog

Implemented enhancements:

  • Stop base64-encoding authorization headers unnecessarily #1185
  • Conflict with XAspect with HAVE_CONFIG_H macro #1161
  • Blocks supplied as properties or method arguments should have typedef #1032
  • Unused function warnings in xdelta3.x when Ably added via CocoaPods - Unused Entity Issue #1031
  • Reduce library dependencies #949
  • Improve error message for invalid state operations #843
  • Finish implementing TI3 #760
  • Update Stats fields with latest MessageTraffic types #732
  • Address issues raised by Xcode’s static analyzer #694
  • Quick Documentation: add headerdoc comments #298

Fixed bugs:

  • Encrypt messages if a new ARTRealtimeChannelOptions or ARTChannelOptions containing cipher is set #1207
  • Prebuilt Ably.framework from make carthage_package doesn't work in Xcode projects #1168
  • Library version identifier invalid #900
  • Check RTN15c3 implementation #847
  • when using authUrl with authMethod=POST, authParams are sent JSON-encoded, not form-encoded #690

Closed issues:

  • Add Swift Package Manager badges to README.md #1204
  • NSSecureCoding NSObject bypasses security #1188
  • Add Ably-cocoa swift package to Swift Package Index #1141
  • App Store upload problem - non-public API use #1104
  • Memory leak(s) when using event emitters #1099
  • build warning - treating a forced downcast to 'ARTClientOptions' as optional will never produce 'nil' #1035
  • Warnings about deprecations when used in a Mac Catalyst app #1003
  • Possible race conditions in Test Suite #912

Merged pull requests:

v1.2.6

17 Aug 07:24
98b7af5
Compare
Choose a tag to compare

Changes

Changelog
Full Changelog for this release

Merged pull requests:

  • Update AblyDeltaCodec dependency to 1.3.1 #1165 (ben-xD)

Installation

Swift Package Manager

  • For Xcode projects (e.g. iOS apps): Add https://github.com/ably/ably-cocoa to your project under Swift Packages tab.
  • For Swift Packages (e.g. other libraries):
    • In dependencies: [...], add .package(url: "https://github.com/ably/ably-cocoa", from: "1.2.6"),
    • In target(dependencies: [...]), add .product(name: "Ably", package: "ably-cocoa")

Cocoapods, add the following to your Podfile.

pod 'Ably', '1.2'

Carthage, follow Installing through Carthage

Imports

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 12.5.1.

v1.2.5

09 Aug 08:26
Compare
Choose a tag to compare

Changes

Full Changelog

Implemented enhancements:

  • Add transportParams to ClientOptions #1112
  • Implement RSC7d (Ably-Agent header) #1111
  • Defaults: Generate environment fallbacks #1066
  • Make stateChange nonnull? #1017
  • Compile SocketRocket with main library #805

Fixed bugs:

  • Memory leaks in the Realtime client #1129
  • Token based authentication always results in 40101 Request mac does not match #1093
  • Potentially insecure usage of the NSURLSession API #1079
  • Incorrect import reference? #1072

Closed issues:

  • Expose device property in ARTRealtime.h #1154
  • Remove ULID dependency (replace usage with NSUUID) #1127
  • Implement ErrorInfo URLs to help debug issues #1125
  • Carthage build for Nimble framework with deprecated linker flag -lswiftXCTest #1123
  • Implement RSC15j (fallback host header) #1116
  • Implement RSC15f (successful fallback host) #1115
  • In last version, connecting to server takes too long time on old devices #1102
  • Fail connection immediately if authorize() called and 403 returned #1078

Merged pull requests:

Installation

Swift Package Manager

  • For Xcode projects (e.g. iOS apps): Add https://github.com/ably/ably-cocoa to your project under Swift Packages tab.
  • For Swift Packages (e.g. other libraries):
    • In dependencies: [...], add .package(url: "https://github.com/ably/ably-cocoa", from: "1.2.5"),
    • In target(dependencies: [...]), add .product(name: "Ably", package: "ably-cocoa")

Cocoapods, add the following to your Podfile.

pod 'Ably', '1.2.5'

Carthage, follow Installing through Carthage

Imports

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 12.5.1.

v1.2.4

28 Apr 11:46
Compare
Choose a tag to compare

Changes

Full Changelog

Fixed bugs:

  • Common crash related to websocket failing with error #1083, fixed by adding a nil-pointer check in #1098 (mikepulaski)
  • Fix of RSH3a2a1 implementation when the clientId doesn't change #1107 (ricardopereira)
  • [not conforming to RTL2g] realtime#close emits detached event on an already detached channel #1088, fixed by #1091 (ricardopereira)

Enhancements:

  • Compliance with RSL1m1 spec - Message should fill clientId, if unavailable, from Rest/Realtime instance #1108, implemented by adding X-Ably-ClientId header to REST requests in #1110 (ricardopereira)
  • Update SocketRocket dependency to 0.5.2-ably-8 #1087 (lawrence-forooghian)

Versions

Podfile

pod 'Ably', '1.2.4'

Cartfile

github "ably/ably-cocoa" == 1.2.4

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 12.4.

v1.2.3

04 Nov 13:07
bec9948
Compare
Choose a tag to compare

Bug Fix

Fixes issue: Publishing messages with authCallback is broken after upgrading from 1.1.16 to 1.2.1 #1074.

Fixed by pull request: Fixes 40012 "Malformed message; invalid clientId" when message has no clientId and credentials can assume any clientId #1082 (ricardopereira)

Full Changelog

Versions

Podfile

pod 'Ably', '1.2.3'

Cartfile

github "ably/ably-cocoa" == 1.2.3

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 12.0.1.

v1.2.2

16 Oct 13:47
634bf03
Compare
Choose a tag to compare

Highlights

Supports Build with Xcode 12

Fixes the Carthage build. Increases the minimum deployment target for iOS, from 8 to 9 (conflated in #1075).

New Push Notification Registration API for apps using the SwiftUI App Lifecycle

For new Swift-based apps created with Xcode 12, the default lifecycle is SwiftUI App.
This means that the previous approach we supported of conforming to ARTPushRegistererDelegate on your UIApplicationDelegate no longer works.

Going forward apps should use the pushRegistererDelegate property on client options to supply this delegate (#1075).

Reduced Dependencies

We've removed both KSCrash (#1073) and SAMKeychain (#1067).

In Cocoa there is no effective way to catch selectively only those exceptions that occur within the library, and the attempt to do that using KCrash was interfering with app developers' own exception handling. Our advice is that app developers incorporate their own application-wide exception handling and crash reporting.

Fixed issues:

  • Deadlock getting ARTRealtimeChannel between two dispatch_sync (ui queue vs ably main queue) #1029
  • Push Notification Registration via ARTPushRegistererDelegate don't work in iOS 14 when instantiated via @UIApplicationDelegateAdaptor #1069
  • Conflict KSCrashAblyFork #1068

Merged pull requests:

Full Changelog

Versions

Podfile

pod 'Ably', '1.2.2'

Cartfile

github "ably/ably-cocoa" == 1.2.2

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 12.0.1.

v1.2.1

02 Jul 17:56
8ad228d
Compare
Choose a tag to compare

Fixes issues in our uncaught exception handling code:

  • Fix Data race in ARTstartHandlingUncaughtExceptions #1030
  • Merge Improve unhandled exception handling code #1056 (QuintinWillison)

Also some improvements to our test suite:

Full Changelog

Versions

Podfile

pod 'Ably', '1.2.1'

Cartfile

github "ably/ably-cocoa" == 1.2.1

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 11.3.1.

v1.2.0

08 Jun 14:42
Compare
Choose a tag to compare

Adds the capability to subscribe to a channel in delta mode.

Subscribing to a channel in delta mode enables delta compression. This is a way for a client to subscribe to a channel so that message payloads sent contain only the difference (ie the delta) between the present message and the previous message on the channel.

Full Changelog

Versions

Podfile

pod 'Ably', '1.2.0'

Cartfile

github "ably/ably-cocoa" == 1.2.0

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 11.3.1.

v1.1.23

04 May 09:53
Compare
Choose a tag to compare

Changes

Full Changelog

Implemented enhancements:

  • Remove queueing messages in a channel-level queue #894

Fixed bugs:

  • lib fails all the user's channels on transition to connecting/disconnected if queueMessages is disabled? #1004

Closed issues:

Merged pull requests:

Versions

Podfile

pod 'Ably', '1.1.23'

Cartfile

github "ably/ably-cocoa" == 1.1.23

Objective-C

#import <Ably/Ably.h>

Swift

import Ably

Compatibility

  • Carthage release for Swift is built with Xcode 11.3.1.