fastlane 2.173.0 → 2.194.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (391) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +105 -85
  4. data/cert/lib/cert/commands_generator.rb +2 -1
  5. data/cert/lib/cert/options.rb +4 -3
  6. data/cert/lib/cert/runner.rb +7 -7
  7. data/deliver/lib/assets/summary.html.erb +10 -10
  8. data/deliver/lib/deliver/app_screenshot.rb +8 -3
  9. data/deliver/lib/deliver/app_screenshot_iterator.rb +2 -2
  10. data/deliver/lib/deliver/commands_generator.rb +3 -2
  11. data/deliver/lib/deliver/detect_values.rb +5 -3
  12. data/deliver/lib/deliver/download_screenshots.rb +2 -3
  13. data/deliver/lib/deliver/html_generator.rb +2 -2
  14. data/deliver/lib/deliver/languages.rb +1 -1
  15. data/deliver/lib/deliver/loader.rb +1 -1
  16. data/deliver/lib/deliver/module.rb +6 -0
  17. data/deliver/lib/deliver/options.rb +48 -56
  18. data/deliver/lib/deliver/runner.rb +28 -15
  19. data/deliver/lib/deliver/screenshot_comparable.rb +62 -0
  20. data/deliver/lib/deliver/setup.rb +1 -2
  21. data/deliver/lib/deliver/submit_for_review.rb +4 -4
  22. data/deliver/lib/deliver/sync_screenshots.rb +200 -0
  23. data/deliver/lib/deliver/upload_metadata.rb +26 -11
  24. data/deliver/lib/deliver/upload_price_tier.rb +1 -1
  25. data/deliver/lib/deliver/upload_screenshots.rb +13 -12
  26. data/fastlane/lib/assets/completions/completion.bash +4 -1
  27. data/fastlane/lib/assets/completions/completion.zsh +6 -5
  28. data/{spaceship/lib/spaceship/connect_api/models/.app_store_version_submission.rb.swp → fastlane/lib/fastlane/actions/.notarize.rb.swp} +0 -0
  29. data/fastlane/lib/fastlane/actions/actions_helper.rb +2 -2
  30. data/fastlane/lib/fastlane/actions/adb.rb +2 -5
  31. data/fastlane/lib/fastlane/actions/adb_devices.rb +0 -1
  32. data/fastlane/lib/fastlane/actions/add_git_tag.rb +4 -4
  33. data/fastlane/lib/fastlane/actions/app_store_build_number.rb +18 -18
  34. data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +21 -7
  35. data/fastlane/lib/fastlane/actions/appaloosa.rb +7 -2
  36. data/fastlane/lib/fastlane/actions/appetize.rb +13 -8
  37. data/fastlane/lib/fastlane/actions/appetize_viewing_url_generator.rb +0 -11
  38. data/fastlane/lib/fastlane/actions/appium.rb +40 -65
  39. data/fastlane/lib/fastlane/actions/appledoc.rb +45 -45
  40. data/fastlane/lib/fastlane/actions/apteligent.rb +3 -2
  41. data/fastlane/lib/fastlane/actions/artifactory.rb +5 -6
  42. data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +7 -13
  43. data/fastlane/lib/fastlane/actions/backup_file.rb +1 -1
  44. data/fastlane/lib/fastlane/actions/backup_xcarchive.rb +3 -3
  45. data/fastlane/lib/fastlane/actions/badge.rb +9 -13
  46. data/fastlane/lib/fastlane/actions/build_and_upload_to_appetize.rb +11 -5
  47. data/fastlane/lib/fastlane/actions/build_app.rb +4 -0
  48. data/fastlane/lib/fastlane/actions/bundle_install.rb +21 -11
  49. data/fastlane/lib/fastlane/actions/carthage.rb +22 -14
  50. data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +8 -17
  51. data/fastlane/lib/fastlane/actions/chatwork.rb +3 -2
  52. data/fastlane/lib/fastlane/actions/check_app_store_metadata.rb +9 -1
  53. data/fastlane/lib/fastlane/actions/clean_build_artifacts.rb +0 -1
  54. data/fastlane/lib/fastlane/actions/clean_cocoapods_cache.rb +25 -2
  55. data/fastlane/lib/fastlane/actions/clipboard.rb +3 -6
  56. data/fastlane/lib/fastlane/actions/cloc.rb +9 -13
  57. data/fastlane/lib/fastlane/actions/cocoapods.rb +23 -15
  58. data/fastlane/lib/fastlane/actions/commit_github_file.rb +12 -4
  59. data/fastlane/lib/fastlane/actions/commit_version_bump.rb +6 -7
  60. data/fastlane/lib/fastlane/actions/copy_artifacts.rb +3 -4
  61. data/fastlane/lib/fastlane/actions/crashlytics.rb +7 -11
  62. data/fastlane/lib/fastlane/actions/create_app_on_managed_play_store.rb +70 -76
  63. data/fastlane/lib/fastlane/actions/create_keychain.rb +13 -11
  64. data/fastlane/lib/fastlane/actions/create_pull_request.rb +0 -9
  65. data/fastlane/lib/fastlane/actions/create_xcframework.rb +102 -17
  66. data/fastlane/lib/fastlane/actions/danger.rb +13 -12
  67. data/fastlane/lib/fastlane/actions/deploygate.rb +1 -2
  68. data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
  69. data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +29 -30
  70. data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +3 -3
  71. data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
  72. data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +19 -2
  73. data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +8 -2
  74. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +37 -18
  75. data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +2 -1
  76. data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +10 -4
  77. data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +1 -1
  78. data/fastlane/lib/fastlane/actions/download_dsyms.rb +8 -19
  79. data/fastlane/lib/fastlane/actions/dsym_zip.rb +1 -1
  80. data/fastlane/lib/fastlane/actions/ensure_env_vars.rb +2 -6
  81. data/fastlane/lib/fastlane/actions/ensure_git_branch.rb +0 -1
  82. data/fastlane/lib/fastlane/actions/ensure_git_status_clean.rb +3 -4
  83. data/fastlane/lib/fastlane/actions/ensure_no_debug_code.rb +3 -5
  84. data/fastlane/lib/fastlane/actions/ensure_xcode_version.rb +1 -2
  85. data/fastlane/lib/fastlane/actions/environment_variable.rb +13 -21
  86. data/fastlane/lib/fastlane/actions/erb.rb +2 -5
  87. data/fastlane/lib/fastlane/actions/get_build_number_repository.rb +1 -1
  88. data/fastlane/lib/fastlane/actions/get_certificates.rb +5 -1
  89. data/fastlane/lib/fastlane/actions/get_github_release.rb +11 -1
  90. data/fastlane/lib/fastlane/actions/get_ipa_info_plist_value.rb +0 -1
  91. data/fastlane/lib/fastlane/actions/get_managed_play_store_publishing_rights.rb +32 -35
  92. data/fastlane/lib/fastlane/actions/get_provisioning_profile.rb +10 -2
  93. data/fastlane/lib/fastlane/actions/get_push_certificate.rb +1 -1
  94. data/fastlane/lib/fastlane/actions/get_version_number.rb +17 -10
  95. data/fastlane/lib/fastlane/actions/git_add.rb +5 -10
  96. data/fastlane/lib/fastlane/actions/git_branch.rb +4 -10
  97. data/fastlane/lib/fastlane/actions/git_commit.rb +6 -8
  98. data/fastlane/lib/fastlane/actions/git_pull.rb +4 -10
  99. data/fastlane/lib/fastlane/actions/git_remote_branch.rb +57 -0
  100. data/fastlane/lib/fastlane/actions/git_submodule_update.rb +16 -8
  101. data/fastlane/lib/fastlane/actions/git_tag_exists.rb +4 -0
  102. data/fastlane/lib/fastlane/actions/github_api.rb +4 -6
  103. data/fastlane/lib/fastlane/actions/gradle.rb +13 -21
  104. data/fastlane/lib/fastlane/actions/hg_commit_version_bump.rb +1 -1
  105. data/fastlane/lib/fastlane/actions/hg_push.rb +1 -1
  106. data/fastlane/lib/fastlane/actions/hipchat.rb +6 -6
  107. data/fastlane/lib/fastlane/actions/hockey.rb +5 -12
  108. data/fastlane/lib/fastlane/actions/ifttt.rb +3 -6
  109. data/fastlane/lib/fastlane/actions/import_from_git.rb +7 -9
  110. data/fastlane/lib/fastlane/actions/increment_build_number.rb +8 -2
  111. data/fastlane/lib/fastlane/actions/install_on_device.rb +3 -6
  112. data/fastlane/lib/fastlane/actions/install_provisioning_profile.rb +4 -0
  113. data/fastlane/lib/fastlane/actions/installr.rb +22 -25
  114. data/fastlane/lib/fastlane/actions/ipa.rb +2 -2
  115. data/fastlane/lib/fastlane/actions/jazzy.rb +11 -8
  116. data/fastlane/lib/fastlane/actions/jira.rb +61 -14
  117. data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +7 -7
  118. data/fastlane/lib/fastlane/actions/lcov.rb +0 -4
  119. data/fastlane/lib/fastlane/actions/mailgun.rb +21 -27
  120. data/fastlane/lib/fastlane/actions/make_changelog_from_jenkins.rb +1 -1
  121. data/fastlane/lib/fastlane/actions/match_nuke.rb +59 -0
  122. data/fastlane/lib/fastlane/actions/modify_services.rb +59 -24
  123. data/fastlane/lib/fastlane/actions/nexus_upload.rb +2 -2
  124. data/fastlane/lib/fastlane/actions/notarize.rb +181 -52
  125. data/fastlane/lib/fastlane/actions/notification.rb +1 -1
  126. data/fastlane/lib/fastlane/actions/number_of_commits.rb +1 -1
  127. data/fastlane/lib/fastlane/actions/oclint.rb +15 -14
  128. data/fastlane/lib/fastlane/actions/pod_push.rb +0 -2
  129. data/fastlane/lib/fastlane/actions/podio_item.rb +0 -7
  130. data/fastlane/lib/fastlane/actions/prompt.rb +3 -4
  131. data/fastlane/lib/fastlane/actions/push_git_tags.rb +2 -2
  132. data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +6 -3
  133. data/fastlane/lib/fastlane/actions/puts.rb +1 -2
  134. data/fastlane/lib/fastlane/actions/register_device.rb +10 -13
  135. data/fastlane/lib/fastlane/actions/register_devices.rb +10 -14
  136. data/fastlane/lib/fastlane/actions/reset_git_repo.rb +5 -8
  137. data/fastlane/lib/fastlane/actions/reset_simulator_contents.rb +0 -2
  138. data/fastlane/lib/fastlane/actions/resign.rb +2 -9
  139. data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
  140. data/fastlane/lib/fastlane/actions/rsync.rb +3 -6
  141. data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
  142. data/fastlane/lib/fastlane/actions/s3.rb +1 -1
  143. data/fastlane/lib/fastlane/actions/say.rb +2 -3
  144. data/fastlane/lib/fastlane/actions/scp.rb +4 -10
  145. data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
  146. data/fastlane/lib/fastlane/actions/set_changelog.rb +11 -14
  147. data/fastlane/lib/fastlane/actions/set_github_release.rb +2 -8
  148. data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +1 -1
  149. data/fastlane/lib/fastlane/actions/set_pod_key.rb +3 -4
  150. data/fastlane/lib/fastlane/actions/setup_ci.rb +1 -2
  151. data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
  152. data/fastlane/lib/fastlane/actions/setup_jenkins.rb +7 -12
  153. data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
  154. data/fastlane/lib/fastlane/actions/sh.rb +2 -4
  155. data/fastlane/lib/fastlane/actions/slack.rb +161 -141
  156. data/fastlane/lib/fastlane/actions/slather.rb +9 -19
  157. data/fastlane/lib/fastlane/actions/sonar.rb +12 -19
  158. data/fastlane/lib/fastlane/actions/sourcedocs.rb +128 -0
  159. data/fastlane/lib/fastlane/actions/spaceship_logs.rb +1 -1
  160. data/fastlane/lib/fastlane/actions/splunkmint.rb +2 -2
  161. data/fastlane/lib/fastlane/actions/spm.rb +3 -3
  162. data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
  163. data/fastlane/lib/fastlane/actions/swiftlint.rb +18 -16
  164. data/fastlane/lib/fastlane/actions/sync_code_signing.rb +7 -2
  165. data/fastlane/lib/fastlane/actions/testfairy.rb +0 -1
  166. data/fastlane/lib/fastlane/actions/tryouts.rb +2 -3
  167. data/fastlane/lib/fastlane/actions/twitter.rb +0 -5
  168. data/fastlane/lib/fastlane/actions/unlock_keychain.rb +3 -3
  169. data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +1 -4
  170. data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +8 -15
  171. data/fastlane/lib/fastlane/actions/update_fastlane.rb +2 -2
  172. data/fastlane/lib/fastlane/actions/update_icloud_container_identifiers.rb +1 -4
  173. data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
  174. data/fastlane/lib/fastlane/actions/update_keychain_access_groups.rb +1 -4
  175. data/fastlane/lib/fastlane/actions/update_plist.rb +1 -1
  176. data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +3 -4
  177. data/fastlane/lib/fastlane/actions/update_urban_airship_configuration.rb +0 -1
  178. data/fastlane/lib/fastlane/actions/update_url_schemes.rb +15 -26
  179. data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +1 -2
  180. data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +8 -7
  181. data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +3 -10
  182. data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +5 -1
  183. data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +10 -3
  184. data/fastlane/lib/fastlane/actions/validate_play_store_json_key.rb +40 -44
  185. data/fastlane/lib/fastlane/actions/version_get_podspec.rb +1 -2
  186. data/fastlane/lib/fastlane/actions/xcode_server_get_assets.rb +3 -3
  187. data/fastlane/lib/fastlane/actions/xcodebuild.rb +5 -5
  188. data/fastlane/lib/fastlane/actions/zip.rb +86 -21
  189. data/fastlane/lib/fastlane/cli_tools_distributor.rb +1 -1
  190. data/fastlane/lib/fastlane/commands_generator.rb +2 -1
  191. data/fastlane/lib/fastlane/documentation/actions_list.rb +2 -2
  192. data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
  193. data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +12 -6
  194. data/fastlane/lib/fastlane/environment_printer.rb +1 -0
  195. data/fastlane/lib/fastlane/erb_template_helper.rb +7 -1
  196. data/fastlane/lib/fastlane/fast_file.rb +19 -7
  197. data/fastlane/lib/fastlane/fastlane_require.rb +7 -1
  198. data/fastlane/lib/fastlane/features.rb +3 -0
  199. data/fastlane/lib/fastlane/helper/adb_helper.rb +1 -1
  200. data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +4 -4
  201. data/fastlane/lib/fastlane/helper/gem_helper.rb +2 -2
  202. data/fastlane/lib/fastlane/helper/git_helper.rb +34 -5
  203. data/fastlane/lib/fastlane/lane_manager.rb +3 -2
  204. data/fastlane/lib/fastlane/notification/slack.rb +56 -0
  205. data/fastlane/lib/fastlane/plugins/plugin_fetcher.rb +1 -2
  206. data/fastlane/lib/fastlane/plugins/plugin_info.rb +2 -2
  207. data/fastlane/lib/fastlane/plugins/plugin_info_collector.rb +1 -2
  208. data/fastlane/lib/fastlane/plugins/plugin_manager.rb +2 -3
  209. data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +7 -6
  210. data/fastlane/lib/fastlane/plugins/template/.circleci/config.yml +1 -1
  211. data/fastlane/lib/fastlane/plugins/template/.github/workflows/test.yml +1 -1
  212. data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +30 -35
  213. data/fastlane/lib/fastlane/plugins/template/spec/spec_helper.rb.erb +1 -1
  214. data/fastlane/lib/fastlane/setup/setup.rb +23 -10
  215. data/fastlane/lib/fastlane/setup/setup_ios.rb +3 -3
  216. data/fastlane/lib/fastlane/swift_fastlane_function.rb +43 -15
  217. data/fastlane/lib/fastlane/swift_runner_upgrader.rb +2 -0
  218. data/fastlane/lib/fastlane/version.rb +2 -2
  219. data/fastlane/swift/Actions.swift +1 -1
  220. data/fastlane/swift/Appfile.swift +1 -1
  221. data/fastlane/swift/ArgumentProcessor.swift +1 -1
  222. data/fastlane/swift/ControlCommand.swift +1 -1
  223. data/fastlane/swift/Deliverfile.swift +1 -1
  224. data/fastlane/swift/DeliverfileProtocol.swift +27 -23
  225. data/fastlane/swift/Fastlane.swift +7993 -4352
  226. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.pbxproj +4 -0
  227. data/fastlane/swift/Gymfile.swift +1 -1
  228. data/fastlane/swift/GymfileProtocol.swift +1 -1
  229. data/fastlane/swift/LaneFileProtocol.swift +10 -4
  230. data/fastlane/swift/MainProcess.swift +1 -1
  231. data/fastlane/swift/Matchfile.swift +1 -1
  232. data/fastlane/swift/MatchfileProtocol.swift +3 -3
  233. data/fastlane/swift/OptionalConfigValue.swift +101 -0
  234. data/fastlane/swift/Plugins.swift +1 -1
  235. data/fastlane/swift/Precheckfile.swift +1 -1
  236. data/fastlane/swift/PrecheckfileProtocol.swift +4 -4
  237. data/fastlane/swift/RubyCommand.swift +2 -2
  238. data/fastlane/swift/RubyCommandable.swift +1 -1
  239. data/fastlane/swift/Runner.swift +2 -2
  240. data/fastlane/swift/RunnerArgument.swift +1 -1
  241. data/fastlane/swift/Scanfile.swift +1 -1
  242. data/fastlane/swift/ScanfileProtocol.swift +17 -1
  243. data/fastlane/swift/Screengrabfile.swift +1 -1
  244. data/fastlane/swift/ScreengrabfileProtocol.swift +4 -4
  245. data/fastlane/swift/Snapshotfile.swift +1 -1
  246. data/fastlane/swift/SnapshotfileProtocol.swift +5 -1
  247. data/fastlane/swift/SocketClient.swift +3 -2
  248. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  249. data/fastlane/swift/SocketResponse.swift +5 -3
  250. data/fastlane/swift/formatting/Brewfile.lock.json +37 -21
  251. data/fastlane/swift/main.swift +1 -1
  252. data/fastlane/swift/upgrade_manifest.json +1 -1
  253. data/fastlane_core/lib/fastlane_core/build_watcher.rb +113 -17
  254. data/fastlane_core/lib/fastlane_core/clipboard.rb +20 -0
  255. data/fastlane_core/lib/fastlane_core/command_executor.rb +3 -9
  256. data/fastlane_core/lib/fastlane_core/configuration/commander_generator.rb +6 -1
  257. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +41 -3
  258. data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +14 -8
  259. data/fastlane_core/lib/fastlane_core/device_manager.rb +1 -1
  260. data/fastlane_core/lib/fastlane_core/helper.rb +66 -10
  261. data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +3 -2
  262. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +14 -8
  263. data/fastlane_core/lib/fastlane_core/keychain_importer.rb +12 -5
  264. data/fastlane_core/lib/fastlane_core/languages.rb +2 -2
  265. data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +5 -0
  266. data/fastlane_core/lib/fastlane_core/pkg_upload_package_builder.rb +3 -2
  267. data/fastlane_core/lib/fastlane_core/print_table.rb +5 -3
  268. data/fastlane_core/lib/fastlane_core/project.rb +30 -23
  269. data/{deliver/lib/deliver → fastlane_core/lib/fastlane_core}/queue_worker.rb +4 -4
  270. data/fastlane_core/lib/fastlane_core/swag.rb +1 -1
  271. data/fastlane_core/lib/fastlane_core/ui/disable_colors.rb +1 -0
  272. data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +41 -0
  273. data/fastlane_core/lib/fastlane_core/ui/help.erb +35 -0
  274. data/fastlane_core/lib/fastlane_core/ui/help_formatter.rb +16 -0
  275. data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +16 -2
  276. data/fastlane_core/lib/fastlane_core/ui/interface.rb +1 -1
  277. data/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb +2 -2
  278. data/fastlane_core/lib/fastlane_core.rb +22 -20
  279. data/frameit/lib/frameit/commands_generator.rb +2 -1
  280. data/frameit/lib/frameit/config_parser.rb +2 -2
  281. data/frameit/lib/frameit/frame_downloader.rb +2 -1
  282. data/gym/lib/gym/code_signing_mapping.rb +2 -2
  283. data/gym/lib/gym/commands_generator.rb +2 -1
  284. data/gym/lib/gym/generators/package_command_generator.rb +4 -0
  285. data/gym/lib/gym/generators/package_command_generator_xcode7.rb +19 -13
  286. data/gym/lib/gym/runner.rb +15 -4
  287. data/match/lib/match/change_password.rb +3 -3
  288. data/match/lib/match/commands_generator.rb +2 -1
  289. data/match/lib/match/encryption/interface.rb +1 -1
  290. data/match/lib/match/encryption/openssl.rb +2 -2
  291. data/match/lib/match/importer.rb +9 -10
  292. data/match/lib/match/migrate.rb +2 -3
  293. data/match/lib/match/module.rb +1 -0
  294. data/match/lib/match/nuke.rb +10 -10
  295. data/match/lib/match/options.rb +5 -4
  296. data/match/lib/match/runner.rb +12 -12
  297. data/match/lib/match/spaceship_ensure.rb +3 -0
  298. data/match/lib/match/storage/google_cloud_storage.rb +2 -2
  299. data/match/lib/match/storage/s3_storage.rb +2 -2
  300. data/pem/lib/pem/commands_generator.rb +2 -1
  301. data/pilot/lib/pilot/build_manager.rb +45 -15
  302. data/pilot/lib/pilot/commands_generator.rb +2 -1
  303. data/pilot/lib/pilot/manager.rb +14 -9
  304. data/pilot/lib/pilot/options.rb +39 -11
  305. data/pilot/lib/pilot/tester_exporter.rb +0 -1
  306. data/pilot/lib/pilot/tester_manager.rb +0 -1
  307. data/pilot/lib/pilot.rb +0 -1
  308. data/precheck/lib/precheck/commands_generator.rb +2 -1
  309. data/precheck/lib/precheck/module.rb +2 -0
  310. data/precheck/lib/precheck/options.rb +7 -6
  311. data/precheck/lib/precheck/runner.rb +13 -8
  312. data/produce/lib/produce/commands_generator.rb +129 -28
  313. data/produce/lib/produce/developer_center.rb +42 -4
  314. data/produce/lib/produce/options.rb +1 -1
  315. data/produce/lib/produce/service.rb +285 -179
  316. data/scan/lib/scan/commands_generator.rb +2 -1
  317. data/scan/lib/scan/detect_values.rb +26 -14
  318. data/scan/lib/scan/module.rb +1 -0
  319. data/scan/lib/scan/options.rb +32 -6
  320. data/scan/lib/scan/runner.rb +81 -1
  321. data/scan/lib/scan/test_command_generator.rb +37 -12
  322. data/scan/lib/scan/xcpretty_reporter_options_generator.rb +1 -1
  323. data/screengrab/lib/screengrab/android_environment.rb +5 -53
  324. data/screengrab/lib/screengrab/commands_generator.rb +2 -1
  325. data/screengrab/lib/screengrab/dependency_checker.rb +0 -20
  326. data/screengrab/lib/screengrab/options.rb +5 -2
  327. data/screengrab/lib/screengrab/runner.rb +110 -109
  328. data/sigh/lib/assets/resign.sh +81 -61
  329. data/sigh/lib/sigh/commands_generator.rb +2 -1
  330. data/sigh/lib/sigh/download_all.rb +4 -8
  331. data/sigh/lib/sigh/options.rb +6 -4
  332. data/sigh/lib/sigh/runner.rb +8 -8
  333. data/snapshot/lib/assets/SnapfileTemplate +3 -2
  334. data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
  335. data/snapshot/lib/assets/SnapshotHelper.swift +14 -10
  336. data/snapshot/lib/snapshot/commands_generator.rb +3 -1
  337. data/snapshot/lib/snapshot/options.rb +5 -0
  338. data/snapshot/lib/snapshot/reports_generator.rb +7 -1
  339. data/snapshot/lib/snapshot/simulator_launchers/launcher_configuration.rb +2 -0
  340. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher.rb +1 -1
  341. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +12 -6
  342. data/snapshot/lib/snapshot/test_command_generator.rb +17 -3
  343. data/spaceship/README.md +4 -14
  344. data/spaceship/lib/spaceship/base.rb +2 -2
  345. data/spaceship/lib/spaceship/client.rb +37 -20
  346. data/spaceship/lib/spaceship/commands_generator.rb +4 -2
  347. data/spaceship/lib/spaceship/connect_api/api_client.rb +80 -8
  348. data/spaceship/lib/spaceship/connect_api/model.rb +1 -1
  349. data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +36 -4
  350. data/spaceship/lib/spaceship/connect_api/models/app.rb +10 -2
  351. data/spaceship/lib/spaceship/connect_api/models/app_info.rb +10 -0
  352. data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +5 -0
  353. data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +1 -1
  354. data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +5 -0
  355. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +2 -3
  356. data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +6 -0
  357. data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +8 -1
  358. data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +3 -1
  359. data/spaceship/lib/spaceship/connect_api/models/build.rb +14 -1
  360. data/spaceship/lib/spaceship/connect_api/models/build_beta_detail.rb +8 -0
  361. data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +32 -0
  362. data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +84 -21
  363. data/spaceship/lib/spaceship/connect_api/models/capabilities.rb +27 -0
  364. data/spaceship/lib/spaceship/connect_api/models/profile.rb +6 -0
  365. data/spaceship/lib/spaceship/connect_api/models/user.rb +17 -3
  366. data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +37 -3
  367. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +104 -2
  368. data/spaceship/lib/spaceship/connect_api/testflight/client.rb +3 -0
  369. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +72 -5
  370. data/spaceship/lib/spaceship/connect_api/token.rb +19 -4
  371. data/spaceship/lib/spaceship/connect_api/tunes/client.rb +3 -0
  372. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +19 -2
  373. data/spaceship/lib/spaceship/connect_api/users/client.rb +3 -0
  374. data/spaceship/lib/spaceship/connect_api/users/users.rb +58 -3
  375. data/spaceship/lib/spaceship/connect_api.rb +1 -0
  376. data/spaceship/lib/spaceship/playground.rb +2 -2
  377. data/spaceship/lib/spaceship/spaceauth_runner.rb +38 -15
  378. data/spaceship/lib/spaceship/tunes/members.rb +1 -1
  379. data/spaceship/lib/spaceship/tunes/tunes_client.rb +5 -2
  380. data/spaceship/lib/spaceship/two_step_or_factor_client.rb +42 -29
  381. data/spaceship/lib/spaceship/ui.rb +2 -2
  382. data/supply/lib/supply/client.rb +45 -4
  383. data/supply/lib/supply/commands_generator.rb +2 -1
  384. data/supply/lib/supply/options.rb +14 -2
  385. data/supply/lib/supply/uploader.rb +13 -9
  386. metadata +119 -98
  387. data/fastlane/lib/fastlane/.erb_template_helper.rb.swp +0 -0
  388. data/fastlane/lib/fastlane/actions/.git_commit.rb.swp +0 -0
  389. data/pilot/lib/pilot/features.rb +0 -0
  390. data/pilot/lib/pilot/tester_util.rb +0 -0
  391. data/spaceship/lib/spaceship/.DS_Store +0 -0
