fastlane 2.217.0 → 2.218.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (169) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +96 -96
  3. data/deliver/lib/deliver/app_screenshot.rb +2 -2
  4. data/deliver/lib/deliver/app_screenshot_iterator.rb +2 -2
  5. data/deliver/lib/deliver/detect_values.rb +1 -1
  6. data/deliver/lib/deliver/languages.rb +1 -1
  7. data/deliver/lib/deliver/loader.rb +2 -2
  8. data/deliver/lib/deliver/options.rb +4 -4
  9. data/deliver/lib/deliver/runner.rb +1 -1
  10. data/deliver/lib/deliver/sync_screenshots.rb +2 -2
  11. data/deliver/lib/deliver/upload_metadata.rb +4 -4
  12. data/deliver/lib/deliver/upload_price_tier.rb +1 -1
  13. data/deliver/lib/deliver/upload_screenshots.rb +3 -3
  14. data/fastlane/lib/fastlane/action.rb +1 -1
  15. data/fastlane/lib/fastlane/actions/appledoc.rb +1 -1
  16. data/fastlane/lib/fastlane/actions/apteligent.rb +1 -1
  17. data/fastlane/lib/fastlane/actions/backup_xcarchive.rb +1 -1
  18. data/fastlane/lib/fastlane/actions/commit_github_file.rb +2 -2
  19. data/fastlane/lib/fastlane/actions/copy_artifacts.rb +1 -1
  20. data/fastlane/lib/fastlane/actions/create_app_online.rb +1 -1
  21. data/fastlane/lib/fastlane/actions/create_pull_request.rb +1 -1
  22. data/fastlane/lib/fastlane/actions/get_certificates.rb +1 -1
  23. data/fastlane/lib/fastlane/actions/get_github_release.rb +1 -1
  24. data/fastlane/lib/fastlane/actions/get_provisioning_profile.rb +1 -1
  25. data/fastlane/lib/fastlane/actions/github_api.rb +1 -1
  26. data/fastlane/lib/fastlane/actions/gradle.rb +1 -1
  27. data/fastlane/lib/fastlane/actions/install_on_device.rb +1 -1
  28. data/fastlane/lib/fastlane/actions/ipa.rb +1 -1
  29. data/fastlane/lib/fastlane/actions/jazzy.rb +1 -1
  30. data/fastlane/lib/fastlane/actions/oclint.rb +3 -3
  31. data/fastlane/lib/fastlane/actions/opt_out_crash_reporting.rb +2 -2
  32. data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
  33. data/fastlane/lib/fastlane/actions/set_github_release.rb +1 -1
  34. data/fastlane/lib/fastlane/actions/slather.rb +1 -1
  35. data/fastlane/lib/fastlane/actions/sonar.rb +12 -3
  36. data/fastlane/lib/fastlane/actions/splunkmint.rb +1 -1
  37. data/fastlane/lib/fastlane/actions/spm.rb +76 -2
  38. data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
  39. data/fastlane/lib/fastlane/actions/update_urban_airship_configuration.rb +1 -1
  40. data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +1 -0
  41. data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +1 -1
  42. data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +2 -2
  43. data/fastlane/lib/fastlane/actions/verify_build.rb +7 -4
  44. data/fastlane/lib/fastlane/actions/xcov.rb +1 -1
  45. data/fastlane/lib/fastlane/cli_tools_distributor.rb +1 -1
  46. data/fastlane/lib/fastlane/command_line_handler.rb +2 -4
  47. data/fastlane/lib/fastlane/commands_generator.rb +2 -2
  48. data/fastlane/lib/fastlane/fast_file.rb +1 -1
  49. data/fastlane/lib/fastlane/helper/dotenv_helper.rb +1 -1
  50. data/fastlane/lib/fastlane/junit_generator.rb +1 -1
  51. data/fastlane/lib/fastlane/lane_manager.rb +1 -2
  52. data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +0 -11
  53. data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +5 -1
  54. data/fastlane/lib/fastlane/plugins/template/Gemfile.erb +27 -0
  55. data/fastlane/lib/fastlane/runner.rb +1 -1
  56. data/fastlane/lib/fastlane/setup/setup.rb +1 -1
  57. data/fastlane/lib/fastlane/swift_lane_manager.rb +2 -5
  58. data/fastlane/lib/fastlane/swift_runner_upgrader.rb +7 -4
  59. data/fastlane/lib/fastlane/version.rb +1 -1
  60. data/fastlane/swift/Actions.swift +1 -1
  61. data/fastlane/swift/Appfile.swift +1 -1
  62. data/fastlane/swift/ArgumentProcessor.swift +1 -1
  63. data/fastlane/swift/Atomic.swift +1 -1
  64. data/fastlane/swift/ControlCommand.swift +1 -1
  65. data/fastlane/swift/Deliverfile.swift +2 -2
  66. data/fastlane/swift/DeliverfileProtocol.swift +4 -4
  67. data/fastlane/swift/Fastlane.swift +79 -27
  68. data/fastlane/swift/Gymfile.swift +2 -2
  69. data/fastlane/swift/GymfileProtocol.swift +2 -2
  70. data/fastlane/swift/LaneFileProtocol.swift +5 -5
  71. data/fastlane/swift/MainProcess.swift +1 -1
  72. data/fastlane/swift/Matchfile.swift +2 -2
  73. data/fastlane/swift/MatchfileProtocol.swift +2 -2
  74. data/fastlane/swift/OptionalConfigValue.swift +1 -1
  75. data/fastlane/swift/Plugins.swift +1 -1
  76. data/fastlane/swift/Precheckfile.swift +2 -2
  77. data/fastlane/swift/PrecheckfileProtocol.swift +2 -2
  78. data/fastlane/swift/RubyCommand.swift +1 -1
  79. data/fastlane/swift/RubyCommandable.swift +1 -1
  80. data/fastlane/swift/Runner.swift +1 -1
  81. data/fastlane/swift/RunnerArgument.swift +1 -1
  82. data/fastlane/swift/Scanfile.swift +2 -2
  83. data/fastlane/swift/ScanfileProtocol.swift +2 -2
  84. data/fastlane/swift/Screengrabfile.swift +2 -2
  85. data/fastlane/swift/ScreengrabfileProtocol.swift +2 -2
  86. data/fastlane/swift/Snapshotfile.swift +2 -2
  87. data/fastlane/swift/SnapshotfileProtocol.swift +2 -2
  88. data/fastlane/swift/SocketClient.swift +1 -1
  89. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  90. data/fastlane/swift/SocketResponse.swift +1 -1
  91. data/fastlane/swift/formatting/Brewfile.lock.json +18 -18
  92. data/fastlane/swift/main.swift +1 -1
  93. data/fastlane_core/lib/fastlane_core/build_watcher.rb +1 -1
  94. data/fastlane_core/lib/fastlane_core/cert_checker.rb +2 -2
  95. data/fastlane_core/lib/fastlane_core/configuration/configuration_file.rb +1 -1
  96. data/fastlane_core/lib/fastlane_core/device_manager.rb +17 -15
  97. data/fastlane_core/lib/fastlane_core/fastlane_pty.rb +34 -12
  98. data/fastlane_core/lib/fastlane_core/helper.rb +1 -1
  99. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +5 -2
  100. data/fastlane_core/lib/fastlane_core/project.rb +3 -2
  101. data/fastlane_core/lib/fastlane_core/queue_worker.rb +1 -1
  102. data/fastlane_core/lib/fastlane_core/string_filters.rb +6 -6
  103. data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +2 -2
  104. data/frameit/lib/frameit/editor.rb +4 -4
  105. data/frameit/lib/frameit/trim_box.rb +1 -1
  106. data/gym/lib/gym/error_handler.rb +1 -1
  107. data/gym/lib/gym/generators/package_command_generator_xcode7.rb +3 -3
  108. data/gym/lib/gym/runner.rb +1 -1
  109. data/gym/lib/gym/xcodebuild_fixes/README.md +1 -1
  110. data/match/lib/match/generator.rb +9 -1
  111. data/match/lib/match/module.rb +2 -1
  112. data/match/lib/match/portal_cache.rb +106 -0
  113. data/match/lib/match/portal_fetcher.rb +72 -0
  114. data/match/lib/match/profile_includes.rb +120 -0
  115. data/match/lib/match/runner.rb +70 -169
  116. data/match/lib/match/spaceship_ensure.rb +15 -11
  117. data/match/lib/match/storage/git_storage.rb +8 -3
  118. data/match/lib/match/storage/gitlab/client.rb +1 -1
  119. data/match/lib/match/storage/gitlab_secure_files.rb +1 -1
  120. data/match/lib/match/storage/interface.rb +1 -1
  121. data/match/lib/match/storage/s3_storage.rb +1 -1
  122. data/match/lib/match.rb +3 -0
  123. data/produce/lib/produce/itunes_connect.rb +1 -1
  124. data/scan/lib/scan/detect_values.rb +78 -20
  125. data/scan/lib/scan/options.rb +1 -1
  126. data/scan/lib/scan/runner.rb +1 -1
  127. data/screengrab/lib/screengrab/runner.rb +1 -1
  128. data/sigh/lib/assets/resign.sh +10 -10
  129. data/sigh/lib/sigh/commands_generator.rb +1 -1
  130. data/sigh/lib/sigh/module.rb +98 -0
  131. data/sigh/lib/sigh/options.rb +55 -1
  132. data/sigh/lib/sigh/resign.rb +1 -1
  133. data/sigh/lib/sigh/runner.rb +35 -111
  134. data/snapshot/lib/snapshot/setup.rb +2 -2
  135. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher.rb +23 -22
  136. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +2 -2
  137. data/spaceship/lib/spaceship/client.rb +1 -1
  138. data/spaceship/lib/spaceship/connect_api/api_client.rb +1 -1
  139. data/spaceship/lib/spaceship/connect_api/client.rb +4 -4
  140. data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +2 -0
  141. data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +2 -2
  142. data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +2 -2
  143. data/spaceship/lib/spaceship/connect_api/models/certificate.rb +2 -2
  144. data/spaceship/lib/spaceship/connect_api/models/device.rb +82 -3
  145. data/spaceship/lib/spaceship/connect_api/models/profile.rb +3 -2
  146. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +3 -3
  147. data/spaceship/lib/spaceship/connect_api.rb +2 -0
  148. data/spaceship/lib/spaceship/portal/app.rb +1 -1
  149. data/spaceship/lib/spaceship/portal/app_group.rb +1 -1
  150. data/spaceship/lib/spaceship/test_flight/client.rb +1 -1
  151. data/spaceship/lib/spaceship/test_flight/tester.rb +1 -1
  152. data/spaceship/lib/spaceship/tunes/app_details.rb +2 -2
  153. data/spaceship/lib/spaceship/tunes/app_image.rb +1 -1
  154. data/spaceship/lib/spaceship/tunes/app_review_attachment.rb +1 -1
  155. data/spaceship/lib/spaceship/tunes/app_submission.rb +1 -1
  156. data/spaceship/lib/spaceship/tunes/app_version.rb +5 -5
  157. data/spaceship/lib/spaceship/tunes/build_details.rb +1 -1
  158. data/spaceship/lib/spaceship/tunes/iap.rb +3 -3
  159. data/spaceship/lib/spaceship/tunes/iap_detail.rb +2 -2
  160. data/spaceship/lib/spaceship/tunes/iap_families.rb +1 -1
  161. data/spaceship/lib/spaceship/tunes/iap_family_details.rb +2 -2
  162. data/spaceship/lib/spaceship/tunes/iap_family_list.rb +1 -1
  163. data/spaceship/lib/spaceship/tunes/tunes_client.rb +2 -2
  164. data/supply/lib/supply/client.rb +1 -1
  165. data/supply/lib/supply/setup.rb +1 -1
  166. data/trainer/lib/trainer/junit_generator.rb +1 -1
  167. data/trainer/lib/trainer/test_parser.rb +1 -1
  168. metadata +26 -289
  169. data/fastlane/lib/fastlane/plugins/template/Gemfile +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e01e5f95c0f041f81a6d2865261a7bf02a4edc77c8e3e7d0d42fdccc93a9eab3
