{"action":"created","comment":{"url":"https://api.github.com/repos/ably/ably-ios/pulls/comments/94224989","pull_request_review_id":14752243,"id":94224989,"diff_hunk":"@@ -1045,6 +1045,49 @@ class RealtimeClientPresence: QuickSpec {\n \n                 }\n \n+                // RTP2c\n+                it(\"all presence messages from a SYNC must also be compared for newness in the same way as they would from a PRESENCE\") {\n+                    let options = AblyTests.commonAppSetup()\n+\n+                    var clientMembers: ARTRealtime!\n+                    defer { clientMembers.dispose(); clientMembers.close() }\n+                    waitUntil(timeout: testTimeout) { done in\n+                        clientMembers = AblyTests.addMembersSequentiallyToChannel(\"foo\", members: 120, options: options) {\n+                            done()\n+                            }.first\n+                    }\n+\n+                    let client = AblyTests.newRealtime(options)\n+                    defer { client.dispose(); client.close() }\n+                    let channel = client.channels.get(\"foo\")\n+\n+                    guard let transport = client.transport as? TestProxyTransport else {\n+                        fail(\"TestProxyTransport is not set\"); return\n+                    }\n+\n+                    waitUntil(timeout: testTimeout) { done in\n+                        let partialDone = AblyTests.splitDone(2, done: done)\n+                        transport.beforeProcessingReceivedMessage = { protocolMessage in\n+                            if protocolMessage.action == .Sync {\n+                                let injectLeave = ARTPresenceMessage()\n+                                injectLeave.action = .Leave\n+                                injectLeave.clientId = \"user110\"","path":"Spec/RealtimeClientPresence.swift","position":190,"original_position":30,"commit_id":"c50e35e1f7570992d259b2588ca982e8c3227403","original_commit_id":"210b24b97c6d4219cc9061970e2fc2e080a90dbe","user":{"login":"mattheworiordan","id":43789,"avatar_url":"https://avatars.githubusercontent.com/u/43789?v=3","gravatar_id":"","url":"https://api.github.com/users/mattheworiordan","html_url":"https://github.com/mattheworiordan","followers_url":"https://api.github.com/users/mattheworiordan/followers","following_url":"https://api.github.com/users/mattheworiordan/following{/other_user}","gists_url":"https://api.github.com/users/mattheworiordan/gists{/gist_id}","starred_url":"https://api.github.com/users/mattheworiordan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattheworiordan/subscriptions","organizations_url":"https://api.github.com/users/mattheworiordan/orgs","repos_url":"https://api.github.com/users/mattheworiordan/repos","events_url":"https://api.github.com/users/mattheworiordan/events{/privacy}","received_events_url":"https://api.github.com/users/mattheworiordan/received_events","type":"User","site_admin":false},"body":"I am not sure I follow this.  If the PresenceMessage has no `connectionId`, then how will it  be compared against the members added by `addMembersSequentiallyToChannel`.  Surely you need to make sure at least that the `connectionId` is the same.  Secondly, it would be good to test both scenarios i.e. messages that have effectively arrived before the SYNC (and thus discarded) and those that arrive after the SYNC (and thus used)","created_at":"2016-12-30T12:46:42Z","updated_at":"2016-12-30T12:55:31Z","html_url":"https://github.com/ably/ably-ios/pull/563#discussion_r94224989","pull_request_url":"https://api.github.com/repos/ably/ably-ios/pulls/563","_links":{"self":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/comments/94224989"},"html":{"href":"https://github.com/ably/ably-ios/pull/563#discussion_r94224989"},"pull_request":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/563"}}},"pull_request":{"url":"https://api.github.com/repos/ably/ably-ios/pulls/563","id":99580778,"html_url":"https://github.com/ably/ably-ios/pull/563","diff_url":"https://github.com/ably/ably-ios/pull/563.diff","patch_url":"https://github.com/ably/ably-ios/pull/563.patch","issue_url":"https://api.github.com/repos/ably/ably-ios/issues/563","number":563,"state":"open","locked":false,"title":"Update RTP2 for 0.9","user":{"login":"ricardopereira","id":3541185,"avatar_url":"https://avatars.githubusercontent.com/u/3541185?v=3","gravatar_id":"","url":"https://api.github.com/users/ricardopereira","html_url":"https://github.com/ricardopereira","followers_url":"https://api.github.com/users/ricardopereira/followers","following_url":"https://api.github.com/users/ricardopereira/following{/other_user}","gists_url":"https://api.github.com/users/ricardopereira/gists{/gist_id}","starred_url":"https://api.github.com/users/ricardopereira/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ricardopereira/subscriptions","organizations_url":"https://api.github.com/users/ricardopereira/orgs","repos_url":"https://api.github.com/users/ricardopereira/repos","events_url":"https://api.github.com/users/ricardopereira/events{/privacy}","received_events_url":"https://api.github.com/users/ricardopereira/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-12-28T18:51:30Z","updated_at":"2016-12-30T12:55:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5c1ad711323ecdff40f130c4f50e31323f25a475","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/ably/ably-ios/pulls/563/commits","review_comments_url":"https://api.github.com/repos/ably/ably-ios/pulls/563/comments","review_comment_url":"https://api.github.com/repos/ably/ably-ios/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ably/ably-ios/issues/563/comments","statuses_url":"https://api.github.com/repos/ably/ably-ios/statuses/c50e35e1f7570992d259b2588ca982e8c3227403","head":{"label":"ably:rtp2","ref":"rtp2","sha":"c50e35e1f7570992d259b2588ca982e8c3227403","user":{"login":"ably","id":1859245,"avatar_url":"https://avatars.githubusercontent.com/u/1859245?v=3","gravatar_id":"","url":"https://api.github.com/users/ably","html_url":"https://github.com/ably","followers_url":"https://api.github.com/users/ably/followers","following_url":"https://api.github.com/users/ably/following{/other_user}","gists_url":"https://api.github.com/users/ably/gists{/gist_id}","starred_url":"https://api.github.com/users/ably/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ably/subscriptions","organizations_url":"https://api.github.com/users/ably/orgs","repos_url":"https://api.github.com/users/ably/repos","events_url":"https://api.github.com/users/ably/events{/privacy}","received_events_url":"https://api.github.com/users/ably/received_events","type":"Organization","site_admin":false},"repo":{"id":27377471,"name":"ably-ios","full_name":"ably/ably-ios","owner":{"login":"ably","id":1859245,"avatar_url":"https://avatars.githubusercontent.com/u/1859245?v=3","gravatar_id":"","url":"https://api.github.com/users/ably","html_url":"https://github.com/ably","followers_url":"https://api.github.com/users/ably/followers","following_url":"https://api.github.com/users/ably/following{/other_user}","gists_url":"https://api.github.com/users/ably/gists{/gist_id}","starred_url":"https://api.github.com/users/ably/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ably/subscriptions","organizations_url":"https://api.github.com/users/ably/orgs","repos_url":"https://api.github.com/users/ably/repos","events_url":"https://api.github.com/users/ably/events{/privacy}","received_events_url":"https://api.github.com/users/ably/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ably/ably-ios","description":"iOS Objective-C client for Ably real-time messaging service","fork":false,"url":"https://api.github.com/repos/ably/ably-ios","forks_url":"https://api.github.com/repos/ably/ably-ios/forks","keys_url":"https://api.github.com/repos/ably/ably-ios/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ably/ably-ios/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ably/ably-ios/teams","hooks_url":"https://api.github.com/repos/ably/ably-ios/hooks","issue_events_url":"https://api.github.com/repos/ably/ably-ios/issues/events{/number}","events_url":"https://api.github.com/repos/ably/ably-ios/events","assignees_url":"https://api.github.com/repos/ably/ably-ios/assignees{/user}","branches_url":"https://api.github.com/repos/ably/ably-ios/branches{/branch}","tags_url":"https://api.github.com/repos/ably/ably-ios/tags","blobs_url":"https://api.github.com/repos/ably/ably-ios/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ably/ably-ios/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ably/ably-ios/git/refs{/sha}","trees_url":"https://api.github.com/repos/ably/ably-ios/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ably/ably-ios/statuses/{sha}","languages_url":"https://api.github.com/repos/ably/ably-ios/languages","stargazers_url":"https://api.github.com/repos/ably/ably-ios/stargazers","contributors_url":"https://api.github.com/repos/ably/ably-ios/contributors","subscribers_url":"https://api.github.com/repos/ably/ably-ios/subscribers","subscription_url":"https://api.github.com/repos/ably/ably-ios/subscription","commits_url":"https://api.github.com/repos/ably/ably-ios/commits{/sha}","git_commits_url":"https://api.github.com/repos/ably/ably-ios/git/commits{/sha}","comments_url":"https://api.github.com/repos/ably/ably-ios/comments{/number}","issue_comment_url":"https://api.github.com/repos/ably/ably-ios/issues/comments{/number}","contents_url":"https://api.github.com/repos/ably/ably-ios/contents/{+path}","compare_url":"https://api.github.com/repos/ably/ably-ios/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ably/ably-ios/merges","archive_url":"https://api.github.com/repos/ably/ably-ios/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ably/ably-ios/downloads","issues_url":"https://api.github.com/repos/ably/ably-ios/issues{/number}","pulls_url":"https://api.github.com/repos/ably/ably-ios/pulls{/number}","milestones_url":"https://api.github.com/repos/ably/ably-ios/milestones{/number}","notifications_url":"https://api.github.com/repos/ably/ably-ios/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ably/ably-ios/labels{/name}","releases_url":"https://api.github.com/repos/ably/ably-ios/releases{/id}","deployments_url":"https://api.github.com/repos/ably/ably-ios/deployments","created_at":"2014-12-01T12:00:37Z","updated_at":"2016-11-22T14:15:26Z","pushed_at":"2016-12-28T18:51:30Z","git_url":"git://github.com/ably/ably-ios.git","ssh_url":"git@github.com:ably/ably-ios.git","clone_url":"https://github.com/ably/ably-ios.git","svn_url":"https://github.com/ably/ably-ios","homepage":null,"size":2912,"stargazers_count":5,"watchers_count":5,"language":"Swift","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":9,"mirror_url":null,"open_issues_count":22,"forks":9,"open_issues":22,"watchers":5,"default_branch":"master"}},"base":{"label":"ably:0-9-master","ref":"0-9-master","sha":"a9dc94c85c519ae682dccdf4d11224c3ecedaed9","user":{"login":"ably","id":1859245,"avatar_url":"https://avatars.githubusercontent.com/u/1859245?v=3","gravatar_id":"","url":"https://api.github.com/users/ably","html_url":"https://github.com/ably","followers_url":"https://api.github.com/users/ably/followers","following_url":"https://api.github.com/users/ably/following{/other_user}","gists_url":"https://api.github.com/users/ably/gists{/gist_id}","starred_url":"https://api.github.com/users/ably/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ably/subscriptions","organizations_url":"https://api.github.com/users/ably/orgs","repos_url":"https://api.github.com/users/ably/repos","events_url":"https://api.github.com/users/ably/events{/privacy}","received_events_url":"https://api.github.com/users/ably/received_events","type":"Organization","site_admin":false},"repo":{"id":27377471,"name":"ably-ios","full_name":"ably/ably-ios","owner":{"login":"ably","id":1859245,"avatar_url":"https://avatars.githubusercontent.com/u/1859245?v=3","gravatar_id":"","url":"https://api.github.com/users/ably","html_url":"https://github.com/ably","followers_url":"https://api.github.com/users/ably/followers","following_url":"https://api.github.com/users/ably/following{/other_user}","gists_url":"https://api.github.com/users/ably/gists{/gist_id}","starred_url":"https://api.github.com/users/ably/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ably/subscriptions","organizations_url":"https://api.github.com/users/ably/orgs","repos_url":"https://api.github.com/users/ably/repos","events_url":"https://api.github.com/users/ably/events{/privacy}","received_events_url":"https://api.github.com/users/ably/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ably/ably-ios","description":"iOS Objective-C client for Ably real-time messaging service","fork":false,"url":"https://api.github.com/repos/ably/ably-ios","forks_url":"https://api.github.com/repos/ably/ably-ios/forks","keys_url":"https://api.github.com/repos/ably/ably-ios/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ably/ably-ios/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ably/ably-ios/teams","hooks_url":"https://api.github.com/repos/ably/ably-ios/hooks","issue_events_url":"https://api.github.com/repos/ably/ably-ios/issues/events{/number}","events_url":"https://api.github.com/repos/ably/ably-ios/events","assignees_url":"https://api.github.com/repos/ably/ably-ios/assignees{/user}","branches_url":"https://api.github.com/repos/ably/ably-ios/branches{/branch}","tags_url":"https://api.github.com/repos/ably/ably-ios/tags","blobs_url":"https://api.github.com/repos/ably/ably-ios/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ably/ably-ios/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ably/ably-ios/git/refs{/sha}","trees_url":"https://api.github.com/repos/ably/ably-ios/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ably/ably-ios/statuses/{sha}","languages_url":"https://api.github.com/repos/ably/ably-ios/languages","stargazers_url":"https://api.github.com/repos/ably/ably-ios/stargazers","contributors_url":"https://api.github.com/repos/ably/ably-ios/contributors","subscribers_url":"https://api.github.com/repos/ably/ably-ios/subscribers","subscription_url":"https://api.github.com/repos/ably/ably-ios/subscription","commits_url":"https://api.github.com/repos/ably/ably-ios/commits{/sha}","git_commits_url":"https://api.github.com/repos/ably/ably-ios/git/commits{/sha}","comments_url":"https://api.github.com/repos/ably/ably-ios/comments{/number}","issue_comment_url":"https://api.github.com/repos/ably/ably-ios/issues/comments{/number}","contents_url":"https://api.github.com/repos/ably/ably-ios/contents/{+path}","compare_url":"https://api.github.com/repos/ably/ably-ios/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ably/ably-ios/merges","archive_url":"https://api.github.com/repos/ably/ably-ios/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ably/ably-ios/downloads","issues_url":"https://api.github.com/repos/ably/ably-ios/issues{/number}","pulls_url":"https://api.github.com/repos/ably/ably-ios/pulls{/number}","milestones_url":"https://api.github.com/repos/ably/ably-ios/milestones{/number}","notifications_url":"https://api.github.com/repos/ably/ably-ios/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ably/ably-ios/labels{/name}","releases_url":"https://api.github.com/repos/ably/ably-ios/releases{/id}","deployments_url":"https://api.github.com/repos/ably/ably-ios/deployments","created_at":"2014-12-01T12:00:37Z","updated_at":"2016-11-22T14:15:26Z","pushed_at":"2016-12-28T18:51:30Z","git_url":"git://github.com/ably/ably-ios.git","ssh_url":"git@github.com:ably/ably-ios.git","clone_url":"https://github.com/ably/ably-ios.git","svn_url":"https://github.com/ably/ably-ios","homepage":null,"size":2912,"stargazers_count":5,"watchers_count":5,"language":"Swift","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":9,"mirror_url":null,"open_issues_count":22,"forks":9,"open_issues":22,"watchers":5,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/563"},"html":{"href":"https://github.com/ably/ably-ios/pull/563"},"issue":{"href":"https://api.github.com/repos/ably/ably-ios/issues/563"},"comments":{"href":"https://api.github.com/repos/ably/ably-ios/issues/563/comments"},"review_comments":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/563/comments"},"review_comment":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ably/ably-ios/pulls/563/commits"},"statuses":{"href":"https://api.github.com/repos/ably/ably-ios/statuses/c50e35e1f7570992d259b2588ca982e8c3227403"}}}}
{"actor":{"display_login":"mattheworiordan"}}