@@ -40,7 +40,7 @@ module Fastlane
40
40
  end
41
41
 
42
42
  # Create zip
43
- Actions.sh(%(cd "#{xcarchive_folder}" && zip -r -X "#{zip_file}" "#{xcarchive_file}" > /dev/null))
43
+ Actions.sh(%(cd "#{xcarchive_folder}" && zip -r -X -y "#{zip_file}" "#{xcarchive_file}" > /dev/null))
44
44
 
45
45
  # Moved to its final destination
46
46
  FileUtils.mv(zip_file, full_destination)
@@ -83,7 +83,7 @@ module Fastlane
83
83
  end),
84
84
  FastlaneCore::ConfigItem.new(key: :zip,
85
85
  description: 'Enable compression of the archive',
86
- is_string: false,
86
+ type: Boolean,
87
87
  default_value: true,
88
88
  optional: true,
89
89
  env_name: 'BACKUP_XCARCHIVE_ZIP'),
@@ -94,7 +94,7 @@ module Fastlane
94
94
  env_name: 'BACKUP_XCARCHIVE_ZIP_FILENAME'),
95
95
  FastlaneCore::ConfigItem.new(key: :versioned,
96
96
  description: 'Create a versioned (date and app version) subfolder where to put the archive',
97
- is_string: false,
97
+ type: Boolean,
98
98
  default_value: true,
99
99
  optional: true,
100
100
  env_name: 'BACKUP_XCARCHIVE_VERSIONED')
