Full Changelog: https://github.com/ably/ably-cocoa/compare/1.2.34...1.2.35
- 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
toARTRealtimeChannelOptions
by @maratal in #1976
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
Fixed issues:
-
Thread priority inversion runtime warning #1897
-
Fix for ignored
ARTProtocolMessage.resumed
property #1920
Fixed issues:
- Ensures the privacy manifest is included when installed via SPM or Cocoapods
Implemented features:
- Includes PrivacyManifest in line with Apple's new release guidelines here
Fixed issues:
- Fixes typo which caused previous Push Notifiication corner cases fix to fail
Fixed issues:
- Push Notification corner cases as initially reported in ably-java #993
Implemented features:
- Updated example app #1879
Fixed issues:
- Device registration flow omits
deviceSecret
#1892
Fixed issues:
- Singleton realtime instance obtains multiple connections and confuses them #1882
Implemented features:
- Realtime protocol v2 implementation (with no
connectionSerial
) #1494
Fixed issues:
- Push device deregistration does not clear device details. #1177
- Unrecognized selector sent to instance. #1837
Fixed issues:
- Push device deregistration does not clear device details. #1177
- App build fails due to missing dependencies. #1755 and #1824
Fixed issues:
- Fixes an issue where certain errors will cause a Realtime connection to transition to
FAILED
when it should be transitioning toDISCONNECTED
and retrying the connection attempt. #1817
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
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 theARTLog (Shorthand)
category, nor the-logWithError:
method. Be aware that if you have created a custom subclass ofARTLog
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
inARTRealtimeInternal
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
Closed issues:
- Replace all calls to
NSLog
with calls to theARTLog
instance #1554
Fixed bugs:
- Xcode 14 Thread Performance Checker warns of a priority inversion from SocketRocket code #1516
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
Closed issues:
- SDK tests are not running on MacBook Pro M1 #1506
- Create Feature Compliance Manifest for
ably-cocoa
#1443
Implemented features:
- Implement RTP8j spec point #1517
Closed issues:
- Make docs workflow run for all tags #1440, in: #1501 (maratal)
- Link to Ably error codes in ARTErrorInfo docstrings #1502, in: #1503 (maratal)
Documentation:
- Docstring comments added for documentation generation with Jazzy (#1491)
Fixed bugs:
- Warnings of the form
Umbrella header for module 'Ably' does not include header 'ARTPushActivationEvent.h'
(fixed by #1474)
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)
Implemented enhancements:
- Add support to get channel lifecycle status #1415, in: #1420 (maratal)
- Missing properties in ARTErrorInfo #1261, in: #1304 (maratal)
- Missing properties in ARTClientOptions #1260, in: fallback retry timeout option #1290 (maratal)
- Feature/1305 symmetric decryption #1307 (maratal)
Fixed bugs:
- Mutable
ARTDeviceDetails.metadata
#1435, fixed in: Added missingstrong
property attributes #1434 (maratal) - According to spec, the SDK should be responsible for calling
-[UIApplication registerForRemoteNotifications]
, not the user #1271, in: Call to theregisterForRemoteNotifications
#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:
- Fix symlink command on contributing guide #1436 (ikbalkaya)
- Jazzy docs generation workflow #1428 (maratal)
- Fix nonexistent version number in readme SPM instructions #1324 (lawrence-forooghian)
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.
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 itsARTRestChannelInternal
#1265 - Fix: When setting realtime channel options, pass through to REST channel #1266 (lawrence-forooghian)
Implemented enhancements:
- Rename
ARTDeviceTokenKey
toARTAPNSDeviceTokenKey
#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:
- Fix/1177 full reset device details (RSH3g2a only) #1259 (maratal)
- Improve test file structure and naming #1252 (lawrence-forooghian)
- Treat warnings as errors across the codebase #1249 (lawrence-forooghian)
- Remove the Quick testing framework #1240 (lawrence-forooghian)
- Fix Carthage #3019 workaround for Xcode 13 #1235 (lawrence-forooghian)
- Feature/1209 device token key #1215 (maratal)
- Replaced deprecated kCCAlgorithmAES128 with kCCAlgorithmAES #1214 (maratal)
- Turned on static analyser after build #1213 (maratal)
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
frommake 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:
- Fix
ARTChannel.setOptions
andARTRealtimeChannel.setOptions
: Recreate ARTDataEncoder on ARTChannel options update #1208 (lukasz-szyszkowski) - Add Swift Package Index badges #1205 (lukasz-szyszkowski)
- Fix/694 static analyser issues #1198 (maratal)
- Log message text fixed. #1197 (maratal)
- Removed optional base64 auth header #1195 (maratal)
- Fix/1188 Added allowed class for NSKeyedUnarchiver #1194 (maratal)
- Added Xcodebuild Logs uploading step #1192 (maratal)
- Make sure we all use the same version of Fastlane #1189 (lawrence-forooghian)
- Assure new secret to be created only together with the deviceId #1187 (maratal)
- Copied descriptions from ably.com/documentation/realtime/types #1176 (maratal)
- New stats fields #1175 (maratal)
- Reattaching channels in compliance with RTN15c3 #1172 (maratal)
- 1003 mac catalyst warnings #1171 (maratal)
- Documentation: Add link to example app, and clarify
ARTPushRegistererDelegate
usage #1170 (ben-xD) - Blocks typedef #1166 (maratal)
Merged pull requests:
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)
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 inARTRealtime.h
#1154 - Remove
ULID
dependency (replace usage withNSUUID
) #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:
- Fix for potentially insecure usage of the NSURLSession API #1158 (maratal)
- 1017 state change nonnull #1156 (maratal)
- xcbkptlist removed #1155 (maratal)
- Move deviceSecret into ARTLocalDevice #1153 (ben-xD)
- Remove references to ULID in xcodeproj #1152 (maratal)
- Store succeed fallback host as default for 10 minutes (RSC15f) #1150 (lukasz-szyszkowski)
- Fix/1078 fail immediately on 403 #1149 (maratal)
- (RSC15j) Add
Host
header for fallback hosts. #1148 (lukasz-szyszkowski) - Extending ErrorInfo with
href
andrequestId
#1147 (lukasz-szyszkowski) - Add transport params to client options (RTC1f) #1142 (lukasz-szyszkowski)
- Swift Package Manager support #1136 (lukasz-szyszkowski)
- Real time client memory leaks fixes #1130 (lukasz-szyszkowski)
- Remove ULID dependency and replace usage with NSUUID #1128 (ben-xD)
- Fix for deprecated linker flag for Nimble framework #1124 (lukasz-szyszkowski)
- Ably-Agent Header #1119 (maratal)
- Environment fallback hosts #1113 (ricardopereira)
- Accept authURL response with timestamp argument as string #1097 (ricardopereira)
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 fillclientId
, if unavailable, from Rest/Realtime instance #1108, implemented by addingX-Ably-ClientId
header to REST requests in #1110 (ricardopereira) - Update SocketRocket dependency to 0.5.2-ably-8 #1087 (lawrence-forooghian)
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)
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:
- Support ARTPushRegistererDelegate on iOS 14 #1075 (QuintinWillison)
- Remove KSCrash and unhandled exception handlers #1073 (QuintinWillison)
- Remove SAMKeychain dependency and use internal solution #1067 (ricardopereira)
- Fix Push State Machine delegate syncing the main queue #1064 (ricardopereira)
- Add
use\_frameworks!
recommendation #1061 (kavalerov) - Correct CocoaPods instruction #1060 (kavalerov)
- Bump protocol version to 1.2 #1058 (QuintinWillison)
- Fix some
waitUntil
error "expects its completion closure to be only called once" #1028 (ricardopereira)
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:
- Fix Flaky test: message receiving order #977
- Merge Test suite: fix lib version #1026 (ricardopereira)
- Merge Should not wait for AblyTest.options in 'context' scope #1023 (ricardopereira)
- Merge Fix 977 #1022 (ricardopereira)
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.
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:
- Implement push spec update ably/docs#710 #876
Merged pull requests:
- Refine release procedure #1014 (QuintinWillison)
- Fix 'queueMessages' expected behaviour #1005 (ricardopereira)
Fixed bugs:
- Custom logger not working? #1010
Closed issues:
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)
Merged pull requests:
- Fix Objective-C namespace collisions #1006 (SlaunchaMan)
- Fix strong ref cycle: Rest.push and Rest.push.admin <-> Rest. #999 (tcard)
Changes:
- Support build with Xcode 10 (23b235c) - brings in SocketRocket #5
Fixed bugs:
- Old push state AfterRegistrationUpdateFailed needs migration #993
Closed issues:
- Auth token refresh misses when macOS is sleeping #984
Merged pull requests:
- Push: Fix activate() behavior while syncing device. #995 (tcard)
- Migrate persisted AfterRegistrationUpdateFailed to ...SyncFailed. #994 (tcard)
- Use tests dispatch queue, not main, to POST /apps. #991 (tcard)
- Update SocketRocket dependency #990 (ricardopereira)
- Document development flow #989 (QuintinWillison)
- Second Attempt to Update KSCrash dependency #988 (QuintinWillison)
- Fix handling of token error when first connecting. #986 (tcard)
- Update KSCrash dependency #981 (QuintinWillison)
- Fix bad merge in README. #980 (tcard)
- Validate and sync when activating push for registered device #974 (tcard)
- Update ably-ios references to ably-cocoa #954 (tcard)
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:
- Remove redundant direct calls to push delegate callbacks #975 (tcard)
- Simplify hooks on RTP2f test #963 (tcard)
- Fix internet-up.ably-realtime.com checks #961 (tcard)
- Fix connection SUSPENDED timeout #917 (ricardopereira)
Merged pull requests:
- Remove push state machine singleton #972 (tcard)
- Add clarification to release process: document --since-tag effects #971 (tcard)
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:
- If waiting for push device details and got them persisted, re-emit them. #967 (tcard)
- Update msgpack (fix CocoaPod warnings) #962 (ricardopereira)
- Alleviate RTN5 flakiness #957 (tcard)
- Fix SUSPENDED channel reattach #909 (ricardopereira)
1.1.15 (2019-12-23)
Merged pull requests:
- KSCrash fork has been renamed to KSCrashAblyFork #955 (ricardopereira)
- Update msgpack to v0.3 #951 (ricardopereira)
- Simplify random fallback host selection #953 (tcard)
1.1.14 (2019-12-16)
Fixed bugs:
- iOS Incompatible library version crash - DYLIB_COMPATIBILITY_VERSION vs DYLIB_CURRENT_VERSION #946
1.1.13 (2019-12-09)
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:
- Make ARTRealtimeChannel.publish thread-safe #929 (tcard)
- Extract duplicate code from ARTChannel.publish methods #928 (tcard)
- Set logLevel=verbose every time setupOptions is called with debug=true #927 (tcard)
- Don't assert on error messages. #925 (tcard)
- Prevent mutate-channels-while-iterating for suspend too. #922 (tcard)
- Soak test #916 (tcard)
- Fix Network Reachability: instance not found for target #910 (ricardopereira)
- Fix Xcode 11 new warnings #907 (ricardopereira)
- README: update the release process #906 (ricardopereira)
- Carthage: fix public header imports #902 (ricardopereira)
- Should not force token auth when clientId is set #898 (ricardopereira)
- Improve error and debug messages #895 (ricardopereira)
1.1.12 (2019-10-03)
Fixed bugs:
- Push token: replace
NSData.description
usage #889
Merged pull requests:
- Replace
NSData.description
to stringify device tokens correctly #893 (ricardopereira)
1.1.11-beta.1 (2019-09-20)
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 theARTLogger
#896 -
Tentative fix of: Crash on creating weak ref to deallocating object #879
Merged pull requests:
- Push: replace system
NSLog
with internalARTLogger
#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)
Fixed bugs:
- Tentative fix of: Crash on creating weak ref to deallocating object #879
Merged pull requests:
1.1.10 (2019-07-29)
Fixed bugs:
- Push device registration omits
clientId
#877
Merged pull requests:
- Update
LocalDevice.clientId
#874 (ricardopereira)
1.1.9 (2019-07-12)
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)
Fixed bugs:
- Push deactivate/activate sequence results in stopped notifications #863
- Library apparently interpreting the
connectionStateTtl
with incorrect units #866
Merged pull requests:
- Push Device Update Registration: fix request authentication #867 (ricardopereira)
- Fix consecutive Authorizations #833 (ricardopereira)
- Fix milliseconds conversions #869 (ricardopereira)
- Tests using
echo.ably.io
were failing intermittently with "Request mac does not match" #868 (ricardopereira)
1.1.7 (2019-06-25)
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)
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:
- Update KSCrash and SocketRocket #858 (ricardopereira)
1.1.5 (2019-05-23)
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:
- Swift 5 (Xcode 10.2) #841 (ricardopereira)
- RSA11 #853 (ricardopereira)
- Push header docs #827 (ricardopereira)
- Fix Push Update Device Registration #851 (ricardopereira)
- RTP17b #835 (ricardopereira)
1.1.4 (2019-05-07)
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:
- Fix RTN16f #845 (ricardopereira)
- Idempotent Rest Publishing #786 (ricardopereira)
- RSL1j #784 (ricardopereira)
- RSA4b1 #836 (ricardopereira)
- Fix Channel.subscribe onAttachCallback #844 (ricardopereira)
- Timestamp should not be generated in the client #831 (ricardopereira)
- Fix URL query encoding of Capability and Timestamp fields #830 (ricardopereira)
- Fix RSA6 #829 (ricardopereira)
- Push State Machine: main thread sometimes gets stuck when accessing Local Device #826 (ricardopereira)
- asd #784 (ricardopereira)
1.1.3 (2019-01-10)
Merged pull requests:
- Multi platform #823 (ricardopereira)
- TV support #821 (ricardopereira)
- Makefile (and fix version bump) #820 (ricardopereira)
- Mac support #817 (ricardopereira)
1.1.2 (2018-11-06)
Implemented enhancements:
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:
- Update to Xcode10 Swift 4.2 #813 (funkyboy)
- Xcode 10 minimal support #812 (ricardopereira)
- Fix Realtime clients creation outside the
it
method scope #811 (ricardopereira) - Add RTL6d2 #806 (funkyboy)
- SocketRocketAblyFork #808 (ricardopereira)
- Fix RTL6d1 #807 (funkyboy)
- Add rtl6d1 #802 (funkyboy)
- RTN16f #801 (ricardopereira)
- Update RTN16b #800 (ricardopereira)
- Add test for RTN15h1 #798 (funkyboy)
- NSURL -> URL in Swift code #797 (funkyboy)
- Add TR3* #793 (funkyboy)
- Add ref to RTN23a #792 (funkyboy)
- Improve RTN14b test #791 (funkyboy)
- Reactivate and fix RTP17 tests #790 (funkyboy)
- Add RTN15a #789 (funkyboy)
- Fix RSL1b #788 (ricardopereira)
- Move RSL1i to RestClientChannel file #785 (ricardopereira)
- HTTP Paginated Response #783 (ricardopereira)
- Fix RSC7b test #782 (funkyboy)
- RSC19a #754 (ricardopereira)
1.1.1 (2018-09-29)
Fixed bugs:
- Update SocketRocket dependency #804
1.1.0 (2018-08-10)
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:
- Update Cocoapods version #755 (funkyboy)
- Fix some JWT tests #753 (funkyboy)
- Add rtn15h2 #752 (funkyboy)
- Fix flaky presence tests #751 (funkyboy)
- Add rsa4e #750 (funkyboy)
- Add rsa4d #748 (funkyboy)
- Add tp3a test #747 (funkyboy)
- Add test for RTE6a #746 (funkyboy)
- Add test for TM2a #744 (funkyboy)
- Set the Accept http header to the mime type of the selected encoder #743 (funkyboy)
- Add cd2c #742 (funkyboy)
- Add ABLY_ENV support #740 (funkyboy)
- Update ref to ably-common #739 (funkyboy)
- Build Carthage dependencies only for iOS #738 (funkyboy)
- Push missing tests #722 (ricardopereira)
- Push Activation State Machine missing tests #720 (ricardopereira)
- Push Channels tests #708 (ricardopereira)
1.0.14 (2018-06-18)
Implemented enhancements:
- Implement RTN15a #729
- Improve RTN15G tests #725
- Add test for JWT token #713
- Implement connection state freshness check #645
Merged pull requests:
- Fix race condition in preparing tests for push #733 (funkyboy)
- Improve RTN15G tests #726 (funkyboy)
- Add jwt tests #714 (funkyboy)
- Add issue template #711 (funkyboy)
1.0.13 (2018-05-14)
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:
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)
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:
- Fix memory consumption bug #702 (funkyboy)
- Remove copy frameworks phase from the Xcode project #700 (funkyboy)
- Add supported platform to README #693 (funkyboy)
- Address KSCrash warnings #686 (funkyboy)
- Pull specific version of SocketRocket #684 (funkyboy)
- Remove deprecated authorise #679 (funkyboy)
- Update release instructions #678 (funkyboy)
- Push ActivationStateMachine tests #662 (ricardopereira)
- Push notifications #582 (ricardopereira)
1.0.11 (2018-01-31)
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 theperformDefaultHandlingForAuthenticationChallenge
selector #676 (ricardopereira) - Swift 4: upgrade settings and dependencies #671 (funkyboy)
- Fix format of section #666 (funkyboy)
1.0.10 (2017-12-22)
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:
- Clean test suite #665 (ricardopereira)
- Push: fix deadlock in rest.device #663 (ricardopereira)
- RTN23 #660 (ricardopereira)
- Improve info about Carthage and contribution setup #658 (ricardopereira)
- Move to DISCONNECTED on unexpected WebSocket close. #656 (tcard)
- Fix: when an ATTACH request is responded with a DETACHED #651 (ricardopereira)
- Fix: ambiguous reference to member 'dataTask(with:completionHandler:)' #648 (ricardopereira)
- Fix: presence map key and get with query (clientId and connectionId) #647 (ricardopereira)
- CocoaPod: add
private\_header\_files
prop #646 (ricardopereira) - Fix #640 #644 (ricardopereira)
- Push Admin tests #642 (ricardopereira)
- Carthage support #639 (ricardopereira)
1.0.9 (2017-09-15)
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:
- Implement RTP11d. #636 (tcard)
- Port legacy tests to Swift #629 (ricardopereira)
1.0.8 (2017-08-07)
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)
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:
1.0.6 (2017-06-30)
Merged pull requests:
- Fix RTN15c3 #616 (ricardopereira)
0.8.15 (2017-06-15)
1.0.5 (2017-06-15)
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:
- Convert to Swift 3. #613 (tcard)
- Test suite #609 (ricardopereira)
- WebSocket: remove ARTWsAbnormalClose (1006) #606 (ricardopereira)
0.8.14 (2017-05-15)
1.0.4 (2017-05-15)
Merged pull requests:
- Sentry. #603 (tcard)
- WIP: Report crashes to Sentry. #599 (tcard)
- Crashes #598 (ricardopereira)
- Log history #597 (ricardopereira)
0.8.13 (2017-04-19)
1.0.3 (2017-04-19)
Fixed bugs:
- JSON encoding exception - handle encoding failures #591
1.0.2 (2017-04-13)
0.8.12 (2017-04-13)
Closed issues:
Merged pull requests:
- Encoder: handle invalid types gracefully #592 (ricardopereira)
1.0.1 (2017-03-31)
0.8.11 (2017-03-31)
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)
Implemented enhancements:
- Fix HttpRequest & HttpRetry timeouts #583
Merged pull requests:
- 0.9 #588 (ricardopereira)
0.9.0 (2017-03-23)
Closed issues:
- Cannot install via Cocoapods with Xcode 7.3.1 #587
Merged pull requests:
- Thread safety #586 (ricardopereira)
0.8.10 (2017-03-11)
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: Sandbox changes #584 (ricardopereira)
- Fix: Realtime transport should fire events on a serial queue #578 (ricardopereira)
- Update RSA10g for 0.9 #575 (ricardopereira)
- Update RSA9h for 0.9 #574 (ricardopereira)
- Update RSA8e for 0.9 #573 (ricardopereira)
- Update RTP8d for 0.9 #572 (ricardopereira)
- RTP17 #571 (ricardopereira)
- Update RTP5 for 0.9 #570 (ricardopereira)
- Swift performance: speed up code completion #569 (ricardopereira)
- RTP19 #568 (ricardopereira)
- RTP18 #567 (ricardopereira)
- Update RTP3 for 0.9 #566 (ricardopereira)
- Update RTP2 for 0.9 #563 (ricardopereira)
- TR4i #562 (ricardopereira)
- TH5 #561 (ricardopereira)
- Update RTN4 for 0.9 #560 (ricardopereira)
- UPDATE event #559 (ricardopereira)
- Xcode 8.2 (Swift 2.3) #558 (ricardopereira)
- Update RTL14 for 0.9 #550 (ricardopereira)
- Update RTL13 for 0.9 #549 (ricardopereira)
- Update RTL6c for 0.9 #547 (ricardopereira)
- Update RTL5 for 0.9 #546 (ricardopereira)
- Update RTL4 for 0.9 #545 (ricardopereira)
- Update RTL3 for 0.9 #544 (ricardopereira)
- Update RTL2 for 0.9 #543 (ricardopereira)
- Remove pending tests #542 (ricardopereira)
- RTN22 #537 (ricardopereira)
- RSA4c #519 (ricardopereira)
0.8.9 (2016-12-06)
Fixed bugs:
- Connection resume does not fire channel detached #538
Closed issues:
Merged pull requests:
- Fix: connection resume does not fire channel detached #539 (ricardopereira)
- RTC8 #526 (ricardopereira)
- RSA4b #518 (ricardopereira)
0.8.8 (2016-11-22)
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:
- Fix: check if authCallback is running on a background queue #536 (ricardopereira)
- TE6, TD7: Token{Request, Details}::fromJson #533 (tcard)
- Don't read library version from bundle. #532 (tcard)
- Fix timestamp decoding for 32-bit architectures. #528 (tcard)
- Remove
AuthOptions.force
#527 (ricardopereira) - RSA10l #524 (ricardopereira)
- Update RSA10g for 0.9 #523 (ricardopereira)
- Remove RSA10c and RSA10d #522 (ricardopereira)
- Update RSA10j for 0.9 #521 (ricardopereira)
- Update RSA10a for 0.9 #520 (ricardopereira)
- RSA4a #517 (ricardopereira)
- Update RSC15b for 0.9 #516 (ricardopereira)
- Update RSC15a for 0.9 #515 (ricardopereira)
- Update RSC15e for 0.9 #514 (ricardopereira)
- TO3k7 #513 (ricardopereira)
- Fix: when environment option is "production" #512 (ricardopereira)
0.8.7 (2016-10-12)
Merged pull requests:
- Rename AblyRealtime to Ably #490 (ricardopereira)
0.8.6 (2016-10-12)
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 onARTRest
and it shouldn't #27
Merged pull requests:
- RSC15a #509 (ricardopereira)
- TK2d #508 (ricardopereira)
- Fix: should attach if the channel is in the FAILED state #507 (ricardopereira)
- Fix spec failures #506 (ricardopereira)
- Fix legacy tests: account blocked (connection limits exceeded) #505 (ricardopereira)
- RTN17с as a part of 0.9 #504 (EvgenyKarkan)
- RTN17b as a part of 0.9 #502 (EvgenyKarkan)
- RSC15a as a part of 0.9 #501 (EvgenyKarkan)
- RSC15b #499 (EvgenyKarkan)
- Rename variable to fix compile time error. #498 (EvgenyKarkan)
- RSA10k #495 (EvgenyKarkan)
- RSA10g. #494 (EvgenyKarkan)
- RSA10d #493 (EvgenyKarkan)
- RSA10j #492 (EvgenyKarkan)
- RSA9h #491 (EvgenyKarkan)
- Fix RSC11: ignore environment when host is customized #489 (ricardopereira)
- Internal listeners test #488 (ricardopereira)
- Rsa8e #487 (EvgenyKarkan)
- Fixes 2 crashes that occurs during AblySpec tests execution. #486 (EvgenyKarkan)
- RTN2f #484 (ricardopereira)
- RSC7a #483 (ricardopereira)
- Fix issue: should indicate an error if there is no way to renew the token #482 (ricardopereira)
- RTP15d #481 (ricardopereira)
- RTN4e #480 (ricardopereira)
- RTC2 #479 (ricardopereira)
- RTC1d #478 (ricardopereira)
- RSL5b #477 (ricardopereira)
- RSL2b #476 (ricardopereira)
- Fix RSC10: check the "otherwise" case #475 (ricardopereira)
- Fix RSA8c: check authUrl content expectations #474 (ricardopereira)
- Fix RSC11 #473 (ricardopereira)
- Swift snippet using the authCallback. #470 (EvgenyKarkan)
- CI: update CocoaPod to v1.0.1 #467 (ricardopereira)
- RTN11b #419 (ricardopereira)
0.8.5 (2016-08-26)
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:
- Move to DISCONNECTED when received "Socket is not connected" error. #472 (tcard)
- Test suite: fix "account blocked (connection limits exceeded)" #468 (ricardopereira)
- Rtn2g #465 (EvgenyKarkan)
- Rsc7b #464 (EvgenyKarkan)
0.8.4 (2016-08-11)
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)
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)
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:
- Add MessagePack support. #447 (tcard)
- Fix RTN17a, RTN17c, RTN17e. #446 (tcard)
- Fix race condition when calling ARTTestUtil.setupApp. #445 (tcard)
- Several fixes in test suites. #443 (tcard)
- RTN15h #442 (ricardopereira)
- Conform to spec changes at ably/docs#112. #441 (tcard)
- RTN20b #440 (ricardopereira)
- RTN20a #439 (ricardopereira)
- RTN15f #438 (ricardopereira)
- RTN13c #437 (ricardopereira)
- RTN13b #436 (ricardopereira)
- RTN13a #435 (ricardopereira)
- RSA7b4 #434 (ricardopereira)
- RSA7a4 #433 (ricardopereira)
- RSC8b #432 (ricardopereira)
- RTP15f #431 (ricardopereira)
- RTP15c #430 (ricardopereira)
- RTP14 #429 (ricardopereira)
- RTP13 #428 (ricardopereira)
- RTL6d #427 (ricardopereira)
- RTL6f #426 (ricardopereira)
- RTL6h #425 (tcard)
- RTN14e #423 (ricardopereira)
- RTN14d #422 (ricardopereira)
- RTN14c #421 (ricardopereira)
- Test suites: reuse test app. #420 (tcard)
- RSP5 #418 (ricardopereira)
- RSL1h #417 (ricardopereira)
- RSC13 #416 (ricardopereira)
- RSC12 #415 (ricardopereira)
- G4 #414 (ricardopereira)
- RTP10c #413 (ricardopereira)
- RTP9d #412 (ricardopereira)
- RTP8c #411 (ricardopereira)
- RTL12 #410 (ricardopereira)
- RTL6g4 #409 (ricardopereira)
- RTL6g3 #408 (ricardopereira)
- RTL6g2 #407 (ricardopereira)
- RTL6c #406 (ricardopereira)
- Legacy tests: Sandbox ClientOptions #405 (ricardopereira)
- ARTEventListener methods were using the
call
arg name instead ofcallback
#404 (ricardopereira) - Fix RSA7b3 #403 (ricardopereira)
- Fix RSA8f3 #402 (ricardopereira)
- RTN15c4 #401 (ricardopereira)
- RTN15c3 #400 (ricardopereira)
- RTN15c2 #399 (ricardopereira)
- RTN15c1 #398 (ricardopereira)
- RTN15b #396 (ricardopereira)
- RTN16e #395 (ricardopereira)
- RTN16d #394 (ricardopereira)
- RTN16c #393 (ricardopereira)
- RTN16b #392 (ricardopereira)
- RTN16a #391 (ricardopereira)
- RTN17e #390 (ricardopereira)
- RTN17d #389 (ricardopereira)
- RTN17c #388 (ricardopereira)
- RTN17a #387 (ricardopereira)
- Fix RSC15b. #386 (tcard)
- RTN17b #385 (ricardopereira)
- RSC15a #384 (ricardopereira)
- RSC15d #383 (ricardopereira)
- RSC15e #382 (ricardopereira)
- RSC15b #381 (ricardopereira)
- Test suite: renamed MockHTTPExecutor to TestProxyHTTPExecutor #380 (ricardopereira)
- Fix Warnings: selectors migration #379 (ricardopereira)
- RSL1g4 #362 (ricardopereira)
- RSL1g3 #361 (ricardopereira)
- RSA8f1 #348 (ricardopereira)
0.8.1 (2016-04-08)
Merged pull requests:
0.8.1-swift2.1 (2016-04-08)
0.8-swift2.1 (2016-04-08)
Merged pull requests:
- Remove Ably.podspec. #377 (tcard)
- Rearrange types relationships to avoid ambiguities. #376 (tcard)
- RSP3a2 #365 (ricardopereira)
- RSA12b #355 (ricardopereira)
- RSA8f4 #351 (ricardopereira)
- RSA8f3 #350 (ricardopereira)
- RSA8f2 #349 (ricardopereira)
0.8.0 (2016-04-06)
Implemented enhancements:
- Core:
ARTErrorInfo
should be related withNSError
#126
Closed issues:
- Update README and docs examples to conform commit 897ce0f #304
- RealtimePresence.get shouldn't wrap RestPresence.get. #271
Merged pull requests:
- Release 0.8.0. #375 (tcard)
- Fix RSP4b1 #374 (ricardopereira)
- Swift 2.2 #373 (ricardopereira)
- RTP8a, RTL7f: attach first to avoid race condition. #372 (tcard)
- Fix pending tests. #371 (tcard)
- RSP4b3 #370 (ricardopereira)
- RSP4b2 #369 (ricardopereira)
- RSP4b1 #368 (ricardopereira)
- RSP4a #367 (ricardopereira)
- RSP3a3 #366 (ricardopereira)
- RSP3a1 #364 (ricardopereira)
- RSL6b #363 (ricardopereira)
- RSL1g2 #360 (ricardopereira)
- RSL1g1 #359 (ricardopereira)
- RSL1f1 #358 (ricardopereira)
- RTN19 #357 (ricardopereira)
- RSA7b3 #356 (ricardopereira)
- RSA12a #354 (ricardopereira)
- RSA15c #353 (ricardopereira)
- RSA8d #347 (ricardopereira)
- RSA8c2 #346 (ricardopereira)
- RTN19b #344 (ricardopereira)
- RTN19a #343 (ricardopereira)
- RTP12c #342 (ricardopereira)
- RTP12b #341 (ricardopereira)
- RTP12a #340 (ricardopereira)
- RTP11c1 #339 (ricardopereira)
- RTP10e #338 (ricardopereira)
- RTP10b #337 (ricardopereira)
- RTP10a #336 (ricardopereira)
- RTP9e #335 (ricardopereira)
- RTP9c #334 (ricardopereira)
- RTP9b #333 (ricardopereira)
- RTP9a #332 (ricardopereira)
- RTP8i #331 (ricardopereira)
- RTP8h #330 (ricardopereira)
- RTP8g #329 (ricardopereira)
- RTP8f #328 (ricardopereira)
- RTP8e #327 (ricardopereira)
- RTP8d #326 (ricardopereira)
- RTP8b #325 (ricardopereira)
- RTP8a #324 (ricardopereira)
- RTP7b #323 (ricardopereira)
- RTP7a #322 (ricardopereira)
- RTP6c #321 (ricardopereira)
- RTP6b #320 (ricardopereira)
- RTP6a #319 (ricardopereira)
- RTP16c #318 (ricardopereira)
- RTP16b #317 (ricardopereira)
- RTP16a #316 (ricardopereira)
- RTP5b #315 (ricardopereira)
- RTP5a #314 (ricardopereira)
- RTP4 #313 (ricardopereira)
- RTP3 #312 (ricardopereira)
- RTP2 #311 (ricardopereira)
- README: Replace NSError with ARTErrorInfo #310 (ricardopereira)
- RTP11b #309 (ricardopereira)
0.8.0-beta.3 (2016-03-18)
Merged pull requests:
- RSP3a #308 (ricardopereira)
- AblyRealtime pod #307 (ricardopereira)
- Fix: expect timestamp with higher delta #301 (ricardopereira)
- Fix RealtimePresence.get #299 (ricardopereira)
- RTP11a #296 (ricardopereira)
0.8.0-beta.2 (2016-03-17)
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:
- Test suite: avoid calling the
fulfill
after the wait context has ended #303 (ricardopereira) - Enhance RTL7f: speed up #302 (ricardopereira)
- Legacy tests: speed up #300 (ricardopereira)
- Fix typo in ARTDataQuery.m #297 (stannedelchev)
- Fix RTL5b #295 (ricardopereira)
- Use Ably pod with descentralised source #293 (ricardopereira)
- Fix uncaught HTTP exception #289 (ricardopereira)
- RTP15e #288 (ricardopereira)
- Test suite: use log level "Info" #287 (ricardopereira)
- Fix RTL1 #286 (ricardopereira)
- Standardise on initialized #284 (SimonWoolf)
- RTP1 #282 (ricardopereira)
- Renamed last cb: argument to callback: #281 (ricardopereira)
- Project: add Realtime Presence file to Spec #280 (ricardopereira)
- RTS3 #279 (ricardopereira)
- Remove pending from RestClientStats #278 (ricardopereira)
0.8.0-beta.1 (2016-03-04)
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:
- Fix warnings #277 (ricardopereira)
- Travis enhancements #276 (ricardopereira)
- Remove block typedefs, use block syntax explicitly. #275 (tcard)
- Rename all cb: to callback: #274 (tcard)
- Use ErrorInfo instead of internal ARTStatus in ping callback. #273 (tcard)
- Fix RTL7e #272 (ricardopereira)
- Travis: fix stalled build #270 (ricardopereira)
- Project rename: ably to Ably #269 (ricardopereira)
- Fix RSN4: releaseChannel #268 (ricardopereira)
- Fix RSC1: initWithKey test #266 (ricardopereira)
- Xcode 7.2 (use xcodebuild) #265 (ricardopereira)
- Test RTL5*. #262 (tcard)
- Test RSA9h. #261 (tcard)
- Fix RTN14b test. #260 (tcard)
- Fix RTN10c test. #259 (tcard)
- Fix RTL6g1 test. #258 (tcard)
- Remove 'pending' from RTN12a, RTN12b. #257 (tcard)
- Remove 'pending' from RSC2 test. #256 (tcard)
- Fix RSC1: Rest constructor should accept a token. #255 (tcard)
- Fix RTN18b: channels detach on suspended connection. #254 (tcard)
- Fix RTL7d: error on decoding message. #253 (tcard)
- Fix RTL7c: channel.subscribe fails when channel is FAILED. #252 (tcard)
- RTN15e #251 (ricardopereira)
- RTN15g #250 (ricardopereira)
- RTN15d #249 (ricardopereira)
- Uniformize stats and history interfaces. #248 (tcard)
- TokenParams.timestamp: use current at getter, not at constructor. #247 (tcard)
- RTL10b: Implement untilAttach for RealtimeChannel.history. #246 (tcard)
- Connection EventEmitter: use enum instead of NSNumber as event type. #245 (tcard)
- RTN15a #244 (ricardopereira)
- Test suite: fix warning about duplicated class references #243 (ricardopereira)
- History request without a query shouldn't throw errors #242 (ricardopereira)
- RTL2c #241 (ricardopereira)
- RTL2b #240 (ricardopereira)
- RTL2a #239 (ricardopereira)
- Test suite enhancements #238 (ricardopereira)
- RTL10d #237 (ricardopereira)
- Force full channel release. #236 (tcard)
- RTL10c #235 (ricardopereira)
- RTL10b #233 (ricardopereira)
- Fix attach callbacks, and add to RealtimeChannel.subscribe. #232 (tcard)
- Adjust Crypto, CipherParams and ChannelOptions to spec. #231 (tcard)
- Fix RTN10b. #230 (tcard)
- RTL10a #229 (ricardopereira)
- Fix RTN7c: notify publish callbacks of broken connection. #228 (tcard)
- Remove 'pending' from RTL6e1. #227 (tcard)
- Fix RTL4f. #226 (tcard)
- Fix RTL4a. #224 (tcard)
- Fix RTL3b and RTL4b. #223 (tcard)
- Remove 'pending' from RSN4 test. #222 (tcard)
- Fix RTL3a. #221 (tcard)
- RTL8 #219 (ricardopereira)
- Fix message encoding and encryption. #217 (tcard)
- Swift Readme Examples: use Quick #216 (ricardopereira)
- Gitignore: test report #215 (ricardopereira)
- Carthage support #214 (ricardopereira)
- Pod support #213 (ricardopereira)
- RTL7f #212 (ricardopereira)
- RTL7e #211 (ricardopereira)
- Pods: Quick and Nimble update #210 (ricardopereira)
- RTL7d #209 (ricardopereira)
- RTL7c #208 (ricardopereira)
- RTL7b #207 (ricardopereira)
- RTL7a #206 (ricardopereira)
- RTL6g #205 (ricardopereira)
- General adjustment to API spec. #204 (tcard)
- TG4: PaginatedResult.next calls back with nil if there's no next. #203 (tcard)
- Minor changes to adjust to API spec. #202 (tcard)
- Separate BaseMessage private parts. #201 (tcard)
- Remove 'Auth' prefix from TokenDetails, TokenRequest, TokenParams. #200 (tcard)
- Fix RTL4b: use client.channels.get. #199 (tcard)
- Fix RTL3b #198 (ricardopereira)
- Product bundle consistency #197 (ricardopereira)
- RTL6e #196 (ricardopereira)
- RTL6i #194 (ricardopereira)
- RTL6a #193 (ricardopereira)
- RTL4f #192 (ricardopereira)
- RTL4e #190 (ricardopereira)
- RTL4c #188 (ricardopereira)
- RTL4b #187 (ricardopereira)
- RTL4a #186 (ricardopereira)
- Adjust {Rest, Realtime}.channels API to spec. #185 (tcard)
- RTL3b #184 (ricardopereira)
- RTL3a #182 (ricardopereira)
- RTL1 #180 (ricardopereira)
- Rewrite ARTEventEmitter per the spec and adjust Connection. #179 (tcard)
- RTS2 #178 (ricardopereira)
- Test suite enhancements #177 (ricardopereira)
- Swift test suite: renamed files with inconsistent names #176 (ricardopereira)
- RTN18c #175 (ricardopereira)
- RTN18b #174 (ricardopereira)
- Adjust stats API to spec. #173 (tcard)
- Mark "RestClient initializer should accept a token" as pending. #172 (tcard)
- Rename payload -> data, refactor message data encoding. #171 (tcard)
- Separate ARTProtocolMessage private parts. #170 (tcard)
- Test suite websocket #169 (ricardopereira)
- RTN18a #168 (ricardopereira)
- RTN14b #167 (ricardopereira)
- Fix compiler warnings. #166 (tcard)
- RTN14a #165 (ricardopereira)
- RSC10, RSC14c: Adapt to new spec, 40140 -> [40140, 40150). #164 (tcard)
- RTN12c #163 (ricardopereira)
- RTN12b #162 (ricardopereira)
- RTN12a #161 (ricardopereira)
- RTN10c #160 (ricardopereira)
- RTN10b #159 (ricardopereira)
- RSC1: Add token string constructor. #158 (tcard)
- Make ARTPaginatedResult generic. #157 (tcard)
- Remove bad RTN4e test, merge with RTN4d. #156 (tcard)
- RTN10a #155 (ricardopereira)
- RTN7c #154 (ricardopereira)
- RTN7b #153 (ricardopereira)
- Xcode Project enhancements #152 (ricardopereira)
- Uncomment RSN4 test that now works. #151 (tcard)
- Explicitly test RSN1. #150 (tcard)
- Actually test RSA8c1. #149 (tcard)
- Separate RSA3a test in HTTP and HTTPS. #148 (tcard)
- RTL4: Fix test that was doing nothing. #147 (tcard)
- RSL1c: check that it happens in a single request. #146 (tcard)
- Test that getting the same channel name gives the same instance. #145 (tcard)
- Temporarily disable RestClientStats tests. #144 (tcard)
- Properly annotate ARTConnection.id, ARTConnection.key as optional. #141 (tcard)
- waitUntil instead of toEventually in RTN9b test. #139 (tcard)
- Don't use if-let to unwrap when it is sure that it will succeed. #138 (tcard)
- Replace ?-chains with force-unwraps. #137 (tcard)
- Use guard-let instead of if-let, ?-chaining and force-unwrapping. #136 (tcard)
- Scan: test suite runner with Travis formatter #135 (ricardopereira)
- RTN7a #125 (ricardopereira)
- Realtime: test utilities enhancements #124 (ricardopereira)
- Auth.authorise: store TokenParams and AuthOptions #123 (ricardopereira)
- Payload data either as a JSON Object or Array #122 (ricardopereira)
- Meta: README & LICENSE #119 (ricardopereira)
- RTN9 #101 (ricardopereira)
- RTN8 #100 (ricardopereira)
- RTN6 #99 (ricardopereira)
- RTN5 #98 (ricardopereira)
- RSL4 #96 (ricardopereira)
- RSA10 #94 (ricardopereira)
- Query param:
access\_token
toaccessToken
#93 (ricardopereira) - RSA9 #92 (ricardopereira)
- RSA8b #91 (ricardopereira)
- RSA8a #90 (ricardopereira)
- RSA15a #89 (ricardopereira)
- RSA3c #87 (ricardopereira)
- ObjC tests: Questionable API usage errors #86 (ricardopereira)
- Get Travis CI passing consistently #85 (ricardopereira)
- Swift tests: Realtime #83 (ricardopereira)
- Swift tests: RestClient #82 (ricardopereira)
- Swift tests: Auth #81 (ricardopereira)
- Travis: XCTool #80 (ricardopereira)
- ObjC tests: ARTRestChannelPublishTest #77 (ricardopereira)
- ObjC tests: TimeForwards and TimeBackwards #76 (ricardopereira)
- ObjC tests: Review #75 (ricardopereira)
- Swift tests: Review #74 (ricardopereira)
- Swift tests: RSC14c #72 (ricardopereira)
- Swift tests: RSC14 #71 (ricardopereira)
- Swift tests: RSC9 #70 (ricardopereira)
- Travis: Freeze dependencies #67 (ricardopereira)
- ObjC tests: ARTRealtimeAttachTest #53 (ricardopereira)
- Travis #52 (ricardopereira)
- Presence#history wasn't working (infinite recursion) #51 (ricardopereira)
- ObjC tests: fixed bad response #50 (ricardopereira)
- ObjC tests update to use the latest API #49 (ricardopereira)
- RTN4 #46 (ricardopereira)
- RTN3 #45 (ricardopereira)
- Connection proxy #43 (ricardopereira)
- RTC7 #42 (ricardopereira)
- RTC6 #40 (ricardopereira)
- RTC5 #39 (ricardopereira)
- RTC4, RTC4a #38 (ricardopereira)
- Timestamp fix #37 (ricardopereira)
- RTC1 done #35 (ricardopereira)
- Realtime transport error info #34 (ricardopereira)
- Realtime channels fixes #33 (ricardopereira)
- RTC1a, RTC1b, RTC1c #32 (ricardopereira)
- Realtime transport auth fixed (RTC1) #31 (ricardopereira)
- Client manage token requests #30 (ricardopereira)
- Auth.canRequestToken and Auth.validate revision #29 (ricardopereira)
- Auth Token specs #26 (ricardopereira)
- Converted tests to Swift 2 #25 (ricardopereira)
- Merged Yavor work, refactoring and RSA1 tests #23 (ricardopereira)
- Specs for ARTStats #19 (fealebenpae)
- Add spec for RestClient#time (RSC16) #18 (fealebenpae)
- RestClient#stats #17 (fealebenpae)
- BDD specs #16 (fealebenpae)
- Presence Map, Fallback and Exceptions #15 (thevixac)
0.7.0 (2015-04-29)
Merged pull requests:
- Token Auth and cryptography fixes and renaming #9 (thevixac)
- code examples in the readme #7 (thevixac)
- Ably ready for importing. #5 (thevixac)
* This Changelog was automatically generated by github_changelog_generator