4
- data.tar.gz: 2f9e98e9d81c4035378505cbf6e3d18cffd680ed3d3c6d8bab31b3be8e7f9a70
3
+ metadata.gz: 207ef9c2fe4564f7949fc47ec3693583185a7cf46cdeebcab96485d4b0a9ffa1
4
+ data.tar.gz: 80053bd7ef7de964bf4b3ddeeab4698b149cf8bc2cccbe1355d5f8d49de541b2
5
5
  SHA512:
6
- metadata.gz: 0e43d45ef9b768b1eba630e1148a9f31f7b356a63977fea8fa45262c0d18a0e952c36e7208654f2b11dcfcb207a2a753b2b7e5820d9a9b209f87954f8048414b
7
- data.tar.gz: 2177260881cd3aab9d3b7b5542cfc526a4140eb5707108ea346146a2e2da19b3edf627d8013aa7b71b07df5df0a9571d5d0af474dd611f0871cf9339cc6addf9
6
+ metadata.gz: a9ea4c0b0093fcceed9e353ece98359675754b8ab17b7e2b2a8f3efd6da34f6ad012e7fb2aca9ff33c08022195e5fd271db52db6d51ca3dbbb6472bec76e95eb
7
+ data.tar.gz: edb1ba5f075dce4d8a43af1e12ef886f0c572f416255818f1878c5ea14cd93c5d67105882fc999a7d794f2ad1ab1e0a8293c35c028e72fa9254b9d28924074bf
data/README.md CHANGED
@@ -35,23 +35,23 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
35
35
  <!-- This table is regenerated and resorted on each release -->