@@ -65,7 +65,7 @@ module Fastlane
65
65
  env_name: "FL_BADGE_DARK",
66
66
  description: "Adds a dark flavored badge ontop of your icon",
67
67
  optional: true,
68
- is_string: false,
68
+ type: Boolean,
69
69
  verify_block: proc do |value|
70
70
  UI.user_error!("dark is only a flag and should always be true") unless value == true
71
71
  end),
@@ -80,20 +80,19 @@ module Fastlane
80
80
  env_name: "FL_BADGE_NO_BADGE",
81
81
  description: "Hides the beta badge",
82
82
  optional: true,
83
- is_string: false,
83
+ type: Boolean,
84
84
  verify_block: proc do |value|
85
85
  UI.user_error!("no_badge is only a flag and should always be true") unless value == true
86
86
  end),
87
87
  FastlaneCore::ConfigItem.new(key: :shield,
88
88
  env_name: "FL_BADGE_SHIELD",
89
89
  description: "Add a shield to your app icon from shields.io",
90
- optional: true,
91
- is_string: true),
90
+ optional: true),
92
91
  FastlaneCore::ConfigItem.new(key: :alpha,
93
92
  env_name: "FL_BADGE_ALPHA",
94
93
  description: "Adds and alpha badge instead of the default beta one",
95
94
  optional: true,
96
- is_string: false,
95
+ type: Boolean,
97
96
  verify_block: proc do |value|
98
97
  UI.user_error!("alpha is only a flag and should always be true") unless value == true
99
98
  end),
