-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Presence Map, Fallback and Exceptions #15
Conversation
ably 0.8 spec nearly completed artrest constructed with error cb works, needs cleaning cleanup history test test for artrest initwithkey works realtime conneciton state tests realtime ping and close testAppStats works half way through migrating initWithOptions artrealtime realtimeWithOptions works crypto tests testconnectstates tests tests tests artrealtime channels connect tests artrest and artrealtime throw exceptions with bad options exceptions are thrown, token is reissued presence exceptions presenceEnterClient starting artstatus refactor status moved to an object renaming cleanup cleanup fallback implemented presenceMap and syncing 7 reds left token expiry bug fix untilattach test presence unsubscribe tests artdefaults, and bad recovery error message set. one more red presencesync works fixed a few tests testClientIdPreserved tests presence tests cleanup cleanup cleanup clean
@thevixac I have reviewed most of this, although not looked at the test code in detail. However, this looks very good, really great progress. Is the spreadsheet of features / tests up to date? I have sent quite a bit of feedback in your commits directly |
@mattheworiordan , yes the spreadsheet is currently up to date. Will work on the feedback next. |
Ok, I'll wait for your review of the feedback and lets take it from there. |
Presence Map, Fallback and Exceptions
- This failed in RTP9a because it sometimes ends but the ACK/NACK of the last sent presence message has not arrived yet, it means the callback is pended. The callback is called when the connection closes (test ends), a "ARTErrorInfo with code 0, message: connection broken before receiving publishing acknowledgment." happens and it will crash because the callback is nil. EXC_BAD_ACCESS (code=1, address=0x10) in ARTRealtimeChannel.m:335 Thread 3 Queue : io.ably.tests (serial) #0 0x000000012186c6b4 in __47-[ARTRealtimeChannel publishPresence:callback:]_block_invoke.164 at /<redacted>/ably-cocoa/Source/ARTRealtimeChannel.m:335 #1 0x000000012186ecdd in __43-[ARTRealtimeChannel sendMessage:callback:]_block_invoke at /<redacted>/ably-cocoa/Source/ARTRealtimeChannel.m:450 #2 0x00000001218be38e in __22-[ARTEventEmitter on:]_block_invoke at /<redacted>/ably-cocoa/Source/ARTEventEmitter.m:209 #3 0x00000001083ff632 in -[__NSObserver _doit:] () #4 0x00000001094827bc in __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ () #5 0x0000000109481c3f in _CFXRegistrationPost () #6 0x0000000109481983 in ___CFXNotificationPost_block_invoke () #7 0x00000001095657c2 in -[_CFXNotificationRegistrar find:object:observer:enumerator:] () #8 0x00000001094812d1 in _CFXNotificationPost () #9 0x00000001083ffddb in -[NSNotificationCenter postNotificationName:object:userInfo:] () #10 0x00000001218bf843 in -[ARTEventEmitter emit:with:] at /<redacted>/ably-cocoa/Source/ARTEventEmitter.m:275 #11 0x0000000121915222 in -[ARTRealtime transition:withErrorInfo:] at /<redacted>/ably-cocoa/Source/ARTRealtime.m:429 #12 0x0000000121914c0a in -[ARTRealtime transition:] at /<redacted>/ably-cocoa/Source/ARTRealtime.m:412 #13 0x000000012191b755 in -[ARTRealtime onClosed] at /<redacted>/ably-cocoa/Source/ARTRealtime.m:768 #14 0x0000000121928933 in -[ARTRealtime realtimeTransport:didReceiveMessage:] at /<redacted>/ably-cocoa/Source/ARTRealtime.m:1392 #15 0x00000001218c4bef in -[ARTWebSocketTransport receive:] at /<redacted>/ably-cocoa/Source/ARTWebSocketTransport.m:109 #16 0x00000001218c4cbe in -[ARTWebSocketTransport receiveWithData:] at /<redacted>/ably-cocoa/Source/ARTWebSocketTransport.m:114 #17 0x00000001218c7c44 in -[ARTWebSocketTransport webSocketMessageData:] at /<redacted>/ably-cocoa/Source/ARTWebSocketTransport.m:367 #18 0x00000001218c77a0 in -[ARTWebSocketTransport webSocket:didReceiveMessage:] at /<redacted>/ably-cocoa/Source/ARTWebSocketTransport.m:349 #19 0x0000000121bf06c9 in __43-[SRWebSocket _handleFrameWithData:opCode:]_block_invoke.239 () #20 0x000000010b3e2ccf in _dispatch_call_block_and_release () #21 0x000000010b3e3d02 in _dispatch_client_callout () #22 0x000000010b3ea720 in _dispatch_lane_serial_drain () #23 0x000000010b3eb261 in _dispatch_lane_invoke () #24 0x000000010b3f3fcb in _dispatch_workloop_worker_thread () #25 0x000000010bb12611 in _pthread_wqthread () #26 0x000000010bb123fd in start_wqthread ()
No description provided.