36
36
  <table id='team'>
37
37
  <tr>
38
- <td id='jimmy-dee'>
39
- <a href='https://github.com/jdee'>
40
- <img src='https://github.com/jdee.png' width='140px;'>
38
+ <td id='roger-oba'>
39
+ <a href='https://github.com/rogerluan'>
40
+ <img src='https://github.com/rogerluan.png' width='140px;'>
41
41
  </a>
42
- <h4 align='center'>Jimmy Dee</h4>
42
+ <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
43
43
  </td>
44
- <td id='andrew-mcburney'>
45
- <a href='https://github.com/armcburney'>
46
- <img src='https://github.com/armcburney.png' width='140px;'>
44
+ <td id='fumiya-nakamura'>
45
+ <a href='https://github.com/nafu'>
46
+ <img src='https://github.com/nafu.png' width='140px;'>
47
47
  </a>
48
- <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
48
+ <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
49
49
  </td>
50
- <td id='joshua-liebowitz'>
51
- <a href='https://github.com/taquitos'>
52
- <img src='https://github.com/taquitos.png' width='140px;'>
50
+ <td id='danielle-tomlinson'>
51
+ <a href='https://github.com/endocrimes'>
52
+ <img src='https://github.com/endocrimes.png' width='140px;'>
53
53
  </a>
54
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
54
+ <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
55
55
  </td>
56
56
  <td id='max-ott'>
57
57
  <a href='https://github.com/max-ott'>
@@ -59,69 +59,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
59
59
  </a>
60
60
  <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
61
61
  </td>
