{"action":"created","issue":{"url":"https://api.github.com/repos/pouchdb/pouchdb/issues/3495","labels_url":"https://api.github.com/repos/pouchdb/pouchdb/issues/3495/labels{/name}","comments_url":"https://api.github.com/repos/pouchdb/pouchdb/issues/3495/comments","events_url":"https://api.github.com/repos/pouchdb/pouchdb/issues/3495/events","html_url":"https://github.com/pouchdb/pouchdb/pull/3495","id":56378774,"number":3495,"title":"[Don't Merge] please review: skip tests / assertions for Sync Gateway","user":{"login":"jchris","id":253,"avatar_url":"https://avatars.githubusercontent.com/u/253?v=3","gravatar_id":"","url":"https://api.github.com/users/jchris","html_url":"https://github.com/jchris","followers_url":"https://api.github.com/users/jchris/followers","following_url":"https://api.github.com/users/jchris/following{/other_user}","gists_url":"https://api.github.com/users/jchris/gists{/gist_id}","starred_url":"https://api.github.com/users/jchris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jchris/subscriptions","organizations_url":"https://api.github.com/users/jchris/orgs","repos_url":"https://api.github.com/users/jchris/repos","events_url":"https://api.github.com/users/jchris/events{/privacy}","received_events_url":"https://api.github.com/users/jchris/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-02-03T13:42:41Z","updated_at":"2015-02-05T19:29:36Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/pouchdb/pouchdb/pulls/3495","html_url":"https://github.com/pouchdb/pouchdb/pull/3495","diff_url":"https://github.com/pouchdb/pouchdb/pull/3495.diff","patch_url":"https://github.com/pouchdb/pouchdb/pull/3495.patch"},"body":"With these patches, `test.replication.js` runs to completion against Sync Gateway. This is more of a scoping exercise about what it will take to get to full compatibility. Note that this requires https://github.com/pouchdb/pouchdb/pull/3493 to be merged before it will pass.\r\n\r\nThe issues that jump out most:\r\n\r\n* SG allocates sequence numbers for non-document changes (usually access control changes) which don't change sync behavior but do mess with assertions.\r\n* In certain cases the PouchDB replicator doesn't think that it's completed, leading to tests that time out.\r\n* SG doesn't have a replicator, making the `http-local` and `http-http` tests a little odd. We might add a replicator, in which case they'll make more sense.\r\n* SG doesn't support `open_revs=all` which doesn't matter for sync, but a lot of the assertions need it.\r\n* There are other little things, like the formatting of `all_docs` or the way conflicts are presented in the changes feed, which are probably split evenly between actual bugs, vs things that just break the tests but not actual sync. These areas are the ones that need most investigation.\r\n* I'm curious why `docs_read` and `docs_written` are acting up.\r\n\r\nPlease take a look at this patch, and imagine similar patches to most of the other test files, followed by a process to slowly back out the skipped tests / assertions to maybe 50% of this amount (by actually fixing bugs). Then tell me if you think it's a good approach or if there's another way to do it that doesn't litter the tests with so many SG-specific conditionals.\r\n\r\nIt would also help to make sure that this patch doesn't cause havoc to non-SG testing environments, so please run it in Travis just to catch that stuff early. Thanks!\r\n\r\nIt doesn't apply to this test as much, but most of the failures in the other tests are on the \"remote-client\" `http` adapter side, so if we cut that out of scope, it would be a small patch to each of those tests to just not run the `http` adapter tests when testing against SG."},"comment":{"url":"https://api.github.com/repos/pouchdb/pouchdb/issues/comments/73110135","html_url":"https://github.com/pouchdb/pouchdb/pull/3495#issuecomment-73110135","issue_url":"https://api.github.com/repos/pouchdb/pouchdb/issues/3495","id":73110135,"user":{"login":"jchris","id":253,"avatar_url":"https://avatars.githubusercontent.com/u/253?v=3","gravatar_id":"","url":"https://api.github.com/users/jchris","html_url":"https://github.com/jchris","followers_url":"https://api.github.com/users/jchris/followers","following_url":"https://api.github.com/users/jchris/following{/other_user}","gists_url":"https://api.github.com/users/jchris/gists{/gist_id}","starred_url":"https://api.github.com/users/jchris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jchris/subscriptions","organizations_url":"https://api.github.com/users/jchris/orgs","repos_url":"https://api.github.com/users/jchris/repos","events_url":"https://api.github.com/users/jchris/events{/privacy}","received_events_url":"https://api.github.com/users/jchris/received_events","type":"User","site_admin":false},"created_at":"2015-02-05T19:29:36Z","updated_at":"2015-02-05T19:29:36Z","body":"Thanks y'all I'll try to reply in detail soon!\n\nOn Thursday, February 5, 2015, Dale Harvey <notifications@github.com> wrote:\n\n> I brought this up on IRC, but I started working on this thing:\n> https://github.com/nolanlawson/couch-community-compat-table. Please add\n> sync pairs to the list and link to the docs/tests/issues.\n>\n> Yeh getting some coordination on this will be awesome.\n>\n> Also I'm +1 for adding @jchris <https://github.com/jchris> to the pouchdb\n> org; it would enable him to actually run Saucelabs tests and see if any\n> tests are failing in exotic browsers, or to re-run a false negative.\n>\n> Done\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/pouchdb/pouchdb/pull/3495#issuecomment-73108817>.\n>\n\n\n-- \nChris Anderson\nhttp://www.couchbase.com\nhttp://twitter.com/jchris\n\"Compromising before you even begin fighting is illogical.\" – Joshua Wong\n"}}