@@ -101,7 +100,6 @@ module Fastlane
101
100
  env_name: "FL_BADGE_PATH",
102
101
  description: "Sets the root path to look for AppIcons",
103
102
  optional: true,
104
- is_string: true,
105
103
  default_value: '.',
106
104
  verify_block: proc do |value|
107
105
  UI.user_error!("path needs to be a valid directory") if Dir[value].empty?
@@ -110,33 +108,31 @@ module Fastlane
110
108
  env_name: "FL_BADGE_SHIELD_IO_TIMEOUT",
111
109
  description: "Set custom duration for the timeout of the shields.io request in seconds",
112
110
  optional: true,
113
- is_string: false,
111
+ type: Integer, # allow integers, strings both
114
112
  verify_block: proc do |value|
115
113
  UI.user_error!("shield_io_timeout needs to be an integer > 0") if value.to_i < 1
116
114
  end),
117
115
  FastlaneCore::ConfigItem.new(key: :glob,
118
116
  env_name: "FL_BADGE_GLOB",
119
117
  description: "Glob pattern for finding image files",
120
- optional: true,
121
- is_string: true),
118
+ optional: true),
122
119
  FastlaneCore::ConfigItem.new(key: :alpha_channel,
123
120
  env_name: "FL_BADGE_ALPHA_CHANNEL",
124
121
  description: "Keeps/adds an alpha channel to the icon (useful for android icons)",
125
122
  optional: true,
126
- is_string: false,
123
+ type: Boolean,
127
124
  verify_block: proc do |value|
128
125
  UI.user_error!("alpha_channel is only a flag and should always be true") unless value == true
129
126
  end),