62
- <td id='jan-piotrowski'>
63
- <a href='https://github.com/janpio'>
64
- <img src='https://github.com/janpio.png' width='140px;'>
65
- </a>
66
- <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
67
- </td>
68
- </tr>
69
- <tr>
70
- <td id='olivier-halligon'>
71
- <a href='https://github.com/AliSoftware'>
72
- <img src='https://github.com/AliSoftware.png' width='140px;'>
73
- </a>
74
- <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
75
- </td>
76
- <td id='josh-holtz'>
77
- <a href='https://github.com/joshdholtz'>
78
- <img src='https://github.com/joshdholtz.png' width='140px;'>
79
- </a>
80
- <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
81
- </td>
82
- <td id='aaron-brager'>
83
- <a href='https://github.com/getaaron'>
84
- <img src='https://github.com/getaaron.png' width='140px;'>
85
- </a>
86
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
87
- </td>
88
- <td id='roger-oba'>
89
- <a href='https://github.com/rogerluan'>
90
- <img src='https://github.com/rogerluan.png' width='140px;'>
91
- </a>
92
- <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
93
- </td>
94
- <td id='matthew-ellis'>
95
- <a href='https://github.com/matthewellis'>
96
- <img src='https://github.com/matthewellis.png' width='140px;'>
62
+ <td id='jorge-revuelta-h'>
63
+ <a href='https://github.com/minuscorp'>
64
+ <img src='https://github.com/minuscorp.png' width='140px;'>
97
65
  </a>
98
- <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
66
+ <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
99
67
  </td>
100
68
  </tr>
101
69
  <tr>
102
- <td id='satoshi-namai'>
103
- <a href='https://github.com/ainame'>
104
- <img src='https://github.com/ainame.png' width='140px;'>
105
- </a>
106
- <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
107
- </td>
108
70
  <td id='maksym-grebenets'>
109
71
  <a href='https://github.com/mgrebenets'>
110
72
  <img src='https://github.com/mgrebenets.png' width='140px;'>
111
73
  </a>
112
74
  <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
113
75
  </td>
114
- <td id='danielle-tomlinson'>
115
- <a href='https://github.com/endocrimes'>
116
- <img src='https://github.com/endocrimes.png' width='140px;'>
76
+ <td id='satoshi-namai'>
77
+ <a href='https://github.com/ainame'>
78
+ <img src='https://github.com/ainame.png' width='140px;'>
117
79
  </a>
118
- <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
80
+ <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
119
81
  </td>
120
- <td id='kohki-miki'>
121
- <a href='https://github.com/giginet'>
122
- <img src='https://github.com/giginet.png' width='140px;'>
82
+ <td id='matthew-ellis'>
83
+ <a href='https://github.com/matthewellis'>
84
+ <img src='https://github.com/matthewellis.png' width='140px;'>
123
85
  </a>
124
- <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
86
+ <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
125
87
  </td>
126
88
  <td id='manu-wallner'>
127
89
  <a href='https://github.com/milch'>
@@ -129,57 +91,51 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
129
91
  </a>
130
92
  <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
131
93
  </td>
132
- </tr>
133
- <tr>
134
- <td id='jorge-revuelta-h'>
135
- <a href='https://github.com/minuscorp'>
136
- <img src='https://github.com/minuscorp.png' width='140px;'>
137
- </a>
138
- <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
139
- </td>
140
94
  <td id='łukasz-grabowski'>
141
95
  <a href='https://github.com/lucgrabowski'>
142
96
  <img src='https://github.com/lucgrabowski.png' width='140px;'>
143
97
  </a>
144
98
  <h4 align='center'>Łukasz Grabowski</h4>
145
99
  </td>
146
- <td id='fumiya-nakamura'>
147
- <a href='https://github.com/nafu'>
148
- <img src='https://github.com/nafu.png' width='140px;'>
100
+ </tr>
101
+ <tr>
102
+ <td id='josh-holtz'>
103
+ <a href='https://github.com/joshdholtz'>
104
+ <img src='https://github.com/joshdholtz.png' width='140px;'>
149
105
  </a>
150
- <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
106
+ <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
151
107
  </td>
152
- <td id='stefan-natchev'>
153
- <a href='https://github.com/snatchev'>
154
- <img src='https://github.com/snatchev.png' width='140px;'>
108
+ <td id='kohki-miki'>
109
+ <a href='https://github.com/giginet'>
110
+ <img src='https://github.com/giginet.png' width='140px;'>
155
111
  </a>
156
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
112
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
157
113
  </td>
158
- <td id='luka-mirosevic'>
159
- <a href='https://github.com/lmirosevic'>
160
- <img src='https://github.com/lmirosevic.png' width='140px;'>
114
+ <td id='olivier-halligon'>
115
+ <a href='https://github.com/AliSoftware'>
116
+ <img src='https://github.com/AliSoftware.png' width='140px;'>
161
117
  </a>
162
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
118
+ <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
163
119
  </td>
164
- </tr>
165
- <tr>
166
120
  <td id='manish-rathi'>
167
121
  <a href='https://github.com/crazymanish'>
168
122
  <img src='https://github.com/crazymanish.png' width='140px;'>
169
123
  </a>
170
124
  <h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
171
125
  </td>
