Skip to content

Latest commit

 

History

History
1967 lines (1431 loc) · 144 KB

CHANGELOG.md

File metadata and controls

1967 lines (1431 loc) · 144 KB

Change Log

Full Changelog: https://github.com/ably/ably-cocoa/compare/1.2.34...1.2.35

What's Changed

  • Added new fields to the ARTMessage to support upcoming chat SDK #1998

Full Changelog: https://github.com/ably/ably-cocoa/compare/1.2.33...1.2.34

What's Changed:

  • Prepare library for swift 6 concurrency by @maratal in #1963, #1988
  • Preparing for use with Xcode 16 by @maratal in #1978
  • Added attachOnSubscribe to ARTRealtimeChannelOptions by @maratal in #1976

Full Changelog

What's Changed:

  • Attach according to RTL7c by @maratal in #1935
  • Enforce RTP6c attach rule for presence. by @maratal in #1942
  • Max message size fix by @maratal in #1947
  • Respect RSH3a3a by @maratal in #1952

Full Changelog

Fixed issues:

  • Thread priority inversion runtime warning #1897

  • Fix for ignored ARTProtocolMessage.resumed property #1920

Full Changelog

Fixed issues:

  • Ensures the privacy manifest is included when installed via SPM or Cocoapods

Full Changelog

Implemented features:

  • Includes PrivacyManifest in line with Apple's new release guidelines here

Full Changelog

Fixed issues:

  • Fixes typo which caused previous Push Notifiication corner cases fix to fail

Full Changelog

Fixed issues:

  • Push Notification corner cases as initially reported in ably-java #993

Full Changelog

Implemented features:

  • Updated example app #1879

Fixed issues:

  • Device registration flow omits deviceSecret #1892

Full Changelog

Fixed issues:

  • Singleton realtime instance obtains multiple connections and confuses them #1882

Full Changelog

Implemented features:

  • Realtime protocol v2 implementation (with no connectionSerial) #1494

Full Changelog

Fixed issues:

  • Push device deregistration does not clear device details. #1177
  • Unrecognized selector sent to instance. #1837

Full Changelog

Fixed issues:

  • Push device deregistration does not clear device details. #1177
  • App build fails due to missing dependencies. #1755 and #1824

Full Changelog

Fixed issues:

  • Fixes an issue where certain errors will cause a Realtime connection to transition to FAILED when it should be transitioning to DISCONNECTED and retrying the connection attempt. #1817

Full Changelog

Implemented features:

  • Location pushes #1771
  • Incremental backoff and jitter #1431
  • Handle os connectivity event while CONNECTING #1626

Closed issues:

  • Compiler warning "Non-portable path to file..." #1757
  • App crash and dyld error message "AblyDeltaCodec cannot be loaded, image not found" #1183
  • Compatibility with Xcode 15 #1803

Full Changelog

Public API changes:

  • This release hides some private types that had been unintentionally exposed in the public API of the ably-cocoa library.

Internal changes:

  • The ably-cocoa library no longer calls any of the ARTLog methods in the ARTLog (Shorthand) category, nor the -logWithError: method. Be aware that if you have created a custom subclass of ARTLog which overrides any of these methods, they will no longer be called. ARTLog now performs all of its logging using only the -log:withLevel: method.

Fixed bugs:

  • Fallback host is being discarded before fallbackRetryTimeout elapses #1683
  • Compilation error in SocketRocket in Xcode 14.3 #1591
  • Call to _connect in ARTRealtimeInternal constructor #1566
  • SCNetworkReachabilitySetCallback (Crashed: io.ably.main) #1380
  • Crash in ARTOSReachability #593

Closed issues:

  • Run tests in Ably-iOS and Ably-macOS using Xcode 14.3 #1653
  • Emit file name and line number with every logged message #1643
  • Thread running at QOS_CLASS_USER_INTERACTIVE waiting on a lower QoS thread running at QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions #1569
  • App Store publication issues when using Carthage #1559
  • Remove extra callback with setSuspended #1550
  • Make sure we can build the library and run the tests using Xcode 14 #1523