130
127
  FastlaneCore::ConfigItem.new(key: :shield_gravity,
131
128
  env_name: "FL_BADGE_SHIELD_GRAVITY",
132
129
  description: "Position of shield on icon. Default: North - Choices include: NorthWest, North, NorthEast, West, Center, East, SouthWest, South, SouthEast",
133
- optional: true,
134
- is_string: true),
130
+ optional: true),
135
131
  FastlaneCore::ConfigItem.new(key: :shield_no_resize,
136
132
  env_name: "FL_BADGE_SHIELD_NO_RESIZE",
137
133
  description: "Shield image will no longer be resized to aspect fill the full icon. Instead it will only be shrunk to not exceed the icon graphic",
138
134
  optional: true,
139
- is_string: false,
135
+ type: Boolean,
140
136
  verify_block: proc do |value|
141
137
  UI.user_error!("shield_no_resize is only a flag and should always be true") unless value == true
142
138
  end)
@@ -21,7 +21,8 @@ module Fastlane
21
21
  other_action.appetize(path: zipped_bundle,
22
22
  api_token: params[:api_token],
23
23
  public_key: params[:public_key],
24
- note: params[:note])
24
+ note: params[:note],
25
+ timeout: params[:timeout])
25
26
 
26
27
  public_key = Actions.lane_context[SharedValues::APPETIZE_PUBLIC_KEY]
27
28
  UI.success("Generated Public Key: #{Actions.lane_context[SharedValues::APPETIZE_PUBLIC_KEY]}")
@@ -63,10 +64,9 @@ module Fastlane
63
64
  env_name: "APPETIZE_API_TOKEN",
64
65
  description: "Appetize.io API Token",
65
66
  sensitive: true,
66
- is_string: true),
67
+ code_gen_sensitive: true),
67
68
  FastlaneCore::ConfigItem.new(key: :public_key,
68
69
  description: "If not provided, a new app will be created. If provided, the existing build will be overwritten",
69
- is_string: true,
70
70
  optional: true,
71
71
  verify_block: proc do |value|
72
72
  if value.start_with?("private_")
@@ -75,8 +75,14 @@ module Fastlane
75
75
  end),
76
76
  FastlaneCore::ConfigItem.new(key: :note,
77
77
  description: "Notes you wish to add to the uploaded app",
78
- is_string: true,
79
- optional: true)
78
+ optional: true),
79
+ FastlaneCore::ConfigItem.new(key: :timeout,
80
+ description: "The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120",
81
+ type: Integer,
82
+ optional: true,
83
+ verify_block: proc do |value|
84
+ UI.user_error!("The value provided doesn't match any of the supported options.") unless [30, 60, 90, 120, 180, 300, 600, 1800, 3600, 7200].include?(value)
85
+ end)
80
86
  ]
81
87
  end
82
88
 
@@ -120,6 +120,10 @@ module Fastlane
120
120
  "The absolute path to the generated ipa file"
121
121
  end
122
122
 
123
+ def self.return_type
124
+ :string
125
+ end
126
+
123
127
  def self.author
124
128
  "KrauseFx"
125
129
  end
@@ -24,6 +24,8 @@ module Fastlane
24
24
  cmd << "--trust-policy" if params[:trust_policy]
25
25
  cmd << "--without #{params[:without]}" if params[:without]
26
26
  cmd << "--with #{params[:with]}" if params[:with]
27
+ cmd << "--frozen" if params[:frozen]
28
+ cmd << "--redownload" if params[:redownload]
27
29
 
28
30
  return sh(cmd.join(' '))
29
31
  else
@@ -72,12 +74,12 @@ module Fastlane
72
74
  FastlaneCore::ConfigItem.new(key: :clean,
73
75
  env_name: "FL_BUNDLE_INSTALL_CLEAN",
74
76
  description: "Run bundle clean automatically after install",
75
- is_string: false,
77
+ type: Boolean,
76
78
  default_value: false),
77
79
  FastlaneCore::ConfigItem.new(key: :full_index,
78
80
  env_name: "FL_BUNDLE_INSTALL_FULL_INDEX",
79
81
  description: "Use the rubygems modern index instead of the API endpoint",
80
- is_string: false,
82
+ type: Boolean,
81
83
  default_value: false),