172
- <td id='jérôme-lacoste'>
173
- <a href='https://github.com/lacostej'>
174
- <img src='https://github.com/lacostej.png' width='140px;'>
126
+ <td id='andrew-mcburney'>
127
+ <a href='https://github.com/armcburney'>
128
+ <img src='https://github.com/armcburney.png' width='140px;'>
175
129
  </a>
176
- <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
130
+ <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
177
131
  </td>
178
- <td id='daniel-jankowski'>
179
- <a href='https://github.com/mollyIV'>
180
- <img src='https://github.com/mollyIV.png' width='140px;'>
132
+ </tr>
133
+ <tr>
134
+ <td id='helmut-januschka'>
135
+ <a href='https://github.com/hjanuschka'>
136
+ <img src='https://github.com/hjanuschka.png' width='140px;'>
181
137
  </a>
182
- <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
138
+ <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
183
139
  </td>
184
140
  <td id='felix-krause'>
185
141
  <a href='https://github.com/KrauseFx'>
@@ -187,20 +143,64 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
187
143
  </a>
188
144
  <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
189
145
  </td>
190
- <td id='helmut-januschka'>
191
- <a href='https://github.com/hjanuschka'>
192
- <img src='https://github.com/hjanuschka.png' width='140px;'>
146
+ <td id='jérôme-lacoste'>
147
+ <a href='https://github.com/lacostej'>
148
+ <img src='https://github.com/lacostej.png' width='140px;'>
193
149
  </a>
194
- <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
150
+ <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
151
+ </td>
152
+ <td id='aaron-brager'>
153
+ <a href='https://github.com/getaaron'>
154
+ <img src='https://github.com/getaaron.png' width='140px;'>
155
+ </a>
156
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
157
+ </td>
158
+ <td id='joshua-liebowitz'>
159
+ <a href='https://github.com/taquitos'>
160
+ <img src='https://github.com/taquitos.png' width='140px;'>
161
+ </a>
162
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
195
163
  </td>
196
164
  </tr>
197
165
  <tr>
166
+ <td id='jimmy-dee'>
167
+ <a href='https://github.com/jdee'>
168
+ <img src='https://github.com/jdee.png' width='140px;'>
169
+ </a>
170
+ <h4 align='center'>Jimmy Dee</h4>
171
+ </td>
198
172
  <td id='iulian-onofrei'>
199
173
  <a href='https://github.com/revolter'>
200
174
  <img src='https://github.com/revolter.png' width='140px;'>
201
175
  </a>
202
176
  <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
203
177
  </td>
178
+ <td id='stefan-natchev'>
179
+ <a href='https://github.com/snatchev'>
180
+ <img src='https://github.com/snatchev.png' width='140px;'>
181
+ </a>
182
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
183
+ </td>
184
+ <td id='jan-piotrowski'>
185
+ <a href='https://github.com/janpio'>
186
+ <img src='https://github.com/janpio.png' width='140px;'>
187
+ </a>
188
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
189
+ </td>
190
+ <td id='daniel-jankowski'>
191
+ <a href='https://github.com/mollyIV'>
192
+ <img src='https://github.com/mollyIV.png' width='140px;'>
193
+ </a>
194
+ <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
195
+ </td>
196
+ </tr>
197
+ <tr>
198
+ <td id='luka-mirosevic'>
199
+ <a href='https://github.com/lmirosevic'>
200
+ <img src='https://github.com/lmirosevic.png' width='140px;'>
201
+ </a>
202
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
203
+ </td>
204
204
  </table>
205
205
 
