{"action":"created","issue":{"url":"https://api.github.com/repos/fastlane/fastlane/issues/6991","repository_url":"https://api.github.com/repos/fastlane/fastlane","labels_url":"https://api.github.com/repos/fastlane/fastlane/issues/6991/labels{/name}","comments_url":"https://api.github.com/repos/fastlane/fastlane/issues/6991/comments","events_url":"https://api.github.com/repos/fastlane/fastlane/issues/6991/events","html_url":"https://github.com/fastlane/fastlane/pull/6991","id":189187048,"number":6991,"title":"WIP: remove Shenzhen dependency","user":{"login":"sebastianludwig","id":1715010,"avatar_url":"https://avatars.githubusercontent.com/u/1715010?v=3","gravatar_id":"","url":"https://api.github.com/users/sebastianludwig","html_url":"https://github.com/sebastianludwig","followers_url":"https://api.github.com/users/sebastianludwig/followers","following_url":"https://api.github.com/users/sebastianludwig/following{/other_user}","gists_url":"https://api.github.com/users/sebastianludwig/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianludwig/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianludwig/subscriptions","organizations_url":"https://api.github.com/users/sebastianludwig/orgs","repos_url":"https://api.github.com/users/sebastianludwig/repos","events_url":"https://api.github.com/users/sebastianludwig/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianludwig/received_events","type":"User","site_admin":false},"labels":[{"id":338233566,"url":"https://api.github.com/repos/fastlane/fastlane/labels/fastlane","name":"fastlane","color":"CCCCCC","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-11-14T18:23:06Z","updated_at":"2016-11-20T16:38:51Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/fastlane/fastlane/pulls/6991","html_url":"https://github.com/fastlane/fastlane/pull/6991","diff_url":"https://github.com/fastlane/fastlane/pull/6991.diff","patch_url":"https://github.com/fastlane/fastlane/pull/6991.patch"},"body":"Thanks for contributing to _fastlane_! Before you submit your pull request, please make sure to check the following boxes:\r\n\r\n- [ ] Run `bundle exec rspec` from the subdirectory of each tool you modified. Alternatively, run `rake test_all` from the root directory.\r\n- [ ] Run `bundle exec rubocop -a` to ensure the code style is valid\r\n- [x] Read the [Contribution Guidelines](https://github.com/fastlane/fastlane/blob/master/CONTRIBUTING.md)\r\n- [x] We currently don't accept new actions, please publish a plugin instead, more information in [Plugins.md](https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Plugins.md)\r\n\r\nThis PR is based on the discussion in fastlane/shenzhen#11 and aims to remove the `Shenzhen` dependency.\r\n\r\nThe actions were pretty straight forward, all unit tests are green. However I haven't set up test accounts where possible yet to test if the actual upload still works as expected.\r\n\r\nThe `ipa` action is more interesting. It's deprecated at least since March. It uses [a command](https://github.com/fastlane/shenzhen/blob/master/lib/shenzhen/xcodebuild.rb#L65) which [hangs on Xcode 8](https://forums.developer.apple.com/thread/50372). Not sure if this affects everybody but the `ipa` action is currently definitely broken. I only did a quick search, but didn't find any open issues concerning the ipa action. \r\n\r\nThis boils down to: How long do you wish to keep the deprecated action around and put more effort into maintaining it? With gym as a perfect(?) successor, I'd suggest to get rid of it. If you agree, I'd be happy to go forward with this PR."},"comment":{"url":"https://api.github.com/repos/fastlane/fastlane/issues/comments/261788783","html_url":"https://github.com/fastlane/fastlane/pull/6991#issuecomment-261788783","issue_url":"https://api.github.com/repos/fastlane/fastlane/issues/6991","id":261788783,"user":{"login":"sebastianludwig","id":1715010,"avatar_url":"https://avatars.githubusercontent.com/u/1715010?v=3","gravatar_id":"","url":"https://api.github.com/users/sebastianludwig","html_url":"https://github.com/sebastianludwig","followers_url":"https://api.github.com/users/sebastianludwig/followers","following_url":"https://api.github.com/users/sebastianludwig/following{/other_user}","gists_url":"https://api.github.com/users/sebastianludwig/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianludwig/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianludwig/subscriptions","organizations_url":"https://api.github.com/users/sebastianludwig/orgs","repos_url":"https://api.github.com/users/sebastianludwig/repos","events_url":"https://api.github.com/users/sebastianludwig/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianludwig/received_events","type":"User","site_admin":false},"created_at":"2016-11-20T16:38:51Z","updated_at":"2016-11-20T16:38:51Z","body":"All done and working. I created a test app and\r\n\r\n1. was able to build it with `ipa`\r\n1. upload it with `hockey`\r\n1. upload it with `testfairy`\r\n1. upload it with `deploygate`\r\n\r\nI also created a gemset without `shenzhen` to verify `krausefx-shenzhen` is installed during the `ipa` action\r\n\r\n<details>\r\n```bash\r\nsebastian$ ~/projects/fastlane_test/fastlane/bin/fastlane dev\r\n[16:44:00]: Driving the lane 'dev' 🚀\r\n[16:44:00]: -----------------\r\n[16:44:00]: --- Step: ipa ---\r\n[16:44:00]: -----------------\r\n[16:44:00]: Installing Ruby gem 'krausefx-shenzhen'...\r\nFetching: krausefx-shenzhen-0.14.11.gem (100%)\r\n[16:44:01]: Successfully installed 'krausefx-shenzhen' to '~/.fastlane/bin/'\r\n[16:44:01]: You are using legacy `shenzhen` to build your app, which will be removed soon!\r\n[16:44:01]: It is recommended to upgrade to `gym`\r\n[16:44:01]: To do so, just replace `ipa(...)` with `gym(...)` in your Fastfile\r\n[16:44:01]: https://github.com/fastlane/fastlane/tree/master/gym\r\n[16:44:01]: $ krausefx-ipa build -s \"FastlaneIpaTest\" -c \"Release\" --clean --verbose | xcpretty\r\n[16:44:04]: ▸ Cleaning FastlaneIpaTest/FastlaneIpaTest [Release]\r\n[16:44:04]: ▸ Check Dependencies\r\n[16:44:04]: ▸ Clean Succeeded\r\n[16:44:04]: ▸ Building FastlaneIpaTest/FastlaneIpaTest [Release]\r\n[16:44:04]: ▸ Check Dependencies\r\n[16:44:04]: ▸ Compiling AppDelegate.m\r\n[16:44:04]: ▸ Compiling main.m\r\n[16:44:04]: ▸ Compiling ViewController.m\r\n[16:44:04]: ▸ Compiling ViewController.m\r\n[16:44:04]: ▸ Compiling AppDelegate.m\r\n[16:44:04]: ▸ Compiling main.m\r\n[16:44:04]: ▸ Linking FastlaneIpaTest\r\n[16:44:04]: ▸ Linking FastlaneIpaTest\r\n[16:44:04]: ▸ Compiling Main.storyboard\r\n[16:44:05]: ▸ Compiling LaunchScreen.storyboard\r\n[16:44:05]: ▸ Processing Info.plist\r\n[16:44:05]: ▸ Generating 'FastlaneIpaTest.app.dSYM'\r\n[16:44:06]: ▸ Touching FastlaneIpaTest.app\r\n[16:44:06]: ▸ Signing /Users/sebastian/Library/Developer/Xcode/DerivedData/FastlaneIpaTest-biihtgbzrksziuddgfwgyhmprsea/Build/Products/Release-iphoneos/FastlaneIpaTest.app\r\n[16:44:08]: ▸ Build Succeeded\r\n[16:44:08]: ▸ Building FastlaneIpaTest/FastlaneIpaTest [Release]\r\n[16:44:08]: ▸ Check Dependencies\r\n[16:44:08]: ▸ Compiling AppDelegate.m\r\n[16:44:08]: ▸ Compiling ViewController.m\r\n[16:44:08]: ▸ Compiling main.m\r\n[16:44:08]: ▸ Compiling ViewController.m\r\n[16:44:08]: ▸ Compiling AppDelegate.m\r\n[16:44:08]: ▸ Compiling main.m\r\n[16:44:08]: ▸ Linking FastlaneIpaTest\r\n[16:44:09]: ▸ Linking FastlaneIpaTest\r\n[16:44:09]: ▸ Compiling Main.storyboard\r\n[16:44:09]: ▸ Compiling LaunchScreen.storyboard\r\n[16:44:09]: ▸ Processing Info.plist\r\n[16:44:09]: ▸ Generating 'FastlaneIpaTest.app.dSYM'\r\n[16:44:09]: ▸ Touching FastlaneIpaTest.app\r\n[16:44:09]: ▸ Signing /Users/sebastian/Library/Developer/Xcode/DerivedData/FastlaneIpaTest-biihtgbzrksziuddgfwgyhmprsea/Build/Intermediates/ArchiveIntermediates/FastlaneIpaTest/InstallationBuildProductsLocation/Applications/FastlaneIpaTest.app\r\n[16:44:12]: ▸ Touching FastlaneIpaTest.app.dSYM\r\n[16:44:12]: ▸ Archive Succeeded\r\n[16:44:13]: ▸ PackageApplication is deprecated, use `xcodebuild -exportArchive` instead.\r\n[16:44:13]: You are using legacy `shenzhen` to build your app, which will be removed soon!\r\n[16:44:13]: It is recommended to upgrade to `gym`\r\n[16:44:13]: To do so, just replace `ipa(...)` with `gym(...)` in your Fastfile\r\n[16:44:13]: https://github.com/fastlane/fastlane/tree/master/gym\r\n\r\n+------+--------+-------------+\r\n|      fastlane summary       |\r\n+------+--------+-------------+\r\n| Step | Action | Time (in s) |\r\n+------+--------+-------------+\r\n| 1    | ipa    | 13          |\r\n+------+--------+-------------+\r\n\r\n[16:44:13]: fastlane.tools finished successfully 🎉\r\n```\r\n</details>\r\n\r\nHere's the Fastfile I used (while testing I only had one action active at a time):\r\n```ruby\r\nlane :dev do\r\n  ipa(\r\n    scheme: \"TestApp\",\r\n    configuration: \"Release\",\r\n    clean: true\r\n  )\r\n\r\n  hockey(\r\n    api_token: \"0ee9c9[...]cb30caf6\",\r\n    ipa: \"TestApp.ipa\",\r\n    notes: \"does it work yet?\"\r\n  )\r\n  testfairy(\r\n    api_key: \"cd85e3c414[...]3c2eab93f3a60\",\r\n    ipa: \"TestApp.ipa\",\r\n    comment: \"does it work yet?\"\r\n  )\r\n  deploygate(\r\n    api_token: \"283b28ad164a7[...]3051338ebc84c\",\r\n    user: \"fastlane_test\",\r\n    ipa: \"TestApp.ipa\",\r\n    message: \"does it work yet?\",\r\n  )\r\nend\r\n```\r\n\r\nFrom my side we're good to go 🚢 "}}
{"actor":{"display_login":"sebastianludwig"}}