82
84
  FastlaneCore::ConfigItem.new(key: :gemfile,
83
85
  env_name: "FL_BUNDLE_INSTALL_GEMFILE",
@@ -86,28 +88,27 @@ module Fastlane
86
88
  FastlaneCore::ConfigItem.new(key: :jobs,
87
89
  env_name: "FL_BUNDLE_INSTALL_JOBS",
88
90
  description: "Install gems using parallel workers",
89
- is_string: false,
90
91
  type: Boolean,
91
92
  optional: true),
92
93
  FastlaneCore::ConfigItem.new(key: :local,
93
94
  env_name: "FL_BUNDLE_INSTALL_LOCAL",
94
95
  description: "Do not attempt to fetch gems remotely and use the gem cache instead",
95
- is_string: false,
96
+ type: Boolean,
96
97
  default_value: false),
97
98
  FastlaneCore::ConfigItem.new(key: :deployment,
98
99
  env_name: "FL_BUNDLE_INSTALL_DEPLOYMENT",
99
100
  description: "Install using defaults tuned for deployment and CI environments",
100
- is_string: false,
101
+ type: Boolean,
101
102
  default_value: false),
102
103
  FastlaneCore::ConfigItem.new(key: :no_cache,
103
104
  env_name: "FL_BUNDLE_INSTALL_NO_CACHE",
104
105
  description: "Don't update the existing gem cache",
105
- is_string: false,
106
+ type: Boolean,
106
107
  default_value: false),
107
108
  FastlaneCore::ConfigItem.new(key: :no_prune,
108
109
  env_name: "FL_BUNDLE_INSTALL_NO_PRUNE",
109
110
  description: "Don't remove stale gems from the cache",
110
- is_string: false,
111
+ type: Boolean,
111
112
  default_value: false),
112
113
  FastlaneCore::ConfigItem.new(key: :path,
113
114
  env_name: "FL_BUNDLE_INSTALL_PATH",
@@ -116,17 +117,16 @@ module Fastlane
116
117
  FastlaneCore::ConfigItem.new(key: :system,
117
118
  env_name: "FL_BUNDLE_INSTALL_SYSTEM",
118
119
  description: "Install to the system location ($BUNDLE_PATH or $GEM_HOME) even if the bundle was previously installed somewhere else for this application",
119
- is_string: false,
120
+ type: Boolean,
120
121
  default_value: false),
121
122
  FastlaneCore::ConfigItem.new(key: :quiet,
122
123
  env_name: "FL_BUNDLE_INSTALL_QUIET",
123
124
  description: "Only output warnings and errors",
124
- is_string: false,
125
+ type: Boolean,
125
126
  default_value: false),
126
127
  FastlaneCore::ConfigItem.new(key: :retry,
127
128
  env_name: "FL_BUNDLE_INSTALL_RETRY",
128
129
  description: "Retry network and git requests that have failed",
129
- is_string: false,
130
130
  type: Boolean,
131
131
  optional: true),
132
132
  FastlaneCore::ConfigItem.new(key: :shebang,
@@ -148,7 +148,17 @@ module Fastlane
148
148
  FastlaneCore::ConfigItem.new(key: :with,
149
149
  env_name: "FL_BUNDLE_INSTALL_WITH",
150
150
  description: "Include gems that are part of the specified named group",
151
- optional: true)
151
+ optional: true),
152
+ FastlaneCore::ConfigItem.new(key: :frozen,
153
+ env_name: "FL_BUNDLE_INSTALL_FROZEN",
154
+ description: "Don't allow the Gemfile.lock to be updated after install",
155
+ type: Boolean,
156
+ default_value: false),
157
+ FastlaneCore::ConfigItem.new(key: :redownload,
158
+ env_name: "FL_BUNDLE_INSTALL_REDOWNLOAD",
159
+ description: "Force download every gem, even if the required versions are already available locally",
160
+ type: Boolean,
161
+ default_value: false)
152
162
  ]
153
163
  end
154
164
  end
@@ -33,6 +33,8 @@ module Fastlane
33
33
  cmd << "--cache-builds" if params[:cache_builds]
34
34
  cmd << "--new-resolver" if params[:new_resolver]
35
35
  cmd << "--log-path #{params[:log_path]}" if params[:log_path]
36
+ cmd << "--use-xcframeworks" if params[:use_xcframeworks]
37
+ cmd << "--archive" if params[:archive]
36
38
 
37
39
  Actions.sh(cmd.join(' '))
38
40
  end
@@ -50,6 +52,14 @@ module Fastlane
50
52
  if params[:log_path] && !%w(build bootstrap update).include?(command_name)
51
53
  UI.user_error!("Log path option is available only for 'build', 'bootstrap', and 'update' command.")
52
54
  end
55
+
56
+ if params[:use_xcframeworks] && !%w(build bootstrap update).include?(command_name)
57
+ UI.user_error!("Use XCFrameworks option is available only for 'build', 'bootstrap', and 'update' command.")
58
+ end
59
+
60
+ if command_name != "build" && params[:archive]
61
+ UI.user_error!("Archive option is available only for 'build' command.")
62
+ end
53
63
  end
54
64
 
55
65
  def self.description
@@ -76,48 +86,40 @@ module Fastlane
76
86
  FastlaneCore::ConfigItem.new(key: :dependencies,
77
87
  description: "Carthage dependencies to update, build or bootstrap",
78
88
  default_value: [],
79
- is_string: false,
80
89
  type: Array),
81
90
  FastlaneCore::ConfigItem.new(key: :use_ssh,
82
91
  env_name: "FL_CARTHAGE_USE_SSH",
83
92
  description: "Use SSH for downloading GitHub repositories",
84
- is_string: false,
85
93
  type: Boolean,
86
94
  optional: true),
87
95
  FastlaneCore::ConfigItem.new(key: :use_submodules,
88
96
  env_name: "FL_CARTHAGE_USE_SUBMODULES",
89
97
  description: "Add dependencies as Git submodules",
90
- is_string: false,
91
98
  type: Boolean,
92
99
  optional: true),
93
100
  FastlaneCore::ConfigItem.new(key: :use_netrc,
94
101
  env_name: "FL_CARTHAGE_USE_NETRC",
95
102
  description: "Use .netrc for downloading frameworks",
96
- is_string: false,
97
103
  type: Boolean,
98
104
  optional: true),
99
105
  FastlaneCore::ConfigItem.new(key: :use_binaries,
100
106
  env_name: "FL_CARTHAGE_USE_BINARIES",
101
107
  description: "Check out dependency repositories even when prebuilt frameworks exist",
102
- is_string: false,
103
108
  type: Boolean,
104
109
  optional: true),
105
110
  FastlaneCore::ConfigItem.new(key: :no_checkout,
106
111
  env_name: "FL_CARTHAGE_NO_CHECKOUT",
107
112
  description: "When bootstrapping Carthage do not checkout",
108
- is_string: false,
109
113
  type: Boolean,
110
114
  optional: true),
111
115
  FastlaneCore::ConfigItem.new(key: :no_build,
112
116
  env_name: "FL_CARTHAGE_NO_BUILD",
113
117
  description: "When bootstrapping Carthage do not build",
114
- is_string: false,
115
118
  type: Boolean,
116
119
  optional: true),
117
120
  FastlaneCore::ConfigItem.new(key: :no_skip_current,
118
121
  env_name: "FL_CARTHAGE_NO_SKIP_CURRENT",
119
122
  description: "Don't skip building the Carthage project (in addition to its dependencies)",
120
- is_string: false,
121
123
  type: Boolean,
122
124
  optional: true),
123
125
  FastlaneCore::ConfigItem.new(key: :derived_data,
@@ -127,7 +129,6 @@ module Fastlane
127
129
  FastlaneCore::ConfigItem.new(key: :verbose,
128
130
  env_name: "FL_CARTHAGE_VERBOSE",
129
131
  description: "Print xcodebuild output inline",
130
- is_string: false,
131
132
  type: Boolean,
132
133
  optional: true),
133
134
  FastlaneCore::ConfigItem.new(key: :platform,
@@ -142,16 +143,14 @@ module Fastlane
142
143
  FastlaneCore::ConfigItem.new(key: :cache_builds,
143
144
  env_name: "FL_CARTHAGE_CACHE_BUILDS",
144
145
  description: "By default Carthage will rebuild a dependency regardless of whether it's the same resolved version as before. Passing the --cache-builds will cause carthage to avoid rebuilding a dependency if it can",
145
- is_string: false,
146
+ type: Boolean,
146
147
  default_value: false),
147
148
  FastlaneCore::ConfigItem.new(key: :frameworks,
148
149
  description: "Framework name or names to archive, could be applied only along with the archive command",
149
150
  default_value: [],
150
- is_string: false,
151
151
  type: Array),
152
152
  FastlaneCore::ConfigItem.new(key: :output,
153
153
  description: "Output name for the archive, could be applied only along with the archive command. Use following format *.framework.zip",
154
- is_string: true,
155
154
  optional: true,
156
155
  verify_block: proc do |value|
157
156
  UI.user_error!("Please pass a valid string for output. Use following format *.framework.zip") unless value.end_with?("framework.zip")
@@ -176,13 +175,22 @@ module Fastlane
176
175
  FastlaneCore::ConfigItem.new(key: :new_resolver,
177
176
  env_name: "FL_CARTHAGE_NEW_RESOLVER",
178
177
  description: "Use new resolver when resolving dependency graph",
179
- is_string: false,
180
178
  optional: true,
181
179
  type: Boolean),
182
180
  FastlaneCore::ConfigItem.new(key: :log_path,
183
181
  env_name: "FL_CARTHAGE_LOG_PATH",
184
182
  description: "Path to the xcode build output",
185
183
  optional: true),
184
+ FastlaneCore::ConfigItem.new(key: :use_xcframeworks,
185
+ env_name: "FL_CARTHAGE_USE_XCFRAMEWORKS",
186
+ description: "Create xcframework bundles instead of one framework per platform (requires Xcode 12+)",
187
+ type: Boolean,
188
+ default_value: false),
189
+ FastlaneCore::ConfigItem.new(key: :archive,
190
+ env_name: "FL_CARTHAGE_ARCHIVE",
191
+ description: "Archive built frameworks from the current project",
192
+ type: Boolean,
193
+ default_value: false),
186
194
  FastlaneCore::ConfigItem.new(key: :executable,
187
195
  env_name: "FL_CARTHAGE_EXECUTABLE",
188
196
  description: "Path to the `carthage` executable on your machine",
@@ -208,7 +216,7 @@ module Fastlane
208
216
  configuration: "Release", # Build configuration to use when building
209
217
  cache_builds: true, # By default Carthage will rebuild a dependency regardless of whether its the same resolved version as before.
210
218
  toolchain: "com.apple.dt.toolchain.Swift_2_3", # Specify the xcodebuild toolchain
211
- new_resolver: false, # Use the new resolver to resolve depdendency graph
219
+ new_resolver: false, # Use the new resolver to resolve dependency graph
212
220
  log_path: "carthage.log" # Path to the xcode build output
213
221
  )'
214
222
  ]
@@ -79,22 +79,16 @@ module Fastlane
79
79
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_BETWEEN',
80
80
  description: 'Array containing two Git revision values between which to collect messages, you mustn\'t use it with :commits_count key at the same time',
81
81
  optional: true,
82
- is_string: false,
82
+ type: Array, # allow Array, String both
83
83
  conflicting_options: [:commits_count],
84
84
  verify_block: proc do |value|
85
- if value.kind_of?(String)
86
- UI.user_error!(":between must contain comma") unless value.include?(',')
87
- else
88
- UI.user_error!(":between must be of type array") unless value.kind_of?(Array)
89
- UI.user_error!(":between must not contain nil values") if value.any?(&:nil?)
90
- UI.user_error!(":between must be an array of size 2") unless (value || []).size == 2
91
- end
85
+ UI.user_error!(":between must not contain nil values") if value.any?(&:nil?)
86
+ UI.user_error!(":between must be an array of size 2") unless (value || []).size == 2
92
87
  end),
93
88
  FastlaneCore::ConfigItem.new(key: :commits_count,
94
89
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_COUNT',
95
90
  description: 'Number of commits to include in changelog, you mustn\'t use it with :between key at the same time',
96
91
  optional: true,
97
- is_string: false,
98
92
  conflicting_options: [:between],
99
93
  type: Integer,
100
94
  verify_block: proc do |value|
@@ -109,19 +103,17 @@ module Fastlane
109
103
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_PRETTY',
110
104
  description: 'The format applied to each commit while generating the collected value',
111
105
  optional: true,
112
- default_value: '%B',
113
- is_string: true),
106
+ default_value: '%B'),
114
107
  FastlaneCore::ConfigItem.new(key: :date_format,
115
108
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_DATE_FORMAT',
116
109
  description: 'The date format applied to each commit while generating the collected value',
117
- optional: true,
118
- is_string: true),
110
+ optional: true),
119
111
  FastlaneCore::ConfigItem.new(key: :ancestry_path,
120
112
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_ANCESTRY_PATH',
121
113
  description: 'Whether or not to use ancestry-path param',
122
114
  optional: true,
123
115
  default_value: false,
124
- is_string: false),
116
+ type: Boolean),
125
117
  FastlaneCore::ConfigItem.new(key: :tag_match_pattern,
126
118
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_TAG_MATCH_PATTERN',
127
119
  description: 'A glob(7) pattern to match against when finding the last git tag',
@@ -131,19 +123,18 @@ module Fastlane
131
123
  description: 'Whether or not to match a lightweight tag when searching for the last one',
132
124
  optional: true,
133
125
  default_value: true,
134
- is_string: false),
126
+ type: Boolean),
135
127
  FastlaneCore::ConfigItem.new(key: :quiet,
136
128
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_TAG_QUIET',
137
129
  description: 'Whether or not to disable changelog output',
138
130
  optional: true,
139
131
  default_value: false,
140
- is_string: false),
132
+ type: Boolean),
141
133
  FastlaneCore::ConfigItem.new(key: :include_merges,
142
134
  deprecated: "Use `:merge_commit_filtering` instead",
143
135
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_INCLUDE_MERGES',
144
136
  description: "Whether or not to include any commits that are merges",
145
137
  optional: true,
146
- is_string: false,
147
138
  type: Boolean,
148
139
  verify_block: proc do |value|
149
140
  UI.important("The :include_merges option is deprecated. Please use :merge_commit_filtering instead") unless value.nil?
@@ -41,6 +41,7 @@ module Fastlane
41
41
  env_name: "CHATWORK_API_TOKEN",
42
42
  description: "ChatWork API Token",
43
43
  sensitive: true,
44
+ code_gen_sensitive: true,
44
45
  verify_block: proc do |value|
45
46
  unless value.to_s.length > 0
46
47
  UI.error("Please add 'ENV[\"CHATWORK_API_TOKEN\"] = \"your token\"' to your Fastfile's `before_all` section.")
@@ -53,13 +54,13 @@ module Fastlane
53
54
  FastlaneCore::ConfigItem.new(key: :roomid,
54
55
  env_name: "FL_CHATWORK_ROOMID",
55
56
  description: "The room ID",
56
- is_string: false),
57
+ type: Integer),
57
58
  FastlaneCore::ConfigItem.new(key: :success,
58
59
  env_name: "FL_CHATWORK_SUCCESS",
59
60
  description: "Was this build successful? (true/false)",
60
61
  optional: true,
61
62
  default_value: true,
62
- is_string: false)
63
+ type: Boolean)
63
64
  ]
