{"action":"created","issue":{"url":"https://api.github.com/repos/calabash/calabash/issues/55","labels_url":"https://api.github.com/repos/calabash/calabash/issues/55/labels{/name}","comments_url":"https://api.github.com/repos/calabash/calabash/issues/55/comments","events_url":"https://api.github.com/repos/calabash/calabash/issues/55/events","html_url":"https://github.com/calabash/calabash/issues/55","id":71903499,"number":55,"title":"Announcement:  Calabash 2.0","user":{"login":"jmoody","id":466104,"avatar_url":"https://avatars.githubusercontent.com/u/466104?v=3","gravatar_id":"","url":"https://api.github.com/users/jmoody","html_url":"https://github.com/jmoody","followers_url":"https://api.github.com/users/jmoody/followers","following_url":"https://api.github.com/users/jmoody/following{/other_user}","gists_url":"https://api.github.com/users/jmoody/gists{/gist_id}","starred_url":"https://api.github.com/users/jmoody/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmoody/subscriptions","organizations_url":"https://api.github.com/users/jmoody/orgs","repos_url":"https://api.github.com/users/jmoody/repos","events_url":"https://api.github.com/users/jmoody/events{/privacy}","received_events_url":"https://api.github.com/users/jmoody/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/calabash/calabash/labels/requesting%20feedback","name":"requesting feedback","color":"bfe5bf"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":49,"created_at":"2015-04-29T15:17:27Z","updated_at":"2015-12-02T16:22:51Z","closed_at":null,"body":"Calabash 2.0 is a merge of the iOS and Android APIs.\r\n\r\n### Why?\r\n\r\n* A unified API will make cross-platform testing much easier.\r\n* APIs are difficult to design.  Now that we've had several \r\n  years of experience with hundreds of different applications\r\n  on both Android and iOS, we believe we've created an API that is \r\n  easier to use and understand.    \r\n* Both projects have accumulated a lot of behaviors that are\r\n  either broken, no longer relevant, wrong-headed, or dangerous.\r\n  Calabash 2.0 is our opportunity to fix what is broken and\r\n  deprecate what is unnecessary.\r\n\r\n### Goals\r\n\r\n1. Wherever possible, the Calabash 2.0 API will be cross-platform.\r\n2. The API and tools will have a high level of test coverage.\r\n3. The Calabash toolchain will be semantically versioned.\r\n\r\n### Features\r\n\r\n* Better wait behaviors.\r\n* Better gestures interface.\r\n* Better query results.\r\n* Fewer environment variables.\r\n* More and better documentation.\r\n* More example projects.\r\n* Dropping support for Ruby 1.9.\r\n* Cucumber 2.0 support.\r\n\r\n### FAQ\r\n\r\n##### Q1 Are the Calabash 2.0 and Calabash 0.x.x APIs compatible?\r\n\r\nThe short answer is, no.  We've redesigned the API from the bottom. All of the API will be familiar, but many method signatures have changed.  You will almost certainly have to refactor some of you code.  Ouch!  Yeah, we understand, and if it makes you feel better, we're not happy about it.\r\n\r\n##### Q2 Why are the Calabash 2.0 and Calabash 0.x.x APIs not compatible?\r\n\r\nThere were many inconsistencies between the Android and iOS APIs.  We analyzed our options and found that if we made a backward compatible API, we'd be repeating many mistakes and not making much improvement.\r\n\r\n##### Q3 When will Calabash 2.0 be released?\r\n\r\nDevelopers get burned by answering this question all the time.  Estimating is hard and no matter how much experience you have, your chances of being correct are very low.  Our plan is to start making pre-releases very soon.\r\n\r\n##### Q4 Can I see the new API?\r\n\r\n* http://calabashapi.xamarin.com/calabash\r\n* http://github.com/calabash/calabash\r\n\r\n##### Q5 Can I comment on the API?\r\n\r\nThe best place to comment is on GitHub, either with a pull request or an issue.\r\n\r\n* http://github.com/calabash/calabash\r\n\r\n##### Q6 How will support be handled?\r\n\r\nWith Calabash 2.0, we plan to merge our support channels. We don't yet know what that will look like.  The Google Groups are a difficult place to do support; questions and answers cannot be curated, older posts with incorrect information cannot be deleted, and the support formatted code is almost nil.  We have been discussing tools like Vanilla Forums and discuss.io.  We'd like to hear from you.  Do you know of an awesome support tool?  We'll open topics on the Calabash iOS and Android groups where you can weigh in with opinions.\r\n\r\n##### Q7 Why 2.0?\r\n\r\nWe feel like Calabash is ready for a 2.0 release. This API will feel like a dramatic departure from the old because you will need to refactor your test suites.  And we can't release a 1.x version because RubyGems .org already has a Calabash version 1.2.6.\r\n"},"comment":{"url":"https://api.github.com/repos/calabash/calabash/issues/comments/161352710","html_url":"https://github.com/calabash/calabash/issues/55#issuecomment-161352710","issue_url":"https://api.github.com/repos/calabash/calabash/issues/55","id":161352710,"user":{"login":"dnadan","id":5606435,"avatar_url":"https://avatars.githubusercontent.com/u/5606435?v=3","gravatar_id":"","url":"https://api.github.com/users/dnadan","html_url":"https://github.com/dnadan","followers_url":"https://api.github.com/users/dnadan/followers","following_url":"https://api.github.com/users/dnadan/following{/other_user}","gists_url":"https://api.github.com/users/dnadan/gists{/gist_id}","starred_url":"https://api.github.com/users/dnadan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dnadan/subscriptions","organizations_url":"https://api.github.com/users/dnadan/orgs","repos_url":"https://api.github.com/users/dnadan/repos","events_url":"https://api.github.com/users/dnadan/events{/privacy}","received_events_url":"https://api.github.com/users/dnadan/received_events","type":"User","site_admin":false},"created_at":"2015-12-02T16:22:50Z","updated_at":"2015-12-02T16:22:50Z","body":"Hi @jmoody ,\r\n\r\nDo you have anything new to share for Calabash 2.0 about your investigation in https://github.com/calabash/calabash-ios/issues/876?  Or is that further down the line?\r\n\r\nMany thanks."}}