Full Changelog

Closed issues:

  • Replace all calls to NSLog with calls to the ARTLog instance #1554

Full Changelog

Fixed bugs:

  • Xcode 14 Thread Performance Checker warns of a priority inversion from SocketRocket code #1516

Full Changelog

Fixed bugs:

  • Ably agents client option is implemented incorrectly #1525

Closed issues:

  • Implement API for fetching Agent identifier #1530
  • Fix error on trying to override HTTPURLResponse._allHeaderFields with Xcode 14 #1522
  • Replace usage of SecKeychainItemDelete to fix deprecation error in Xcode 14 #1521

Full Changelog

Closed issues:

  • SDK tests are not running on MacBook Pro M1 #1506
  • Create Feature Compliance Manifest for ably-cocoa #1443

Implemented features:

Full Changelog

Closed issues:

Full Changelog

Documentation:

  • Docstring comments added for documentation generation with Jazzy (#1491)

Full Changelog

Fixed bugs:

  • Warnings of the form Umbrella header for module 'Ably' does not include header 'ARTPushActivationEvent.h' (fixed by #1474)

Full Changelog

Fixed bugs:

  • SCNetworkReachabilitySetCallback (Crashed: io.ably.main) #1380, fixed in: Fix of the crash in the ARTOSReachability #1453 (maratal)
  • Channel names are not properly url-encoded #1449, fixed in: Fixed channel name url encoding #1451 (maratal)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Mutable ARTDeviceDetails.metadata #1435, fixed in: Added missing strong property attributes #1434 (maratal)
  • According to spec, the SDK should be responsible for calling -[UIApplication registerForRemoteNotifications], not the user #1271, in: Call to the registerForRemoteNotifications #1293 (maratal)

Closed issues:

  • Remove call to registerForRemoteNotifications from Basic APNS example #1359, in: #1360 (maratal)
  • Create simplified ably-cocoa example project for demonstrating push notifications capability #1318, in: Basic APNS example #1319 (maratal)

Merged pull requests:

Full Changelog

Revert Bug Fix:

We made a change, released in version 1.2.8, which we suspect has been causing issues for some customers. This release reverts that change.

  • Reverting Fix/1177 full reset rsh3g2a only #1272 (maratal)

Full Changelog

Bug Fix:

This bug affects customers using message content encryption alongisde channel history for a single Ably client instance. History REST requests were incorrectly returning encrypted payloads, despite encryption having been enabled via the Realtime channel setOptions API.

  • Bug: Updating ARTRealtimeChannel’s options doesn’t update the options of its ARTRestChannelInternal #1265
  • Fix: When setting realtime channel options, pass through to REST channel #1266 (lawrence-forooghian)

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:

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:

Full Changelog

Merged pull requests:

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

This release makes breaking changes to runtime device support requirements:

  • iOS 10.0 or higher is now required (previously it was 9.0)
  • macOS 10.11 or higher is now required (previously it was 10.10)

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:

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)

Full Changelog

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

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:

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

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

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:

Full Changelog

Fixed bugs:

  • Custom logger not working? #1010

Closed issues:

  • request_id in REST requests #1001
  • Memory leak issues preventing destroying client #997

Merged pull requests:

  • Test suite: keep channel name prefix for current ClientOptions while calling 'setupOptions' and other improvements #1009 (ricardopereira)
  • Avoid leak from user incorrectly holding to authCallback's callback. #1000 (tcard)
  • Allow customers to subclass ARTLog #1011 (QuintinWillison)

Full Changelog

Merged pull requests:

  • Fix Objective-C namespace collisions #1006 (SlaunchaMan)
  • Fix strong ref cycle: Rest.push and Rest.push.admin <-> Rest. #999 (tcard)

Full Changelog

Changes:

Full Changelog

Fixed bugs:

  • Old push state AfterRegistrationUpdateFailed needs migration #993

Closed issues:

  • Auth token refresh misses when macOS is sleeping #984

Merged pull requests:

Full Changelog

Fixed bugs:

  • Result of internet-up.ably-realtime.com is ignored #952
  • Realtime suspended connection retrial using wrong timeout #913

Closed issues:

  • Remove develop branch #969
  • Flaky test: RTP2f (incoming LEAVE while SYNCing) #938
  • Flaky test: RTN17* (fallback hosts) #931

Merged pull requests:

Full Changelog

Merged pull requests:

  • Remove push state machine singleton #972 (tcard)
  • Add clarification to release process: document --since-tag effects #971 (tcard)

Full Changelog

Fixed bugs:

  • Cannot compile Objective-C++ file if Ably headers included #964
  • Realtime Channel endless loop: suspended > attached > suspended #881

Closed issues:

  • Flaky test: RTN5 (basic operations should work simultaneously) #934

Merged pull requests:

1.1.15 (2019-12-23)

Full Changelog

Merged pull requests:

1.1.14 (2019-12-16)

Full Changelog

Fixed bugs:

  • iOS Incompatible library version crash - DYLIB_COMPATIBILITY_VERSION vs DYLIB_CURRENT_VERSION #946

1.1.13 (2019-12-09)

Full Changelog

Fixed bugs:

  • OS Network Reachability sometimes doesn't detect network state changes #908
  • Using a clientId should no longer be forcing token auth in the 1.1 spec #849
  • Move channels to FAILED only after their iterator is done. #920 (tcard)
  • Copy channels for public iterate() on internal queue. #919 (tcard)

Closed issues:

  • Queuing messages before attach can lead to out-of-order publishing #926
  • Channels mutated-while-enumerated crash #918
  • Xcode 11 warnings #905

Merged pull requests:

1.1.12 (2019-10-03)

Full Changelog

Fixed bugs:

  • Push token: replace NSData.description usage #889

Merged pull requests:

1.1.11-beta.1 (2019-09-20)

Full Changelog

Fixed bugs:

  • Push token: replace NSData.description usage #889

  • PushChannel.subscribe should not call the callback in the internal queue #862

  • Crash in ARTPush: "dispatch_sync called on queue already owned by current thread" #888

  • Push is using the system NSLog directly instead of the ARTLogger #896

  • Tentative fix of: Crash on creating weak ref to deallocating object #879

Merged pull requests:

  • Push: replace system NSLog with internal ARTLogger #896 (ricardopereira)
  • Replace NSData.description to stringify device tokens correctly #893 (ricardopereira)
  • Push: fix crash "dispatch_sync called on queue already owned by current thread" #888 (ricardopereira)
  • Push: PushChannel.subscribe should not call the callback in the internal queue #862 (ricardopereira)
  • Split in public and internal objects #882 (tcard)

1.1.11-beta.0 (2019-08-27)

Full Changelog

Fixed bugs:

  • Tentative fix of: Crash on creating weak ref to deallocating object #879

Merged pull requests:

  • Split in public and internal objects #882 (tcard)

1.1.10 (2019-07-29)

Full Changelog

Fixed bugs:

  • Push device registration omits clientId #877

Merged pull requests:

1.1.9 (2019-07-12)

Full Changelog

Fixed bugs:

  • Push deactivate on an app is failing with push-subscribe permissions #873

Merged pull requests:

  • Delete device registration should not use the general-purpose endpoint #871 (ricardopereira)

1.1.8 (2019-07-03)

Full Changelog

Fixed bugs:

  • Push deactivate/activate sequence results in stopped notifications #863
  • Library apparently interpreting the connectionStateTtl with incorrect units #866

Merged pull requests:

1.1.7 (2019-06-25)

Full Changelog

Fixed bugs:

  • Push deactivate/activate sequence results in stopped notifications #863

Merged pull requests:

  • Fix Push Activation State Machine: WaitingForRegistrationUpdate bad state #864 (ricardopereira)

1.1.6 (2019-06-12)

Full Changelog

Fixed bugs:

  • Lexical or Preprocessor Issue: 'SRWebSocket.h' file not found #840
  • KSCrashAblyFork ksthread_getQueueName #846

Closed issues:

  • Fix Travis CI (iOS 9 build is failing) #856

Merged pull requests:

1.1.5 (2019-05-23)

Full Changelog

Implemented enhancements:

  • Swift 5 / Xcode 10.2 #838

Fixed bugs:

  • Issue reported in iOS push tutorial #850

Closed issues:

  • Expose Auth.tokenDetails #852
  • Improve handling of clock skew #834
  • my-members presenceMap requirement change for 1.1 #737

Merged pull requests:

1.1.4 (2019-05-07)

Full Changelog

Implemented enhancements:

  • Add idempotent REST publishing #749

Fixed bugs:

  • Default token params should not include a capabilities member #576
  • Unsubscribe on channel enumeration causing crash #842

Closed issues:

  • Address msgpack warnings #689

Merged pull requests:

1.1.3 (2019-01-10)

Full Changelog

Merged pull requests:

1.1.2 (2018-11-06)

Full Changelog

Implemented enhancements:

  • Replace NSURL with URL in Swift code #794
  • Address SocketRocket warnings #688

Fixed bugs:

  • Unable to submit to AppStore #803
  • After connection recovery, the client resets msgSerial #799
  • Investigate implementation of RTN15a #727
  • SocketRocket - missing required key when submitting to the App Store #701

Closed issues:

  • Issue while subscribe device for Push Notifications #796
  • Potential code that could stall some CI executions #758
  • Check use of dev:push-device-auth environment #781
  • Check behavior of RTN15h* #731
  • Investigate implementation of RTN14b #730

Merged pull requests:

1.1.1 (2018-09-29)

Full Changelog

Fixed bugs:

  • Update SocketRocket dependency #804

1.1.0 (2018-08-10)

Full Changelog

Implemented enhancements:

  • Upgrade to Xcode 9.4 #721
  • Update Swift to version 4.1 #716
  • Update protocol version to 1.1 #777
  • Update push API and push device authentication #761 (funkyboy)
  • Add max message size #759 (funkyboy)

Merged pull requests:

1.0.14 (2018-06-18)

Full Changelog

Implemented enhancements:

  • Implement RTN15a #729
  • Improve RTN15G tests #725
  • Add test for JWT token #713
  • Implement connection state freshness check #645

Merged pull requests:

1.0.13 (2018-05-14)

Full Changelog

Implemented enhancements:

  • Run CI on develop after a branch is merged #699
  • Investigate the performance of the iOS SDK vs the JS one #695

Closed issues:

  • realtime.ably.io is blocked in Russia #718
  • Channel history problem #717
  • Use of NSURLConnection #712

Merged pull requests:

  • Enforce new connection when last activity > than (idle interval + TTL) #719 (funkyboy)
  • Add test for sequence of received messages #706 (funkyboy)
  • Add build of develop branch on Travis #705 (funkyboy)
  • Update contributing instructions #704 (funkyboy)

1.0.12 (2018-03-16)

Full Changelog

Implemented enhancements:

  • Address warnings in KSCrash fork #680

Fixed bugs:

  • App Store publication issues when using Carthage #698
  • High Memory usage with my trackee channels #691
  • UI stuck at unsubscribe or calling subscribe when connection disconnected #673

Closed issues:

  • Remove authorise #677
  • Run Travis tests on iOS 9, 10 and 11 #675
  • Full test coverage of push functionality before GA release #632
  • Memory leak when publishing via realtime #625

Merged pull requests:

1.0.11 (2018-01-31)

Full Changelog

Fixed bugs:

  • Uncaught Exception: '-[__NSCFURLSessionConnection performDefaultHandlingForAuthenticationChallenge:]: unrecognized selector #674

Closed issues:

  • Update tests to Swift 4 #668
  • Push activation fails if already registered #661
  • Log from ably-ios client in an inconsistent state #659
  • ARTMessage.data is not converting into Dictionary #643

Merged pull requests:

  • Fix: check if NSCFURLSessionConnection responds to the performDefaultHandlingForAuthenticationChallenge selector #676 (ricardopereira)
  • Swift 4: upgrade settings and dependencies #671 (funkyboy)
  • Fix format of section #666 (funkyboy)

1.0.10 (2017-12-22)

Full Changelog

Implemented enhancements:

  • Implement RTN23a idle timeout #638
  • Document thread-safety requirements in current version #601
  • Crash strategy #596
  • ART* should match IDL definition #557
  • PagiantedResult isLast and hasNext are methods, not attributes #534
  • Auth: buffer of 15s for token expiry not implemented #115

Fixed bugs:

  • Presence map is using clientId as its key, rather than memberKey #641
  • Exception thrown when invoking [_channel unsubscribe] #640
  • Presence map is accessible. #631
  • Pod installation issue: KSCrashAblyFork not found #615
  • Reported crash when an ATTACH is responded to with a DETACHED after a while #614
  • ARTPush didRegisterForRemoteNotificationsWithDeviceToken error #611
  • Crash in ARTOSReachability #593
  • Presence message timestamp interpretation is wrong #580
  • Library crash bug reports #553
  • Realtime: queued messages not handled like it is supposed to be #108

Closed issues:

  • Presence enter error coming #664
  • Rarely no incoming messages and no errors #657
  • Ably ios client closes connection 'WS:0x6000000befc0 websocket did disconnect (code 1000) (null)' #655
  • Deadlock in [rest device] when called from activation state machine #654
  • Not getting message when app is in Background #653
  • Clean CI build #652
  • How to deal with error "attempted to subscribe while channel is in Failed state" #650
  • Occasionally getting "Attached timed out" when using [subscribeWithAttachCallback] #649
  • Carthage Install Error #637
  • Crash in [ARTRealtime transitionSideEffects:] (508) #624
  • List of tests that are intermitently failing #283
  • RestClientStats tests are failing inconsistently. #142
  • Realtime: check test coverage for Queued Messages #109
  • Realtime: timeouts implementations are outdated #41

Merged pull requests:

1.0.9 (2017-09-15)

Full Changelog

Implemented enhancements:

  • Objective-C tests review #627
  • Spike: Review what's needed to use GCD to make the lib thread-safe #602

Closed issues:

  • Lib throws an exception if you try to do some actions when disconnected #635
  • Presence.enter on appWillEnterForeground, leave on appDidEnterBackground issues. #634
  • Push.activate callback not being called #633
  • RTP11d (Presence.get when SUSPENDED) not implemented; throws on DISCONNECTED #630
  • ARTPushActivationState Crash when call ably.push.activate #628
  • ACK: receiving a serial greater than expected #604

Merged pull requests:

1.0.8 (2017-08-07)

Full Changelog

Closed issues:

  • 1.0 auth flow doesn't work? #622

Merged pull requests:

  • Reuse connection when receiving an AUTH. #623 (tcard)
  • [WIP] Make the library thread-safe. #620 (tcard)

1.0.7 (2017-07-24)

Full Changelog

Fixed bugs:

  • TTL is being populated as a default for token requests in tokenRequestToDictionary method #618

Closed issues:

  • channel doesn't have 'subscribe' interface anymore? #621
  • Connection resume failure detaches all channels #612
  • 0.9 spec: Extras field #552

Merged pull requests:

  • Default token TTL to nil, not 60*60. #619 (tcard)
  • Add extras field to Message. #617 (tcard)

1.0.6 (2017-06-30)

Full Changelog

Merged pull requests:

0.8.15 (2017-06-15)

Full Changelog

1.0.5 (2017-06-15)

Full Changelog

Fixed bugs:

  • ably-ios ws spec breach: closing websockets with reserved close codes #605
  • Push: uncaught exception #594

Closed issues:

  • Use of unresolved identifier 'ARTPush' #595

Merged pull requests:

0.8.14 (2017-05-15)

Full Changelog

1.0.4 (2017-05-15)

Full Changelog

Merged pull requests:

0.8.13 (2017-04-19)

Full Changelog

1.0.3 (2017-04-19)

Full Changelog

Fixed bugs:

  • JSON encoding exception - handle encoding failures #591

1.0.2 (2017-04-13)

Full Changelog

0.8.12 (2017-04-13)

Full Changelog

Closed issues:

  • Crash in ARTJsonLikeEncoder #589
  • Release 1.0.0 #585

Merged pull requests:

1.0.1 (2017-03-31)

Full Changelog

0.8.11 (2017-03-31)

Full Changelog

Fixed bugs:

  • Should Emphasize That ARTRealtime Needs To Be Created On Main Queue #577
  • Should not use the global listener for internal purpose #555

Merged pull requests:

  • Fix: should decode a protocol message that has an error without a message #590 (ricardopereira)

1.0.0 (2017-03-23)

Full Changelog

Implemented enhancements:

  • Fix HttpRequest & HttpRetry timeouts #583

Merged pull requests:

0.9.0 (2017-03-23)

Full Changelog

Closed issues:

  • Cannot install via Cocoapods with Xcode 7.3.1 #587

Merged pull requests:

0.8.10 (2017-03-11)

Full Changelog

Implemented enhancements:

  • Check 1.0 docs for accuracy against 0.9 changes #581
  • 0.9 presence spec amendments #565
  • ARTRealtimeChannel* to ARTChannelState* #556
  • Feedback from customer re private methods #554

Closed issues:

  • 0.9 spec: UPDATE event, replacing ERROR #551
  • Pending tests #541
  • AblyRealtime module renamed to Ably #510
  • Test Suite issues #469

Merged pull requests:

0.8.9 (2016-12-06)

Full Changelog

Fixed bugs:

  • Connection resume does not fire channel detached #538

Closed issues:

  • 0.9 spec: fromJson #535
  • CFRunLoopPerformBlock never executes #531
  • Rename authorise API #496

Merged pull requests:

0.8.8 (2016-11-22)

Full Changelog

Implemented enhancements:

  • Add reauth capability #452

Closed issues:

  • Ably requests include incomplete header values. #530
  • Token Request 'ttl' should be in milliseconds #529
  • Wrong message timestamp on 32-bit devices #525
  • Environment option is "production" #511
  • Sometimes test suite fails with: "Test target AblyTests encountered an error" #424
  • Issues noticed while reviewing tests marked as done #140

Merged pull requests:

0.8.7 (2016-10-12)

Full Changelog

Merged pull requests:

0.8.6 (2016-10-12)

Full Changelog

Fixed bugs:

  • Auth: authUrl can return a TokenRequest or the token itself #292
  • Realtime.connection: should store connectionKey when the client receives a CONNECTED message #118
  • Auth: request a token without an API key, authCallback or authUrl #117
  • Release POD #10

Closed issues:

  • Channel still has FAILED state after .attach() call. #485
  • Add example for typical use of authCallback in README #461
  • Complete RSC11: missing host change feature #305
  • Update podspec when CocoaPods v1.0 is released in production #290
  • ARTAuth dependes on ARTRest and it shouldn't #27

Merged pull requests:

0.8.5 (2016-08-26)

Full Changelog

Fixed bugs:

  • Incompatible clientId should cause a connection to fail or set the clientId on the socket #462

Closed issues:

  • 'Socket not connected' incorrectly leads to FAILED connection state rather than DISCONNECTED #471
  • SocketRocket/SRWebSocket.h file not found #463

Merged pull requests:

0.8.4 (2016-08-11)

Full Changelog

Merged pull requests:

  • Encode JSON message data as string. #459 (tcard)
  • Ensure graceful handling of DETACH and DISCONNECT. #455 (tcard)

0.8.3 (2016-07-01)

Full Changelog

Closed issues:

  • Malformed message; no clientId in message or inferred from connection #451
  • Duplicated history #450
  • Have new CocoaPods version with SocketRocket? #449
  • Unable to connect using token auth #291

Merged pull requests:

  • Don't use auth when requesting tokens. #453 (tcard)
  • Add an example actual iOS app with tests. #448 (tcard)

0.8.2 (2016-05-16)

Full Changelog

Implemented enhancements:

  • Update installation guide when Ably 0.8 podspec is live #294
  • Tests: better naming for MockTransport & MockHTTPExecutor #120
  • 0.8.x spec finalisation #107

Fixed bugs:

  • Presence: subscribe callback should provide an error #352
  • Presence: remaining query parameters not implemented #306
  • 0.8.x spec finalisation #107

Closed issues:

  • Add support for Swift 2.2 #345

Merged pull requests:

0.8.1 (2016-04-08)

Full Changelog

Merged pull requests:

0.8.1-swift2.1 (2016-04-08)

Full Changelog

0.8-swift2.1 (2016-04-08)

Full Changelog

Merged pull requests:

0.8.0 (2016-04-06)

Full Changelog

Implemented enhancements:

  • Core: ARTErrorInfo should be related with NSError #126

Closed issues:

  • Update README and docs examples to conform commit 897ce0f #304
  • RealtimePresence.get shouldn't wrap RestPresence.get. #271

Merged pull requests:

0.8.0-beta.3 (2016-03-18)

Full Changelog

Merged pull requests:

0.8.0-beta.2 (2016-03-17)

Full Changelog

Implemented enhancements:

  • Review the known limitations #106
  • Changelog + bump version #104
  • Spec links must link to this repo #102

Fixed bugs:

  • Spec links must link to this repo #102
  • Realtime: there is no dedicated object to manage connections #36

Closed issues:

  • Travis CI is stalling in some builds #143
  • Realtime: check test coverage for Connection State Transition #110
  • No visible @interface for 'ARTRealtime' declares the selector 'subscribeToStateChanges:' #20

Merged pull requests:

0.8.0-beta.1 (2016-03-04)

Full Changelog

Implemented enhancements:

  • New Crypto spec #264
  • ARTPayload: class review #130
  • Channel: consistent publish methods between other platform clients #121
  • Stats: decodeStats should use _nonnull_ instances #113
  • Tests: use defer statement to close the connection #112
  • Readme examples updated + Swift support #105
  • Switch arity of auth methods #24
  • Spec validation #11
  • README must contain working examples in line with other client libraries #6
  • API changes Apr 2015 #4

Fixed bugs:

  • Subscribing without waiting for connection doesn't attach #218
  • Realtime: close connection doesn't wait for the confirmation (CLOSED action) #191
  • RealtimeChannel: attach is inconsistent with the API #189
  • RealtimeChannel: channel subscribe messages is inconsistent with the API #183
  • RealtimeChannel: channel state changes is inconsistent with the API #134
  • Realtime: connection state changes is inconsistent with the API #133
  • Realtime: implement ARTConnection & ARTConnectionDetails #132
  • AuthTokenParams should not contain a default timestamp #129
  • RealtimeChannel: duplicated publish method #127
  • Stats: Stats object properties are never nullable #116
  • Auth: store TokenParams for subsequent authorisations #114
  • Stats: decodeStats should use \nonnull\ instances #113
  • Priority: Test suite passing #103
  • Rest: message decoding #97
  • Switch arity of auth methods #24
  • API changes Apr 2015 #4

Closed issues:

  • Channel#history: query.untilAttach feature #234
  • subscribe should optionally take an additional error callback #220
  • ARTDataDecoded: error decoding a NSDictionary or NSArray #195
  • Test ably-common/test-resources/crypto-data-*.json. #181
  • ARTAuthTokenParams: ttl type is not consistent with spec #131
  • Realtime: add dispose method #111
  • Rest: message encoding #95
  • Realtime: missing connectionDetails property #88
  • Travis: iOS 9 simulator #79
  • Travis: Integrate XCTool or Fastlane #78
  • Tests: List of ObjC tests #48
  • ARTRest should request access token automatically #28
  • Unable to connect to Ably #22
  • Error: "Either a token, token param, or a keyName and secret are required to connect to Ably" #21

Merged pull requests:

0.7.0 (2015-04-29)

Merged pull requests:

* This Changelog was automatically generated by github_changelog_generator