64
65
  end
65
66
 
@@ -5,9 +5,13 @@ module Fastlane
5
5
 
6
6
  class CheckAppStoreMetadataAction < Action
7
7
  def self.run(config)
8
+ # Only set :api_key from SharedValues if :api_key_path isn't set (conflicting options)
9
+ unless config[:api_key_path]
10
+ config[:api_key] ||= Actions.lane_context[SharedValues::APP_STORE_CONNECT_API_KEY]
11
+ end
12
+
8
13
  require 'precheck'
9
14
  Precheck.config = config
10
- Precheck.config[:api_key] ||= Actions.lane_context[SharedValues::APP_STORE_CONNECT_API_KEY]
11
15
  return Precheck::Runner.new.run
12
16
  end
13
17
 
@@ -28,6 +32,10 @@ module Fastlane
28
32
  return "true if precheck passes, else, false"
29
33
  end
30
34
 
35
+ def self.return_type
36
+ :bool
37
+ end
38
+
31
39
  def self.authors
32
40
  ["taquitos"]
33
41
  end
@@ -33,7 +33,6 @@ module Fastlane
33
33
  FastlaneCore::ConfigItem.new(key: :exclude_pattern,
34
34
  env_name: "FL_CLEAN_BUILD_ARTIFACTS_EXCLUDE_PATTERN",
35
35
  description: "Exclude all files from clearing that match the given Regex pattern: e.g. '.*\.mobileprovision'",
36
- default_value: nil,
37
36
  optional: true)