206
206
  Special thanks to all [contributors](https://github.com/fastlane/fastlane/graphs/contributors) for extending and improving _fastlane_.
@@ -201,7 +201,7 @@ module Deliver
201
201
 
202
202
  def self.device_messages
203
203
  # This list does not include iPad Pro 12.9-inch (3rd generation)
204
- # because it has same resoluation as IOS_IPAD_PRO and will clobber
204
+ # because it has same resolution as IOS_IPAD_PRO and will clobber
205
205
  return {
206
206
  ScreenSize::IOS_67_MESSAGES => [
207
207
  [1290, 2796],
@@ -265,7 +265,7 @@ module Deliver
265
265
  # reference: https://help.apple.com/app-store-connect/#/devd274dd925
266
266
  def self.devices
267
267
  # This list does not include iPad Pro 12.9-inch (3rd generation)
268
- # because it has same resoluation as IOS_IPAD_PRO and will clobber
268
+ # because it has same resolution as IOS_IPAD_PRO and will clobber
269
269
  return {
270
270
  ScreenSize::IOS_67 => [
271
271
  [1290, 2796],
@@ -1,5 +1,5 @@
1
1
  module Deliver
2
- # This is a convinient class that enumerates app store connect's screenshots in various degrees.
2
+ # This is a convenient class that enumerates app store connect's screenshots in various degrees.
3
3
  class AppScreenshotIterator
4
4
  NUMBER_OF_THREADS = Helper.test? ? 1 : [ENV.fetch("DELIVER_NUMBER_OF_THREADS", 10).to_i, 10].min
5
5
 
@@ -59,7 +59,7 @@ module Deliver
59
59
  # @yieldparam [optional, Spaceship::ConnectAPI::AppStoreVersionLocalization] localization
60
60
  # @yieldparam [optional, Spaceship::ConnectAPI::AppStoreScreenshotSet] app_screenshot_set
61
61
  # @yieldparam [optional, Deliver::AppScreenshot] screenshot
62
- # @yieldparam [optional, Integer] index a number reperesents which position the screenshot will be
62
+ # @yieldparam [optional, Integer] index a number represents which position the screenshot will be
63
63
  def each_local_screenshot(screenshots_per_language, &block)
64
64
  return enum_for(__method__, screenshots_per_language) unless block_given?
65
65
 
@@ -92,7 +92,7 @@ module Deliver
92
92
  return unless languages
93
93
 
94
94
  # 2020-08-24 - Available locales are not available as an endpoint in App Store Connect
95
- # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is avilable)
95
+ # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is available)
96
96
  all_languages = Deliver::Languages::ALL_LANGUAGES
97
97
  diff = languages - all_languages
98
98
 
@@ -1,7 +1,7 @@
1
1
  module Deliver
2
2
  module Languages
3
3
  # 2020-08-24 - Available locales are not available as an endpoint in App Store Connect
4
- # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is avilable)
4
+ # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is available)
5
5
  ALL_LANGUAGES = %w[ar-SA ca cs da de-DE el en-AU en-CA en-GB en-US es-ES es-MX fi fr-CA fr-FR he hi hr hu id it ja ko ms nl-NL no pl pt-BR pt-PT ro ru sk sv th tr uk vi zh-Hans zh-Hant]
6
6
  end
7
7
  end
@@ -31,7 +31,7 @@ module Deliver
31
31
 
32
32
  def self.available_languages
33
33
  # 2020-08-24 - Available locales are not available as an endpoint in App Store Connect
34
- # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is avilable)
34
+ # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is available)
35
35
  Deliver::Languages::ALL_LANGUAGES
36
36
  end
37
37
 
@@ -40,7 +40,7 @@ module Deliver
40
40
  end
41
41
 
42
42
  # @param path [String] A directory path otherwise this initializer fails
43
- # @param nested [Boolan] Whether given path is nested of another special directory.
43
+ # @param nested [Boolean] Whether given path is nested of another special directory.
44
44
  # This affects `expandable?` to return `false` when this set to `true`.
45
45
  def initialize(path, nested: false)
46
46
  raise(ArgumentError, "Given path must be a directory path - #{path}") unless File.directory?(path)
@@ -186,12 +186,12 @@ module Deliver
186
186
  # release
187
187
  FastlaneCore::ConfigItem.new(key: :automatic_release,
188
188
  env_name: "DELIVER_AUTOMATIC_RELEASE",
189
- description: "Should the app be automatically released once it's approved? (Can not be used together with `auto_release_date`)",
189
+ description: "Should the app be automatically released once it's approved? (Cannot be used together with `auto_release_date`)",
190
190
  type: Boolean,
191
191
  optional: true),
192
192
  FastlaneCore::ConfigItem.new(key: :auto_release_date,
193
193
  env_name: "DELIVER_AUTO_RELEASE_DATE",
194
- description: "Date in milliseconds for automatically releasing on pending approval (Can not be used together with `automatic_release`)",
194
+ description: "Date in milliseconds for automatically releasing on pending approval (Cannot be used together with `automatic_release`)",
195
195
  type: Integer,
196
196
  optional: true,
197
197
  conflicting_options: [:automatic_release],
@@ -201,7 +201,7 @@ module Deliver
201
201
  verify_block: proc do |value|
202
202
  now_in_ms = Time.now.to_i * 1000
203
203
  if value < now_in_ms
204
- UI.user_error!("'#{value}' needs to be in the future and in milliseonds (current time is '#{now_in_ms}')")
204
+ UI.user_error!("'#{value}' needs to be in the future and in milliseconds (current time is '#{now_in_ms}')")
205
205
  end
206
206
  end),
207
207
  FastlaneCore::ConfigItem.new(key: :phased_release,
@@ -311,7 +311,7 @@ module Deliver
311
311
 
312
312
  # App Metadata
313
313
  FastlaneCore::ConfigItem.new(key: :individual_metadata_items,
314
- env_name: "DELIVER_INDIVUDAL_METADATA_ITEMS",
314
+ env_names: ["DELIVER_INDIVUDAL_METADATA_ITEMS", "DELIVER_INDIVIDUAL_METADATA_ITEMS"], # The version with typo must be deprecated
315
315
  description: "An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow",
316
316
  deprecated: "Removed after the migration to the new App Store Connect API in June 2020",
317
317
  type: Array,
@@ -55,7 +55,7 @@ module Deliver
55
55
  verify_version if options[:app_version].to_s.length > 0 && !options[:skip_app_version_update]
56
56
 
57
57
  # Rejecting before upload meta
58
- # Screenshots can not be update/deleted if in waiting for review
58
+ # Screenshots cannot be updated or deleted if the app is in the "waiting for review" state
59
59
  reject_version_if_possible if options[:reject_if_possible]
60
60
 
61
61
  upload_metadata
@@ -45,7 +45,7 @@ module Deliver
45
45
 
46
46
  unless FastlaneCore::Feature.enabled?('FASTLANE_ENABLE_BETA_DELIVER_SYNC_SCREENSHOTS')
47
47
  UI.user_error!('Please set a value to "FASTLANE_ENABLE_BETA_DELIVER_SYNC_SCREENSHOTS" environment variable ' \
48
- 'if you acknowleage the risk and try this out.')
48
+ 'if you acknowledge the risk and try this out.')
49
49
  end
50
50
 
51
51
  UI.important("Will begin uploading snapshots for '#{version.version_string}' on App Store Connect")
@@ -106,7 +106,7 @@ module Deliver
106
106
  local_screenshots = iterator.each_local_screenshot(screenshots.group_by(&:language)).map do |localization, app_screenshot_set, screenshot, index|
107
107
  if index >= 10
108
108
  UI.user_error!("Found #{localization.locale} has more than 10 screenshots for #{app_screenshot_set.screenshot_display_type}. "\
109
- "Make sure containts only necessary screenshots.")
109
+ "Make sure contains only necessary screenshots.")
110
110
  end
111
111
  ScreenshotComparable.create_from_local(screenshot: screenshot, app_screenshot_set: app_screenshot_set)
112
112
  end
@@ -237,7 +237,7 @@ module Deliver
237
237
 
238
238
  mapped_values = {}
239
239
 
240
- # Only update primary and secondar category if explicitly set
240
+ # Only update primary and secondary category if explicitly set
241
241
  unless primary_category.empty?
242
242
  mapped = Spaceship::ConnectAPI::AppCategory.map_category_from_itc(
243
243
  primary_category
@@ -468,7 +468,7 @@ module Deliver
468
468
  end
469
469
  localizations = app_info.get_app_info_localizations
470
470
 
471
- LOCALISED_APP_VALUES.keys.each do |key|
471
+ LOCALISED_APP_VALUES.each do |key, localized_key|
472
472
  current = options[key]
473
473
  next unless current
474
474
 
@@ -485,7 +485,7 @@ module Deliver
485
485
  next if app_info_locale.nil?
486
486
 
487
487
  begin
488
- current_value = app_info_locale.public_send(key.to_sym)
488
+ current_value = app_info_locale.public_send(localized_key.to_sym)
489
489
  rescue NoMethodError
490
490
  next
491
491
  end
@@ -699,7 +699,7 @@ module Deliver
699
699
  end
700
700
  UI.message("Setting the app's age rating...")
701
701
 
702
- # Maping from legacy ITC values to App Store Connect Values
702
+ # Mapping from legacy ITC values to App Store Connect Values
703
703
  mapped_values = {}
704
704
  attributes = {}
705
705
  json.each do |k, v|
@@ -19,7 +19,7 @@ module Deliver
19
19
  # As of 2020-09-14:
20
20
  # Official App Store Connect does not have an endpoint to get app prices for an app
21
21
  # Need to get prices from the app's relationships
22
- # Prices from app's relationship doess not have price tier so need to fetch app price with price tier relationship
22
+ # Prices from app's relationship does not have price tier so need to fetch app price with price tier relationship
23
23
  app_prices = app.prices
24
24
  if app_prices&.first
25
25
  app_price = Spaceship::ConnectAPI.get_app_price(app_price_id: app_prices.first.id, includes: "priceTier").first
@@ -85,7 +85,7 @@ module Deliver
85
85
  # Only delete screenshots if trying to upload
86
86
  next unless screenshots_per_language.keys.include?(localization.locale)
87
87
 
88
- UI.verbose("Queued delete sceeenshot set job for #{localization.locale} #{app_screenshot_set.screenshot_display_type}")
88
+ UI.verbose("Queued delete screenshot set job for #{localization.locale} #{app_screenshot_set.screenshot_display_type}")
89
89
  worker.enqueue(DeleteScreenshotSetJob.new(app_screenshot_set, localization))
90
90
  end
91
91
 
@@ -145,7 +145,7 @@ module Deliver
145
145
  if duplicate
146
146
  UI.message("Previous uploaded. Skipping '#{screenshot.path}'...")
147
147
  else
148
- UI.verbose("Queued upload sceeenshot job for #{localization.locale} #{app_screenshot_set.screenshot_display_type} #{screenshot.path}")
148
+ UI.verbose("Queued upload screenshot job for #{localization.locale} #{app_screenshot_set.screenshot_display_type} #{screenshot.path}")
149
149
  worker.enqueue(UploadScreenshotJob.new(app_screenshot_set, screenshot.path))
150
150
  number_of_screenshots_per_set[app_screenshot_set] += 1
151
151
  end
@@ -258,7 +258,7 @@ module Deliver
258
258
  # helper method so Spaceship::Tunes.client.available_languages is easier to test
259
259
  def self.available_languages
260
260
  # 2020-08-24 - Available locales are not available as an endpoint in App Store Connect
261
- # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is avilable)
261
+ # Update with Spaceship::Tunes.client.available_languages.sort (as long as endpoint is available)
262
262
  Deliver::Languages::ALL_LANGUAGES
263
263
  end
264
264
 
@@ -179,7 +179,7 @@ class String
179
179
 
180
180
  def markdown_clean_heredoc!
181
181
  self.chomp! # remove the last new line added by the heredoc
182
- self.dedent! # remove the leading whitespace (similar to the squigly heredoc `<<~`)
182
+ self.dedent! # remove the leading whitespace (similar to the squiggly heredoc `<<~`)
183
183
  end
184
184
 
185
185
  def dedent!
@@ -214,7 +214,7 @@ module Fastlane
214
214
  ],
215
215
  ignore: [
216
216
  "ignore/path/1",
217
- "ingore/path/2"
217
+ "ignore/path/2"
218
218
  ],
219
219
  options: "--keep-intermediate-files --search-undocumented-doc",
220
220
  warnings: "--warn-missing-output-path --warn-missing-company-id"
@@ -8,7 +8,7 @@ module Fastlane
8
8
  command << upload_url(params[:app_id].shellescape)
9
9
 
10
10
  # Fastlane::Actions.sh has buffering issues, no progress bar is shown in real time
11
- # will reanable it when it is fixed
11
+ # will reenable it when it is fixed
12
12
  # result = Fastlane::Actions.sh(command.join(' '), log: false)
13
13
  shell_command = command.join(' ')
14
14
  return shell_command if Helper.test?
@@ -15,7 +15,7 @@ module Fastlane
15
15
  zip_filename = params[:zip_filename]
16
16
  versioned = params[:versioned]
17
17
 
18
- # Prepare destionation folder
18
+ # Prepare destination folder
19
19
  full_destination = base_destination
20
20
 
21
21
  if versioned
@@ -45,7 +45,7 @@ module Fastlane
45
45
  error = if json['message'] == "Invalid request.\n\n\"sha\" wasn't supplied."
46
46
  "File already exists - please remove from repo before uploading or rename this upload"
47
47
  else
48
- "Uprocessable error"
48
+ "Unprocessable error"
49
49
  end
50
50
  UI.user_error!(error)
51
51
  end
@@ -115,7 +115,7 @@ module Fastlane
115
115
  env_name: "FL_COMMIT_GITHUB_FILE_API_BEARER",
116
116
  sensitive: true,
117
117
  code_gen_sensitive: true,
118
- description: "Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
118
+ description: "Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
119
119
  conflicting_options: [:api_token],
120
120
  optional: true,
121
121
  default_value: nil),
@@ -25,7 +25,7 @@ module Fastlane
25
25
  missing = artifacts.reject { |a| File.exist?(a) }
26
26
  UI.user_error!("Not all files were present in copy artifacts. Missing #{missing.join(', ')}") unless missing.empty?
27
27
  else
28
- # If we don't fail on non-existent files, don't try to copy non-existent files
28
+ # If we don't fail on nonexistent files, don't try to copy nonexistent files
29
29
  artifacts.select! { |artifact| File.exist?(artifact) }
30
30
  end
31
31
 
@@ -10,7 +10,7 @@ module Fastlane
10
10
 
11
11
  return if Helper.test?
12
12
 
13
- Produce.config = params # we alread have the finished config
13
+ Produce.config = params # we already have the finished config
14
14
 
15
15
  Dir.chdir(FastlaneCore::FastlaneFolder.path || Dir.pwd) do
16
16
  # This should be executed in the fastlane folder
@@ -169,7 +169,7 @@ module Fastlane
169
169
  optional: true),
170
170
  FastlaneCore::ConfigItem.new(key: :api_bearer,
171
171
  env_name: "GITHUB_PULL_REQUEST_API_BEARER",
172
- description: "Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
172
+ description: "Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
173
173
  sensitive: true,
174
174
  code_gen_sensitive: true,
175
175
  conflicting_options: [:api_token],
@@ -17,7 +17,7 @@ module Fastlane
17
17
  params[:api_key] ||= Actions.lane_context[SharedValues::APP_STORE_CONNECT_API_KEY]
18
18
  end
19
19
 
20
- Cert.config = params # we alread have the finished config
20
+ Cert.config = params # we already have the finished config
21
21
 
22
22
  Cert::Runner.new.launch
23
23
  cert_file_path = ENV["CER_FILE_PATH"]
@@ -140,7 +140,7 @@ module Fastlane
140
140
  env_name: "FL_GITHUB_RELEASE_API_BEARER",
141
141
  sensitive: true,
142
142
  code_gen_sensitive: true,
143
- description: "Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
143
+ description: "Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
144
144
  conflicting_options: [:api_token],
145
145
  optional: true,
146
146
  default_value: nil)
@@ -34,7 +34,7 @@ module Fastlane
34
34
 
35
35
  set_profile_type(values, ENV["SIGH_PROFILE_ENTERPRISE"])
36
36
 
37
- return uuid # returs uuid of profile
37
+ return uuid # returns uuid of profile
38
38
  end
39
39
 
40
40
  def self.set_profile_type(values, enterprise)
@@ -99,7 +99,7 @@ module Fastlane
99
99
  env_name: "FL_GITHUB_API_BEARER",
100
100
  sensitive: true,
101
101
  code_gen_sensitive: true,
102
- description: "Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
102
+ description: "Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
103
103
  conflicting_options: [:api_token],
104
104
  optional: true,
105
105
  default_value: nil),