38
37
  ]
39
38
  end
@@ -7,6 +7,10 @@ module Fastlane
7
7
  cmd = ['pod cache clean']
8
8
 
9
9
  cmd << params[:name].to_s if params[:name]
10
+ cmd << '--no-ansi' if params[:no_ansi]
11
+ cmd << '--verbose' if params[:verbose]
12
+ cmd << '--silent' if params[:silent]
13
+ cmd << '--allow-root' if params[:allow_root]
10
14
  cmd << '--all'
11
15
 
12
16
  Actions.sh(cmd.join(' '))
@@ -22,10 +26,29 @@ module Fastlane
22
26
  env_name: "FL_CLEAN_COCOAPODS_CACHE_DEVELOPMENT",
23
27
  description: "Pod name to be removed from cache",
24
28
  optional: true,
25
- is_string: true,
26
29
  verify_block: proc do |value|
27
30
  UI.user_error!("You must specify pod name which should be removed from cache") if value.to_s.empty?
28
- end)
31
+ end),
32
+ FastlaneCore::ConfigItem.new(key: :no_ansi,
33
+ env_name: "FL_CLEAN_COCOAPODS_CACHE_NO_ANSI",
34
+ description: "Show output without ANSI codes",
35
+ type: Boolean,
36
+ default_value: false),
37
+ FastlaneCore::ConfigItem.new(key: :verbose,
38
+ env_name: "FL_CLEAN_COCOAPODS_CACHE_VERBOSE",
39
+ description: "Show more debugging information",
40
+ type: Boolean,
41
+ default_value: false),
42
+ FastlaneCore::ConfigItem.new(key: :silent,
43
+ env_name: "FL_CLEAN_COCOAPODS_CACHE_SILENT",
44
+ description: "Show nothing",
45
+ type: Boolean,
46
+ default_value: false),
47
+ FastlaneCore::ConfigItem.new(key: :allow_root,
48
+ env_name: "FL_CLEAN_COCOAPODS_CACHE_ALLOW_ROOT",
49
+ description: "Allows CocoaPods to run as root",
50
+ type: Boolean,
51
+ default_value: false)
29
52
  ]
30
53
  end
31
54
 
@@ -7,10 +7,7 @@ module Fastlane
7
7
  truncated_value = value[0..800].gsub(/\s\w+\s*$/, '...')
8
8
  UI.message("Storing '#{truncated_value}' in the clipboard 🎨")
9
9
 
10
- if FastlaneCore::Helper.mac?
11
- require 'open3'
12
- Open3.popen3('pbcopy') { |input, _, _| input << value }
13
- end
10
+ FastlaneCore::Clipboard.copy(content: value)
14
11
  end
15
12
 
16
13
  #####################################################
@@ -30,11 +27,11 @@ module Fastlane
30
27
  end
31
28
 
32
29
  def self.authors
33
- ["KrauseFx", "joshdholtz"]
30
+ ["KrauseFx", "joshdholtz", "rogerluan"]
34
31
  end
35
32
 
36
33
  def self.is_supported?(platform)
37
- true
34
+ FastlaneCore::Clipboard.is_supported?
38
35
  end
39
36
 
40
37
  def self.example_code
@@ -38,28 +38,24 @@ module Fastlane
38
38
  env_name: "FL_CLOC_BINARY_PATH",
39
39
  description: "Where the cloc binary lives on your system (full path including 'cloc')",
40
40
  optional: true,
41
- is_string: true,
42
41
  default_value: '/usr/local/bin/cloc'),
43
42
  FastlaneCore::ConfigItem.new(key: :exclude_dir,
44
43
  env_name: "FL_CLOC_EXCLUDE_DIR",
45
- description: "Comma separated list of directories to exclude", # a short description of this parameter
46
- optional: true,
47
- is_string: true),
44
+ description: "Comma separated list of directories to exclude",
45
+ optional: true),
48
46
  FastlaneCore::ConfigItem.new(key: :output_directory,
49
47
  env_name: "FL_CLOC_OUTPUT_DIRECTORY",
50
48
  description: "Where to put the generated report file",
51
- is_string: true,
52
49
  default_value: "build"),
53
50
  FastlaneCore::ConfigItem.new(key: :source_directory,
54
- env_name: "FL_CLOC_SOURCE_DIRECTORY",
55
- description: "Where to look for the source code (relative to the project root folder)",
56
- is_string: true,
57
- default_value: ""),
51
+ env_name: "FL_CLOC_SOURCE_DIRECTORY",
52
+ description: "Where to look for the source code (relative to the project root folder)",
53
+ default_value: ""),
58
54
  FastlaneCore::ConfigItem.new(key: :xml,
59
- env_name: "FL_CLOC_XML",
60
- description: "Should we generate an XML File (if false, it will generate a plain text file)?",
61
- is_string: false,
62
- default_value: true)
55
+ env_name: "FL_CLOC_XML",
56
+ description: "Should we generate an XML File (if false, it will generate a plain text file)?",
57
+ type: Boolean,
58
+ default_value: true)
63
59
  ]
64
60
  end
65
61