fastlane 2.210.0 → 2.211.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +100 -100
  3. data/deliver/lib/deliver/app_screenshot.rb +17 -0
  4. data/deliver/lib/deliver/runner.rb +5 -2
  5. data/fastlane/lib/fastlane/actions/docs/build_app.md +5 -5
  6. data/fastlane/lib/fastlane/actions/docs/run_tests.md +1 -1
  7. data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +14 -4
  8. data/fastlane/lib/fastlane/actions/xcode_install.rb +5 -1
  9. data/fastlane/lib/fastlane/actions/xcode_select.rb +1 -1
  10. data/fastlane/lib/fastlane/actions/xcodes.rb +137 -0
  11. data/fastlane/lib/fastlane/actions/xcversion.rb +10 -15
  12. data/fastlane/lib/fastlane/helper/xcodes_helper.rb +28 -0
  13. data/fastlane/lib/fastlane/helper/xcversion_helper.rb +0 -9
  14. data/fastlane/lib/fastlane/version.rb +1 -1
  15. data/fastlane/swift/Deliverfile.swift +1 -1
  16. data/fastlane/swift/DeliverfileProtocol.swift +1 -1
  17. data/fastlane/swift/Fastlane.swift +66 -3
  18. data/fastlane/swift/Gymfile.swift +1 -1
  19. data/fastlane/swift/GymfileProtocol.swift +1 -1
  20. data/fastlane/swift/Matchfile.swift +1 -1
  21. data/fastlane/swift/MatchfileProtocol.swift +5 -1
  22. data/fastlane/swift/Precheckfile.swift +1 -1
  23. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  24. data/fastlane/swift/Scanfile.swift +1 -1
  25. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  26. data/fastlane/swift/Screengrabfile.swift +1 -1
  27. data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
  28. data/fastlane/swift/Snapshotfile.swift +1 -1
  29. data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
  30. data/fastlane/swift/formatting/Brewfile.lock.json +20 -15
  31. data/fastlane_core/lib/fastlane_core/cert_checker.rb +2 -2
  32. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +2 -3
  33. data/frameit/lib/frameit/device.rb +1 -1
  34. data/match/lib/match/change_password.rb +2 -0
  35. data/match/lib/match/commands_generator.rb +2 -1
  36. data/match/lib/match/generator.rb +1 -0
  37. data/match/lib/match/importer.rb +2 -0
  38. data/match/lib/match/migrate.rb +4 -3
  39. data/match/lib/match/nuke.rb +2 -0
  40. data/match/lib/match/options.rb +5 -0
  41. data/match/lib/match/runner.rb +5 -2
  42. data/pilot/lib/pilot/build_manager.rb +5 -2
  43. data/sigh/lib/sigh/options.rb +5 -0
  44. data/sigh/lib/sigh/runner.rb +3 -1
  45. data/snapshot/lib/assets/SnapshotHelper.swift +2 -2
  46. data/spaceship/lib/spaceship/connect_api/models/actor.rb +26 -0
  47. data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +5 -0
  48. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -1
  49. data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +10 -10
  50. data/spaceship/lib/spaceship/connect_api/models/device.rb +3 -0
  51. data/spaceship/lib/spaceship/connect_api/models/resolution_center_message.rb +29 -0
  52. data/spaceship/lib/spaceship/connect_api/models/resolution_center_thread.rb +67 -0
  53. data/spaceship/lib/spaceship/connect_api/models/review_rejection.rb +19 -0
  54. data/spaceship/lib/spaceship/connect_api/models/review_submission.rb +12 -0
  55. data/spaceship/lib/spaceship/connect_api/token.rb +2 -5
  56. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +23 -0
  57. data/spaceship/lib/spaceship/connect_api.rb +5 -0
  58. metadata +25 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 96b025cf8e8588f53bc82b19c432c61649110eeb8ffdf6ee3302007c13b0b531
4
- data.tar.gz: f022c9464d0223a0ade4069b8a11a23b59d96bc48f68890f6cef29bb8abbab41
3
+ metadata.gz: 9109ddee20194fc927133f3885a6a460d09ea8ccf81d865822c1c7c028b428c2
4
+ data.tar.gz: 5f6fe9b0094d3fb6582e88c44ac8e4e2a0830d2f5f556628744e67f26b307f17
5
5
  SHA512:
6
- metadata.gz: 12cdf289ae833312461ccbfe20b8c3e0bb2b0ab0474cab0cf8667b2f5c2223f87fadfdeb319116d8207e2936b147ca0a6ea337a811be342d1404542736662684
7
- data.tar.gz: 85ec8273275588792cfaeee405554cbc32e66fdedf43f660978f4b51bc3308a62ea0172e981f08253938e6a2ad85ff894a28e6f76ebbf5fa234da2d7781a290c
6
+ metadata.gz: '08db10e18729135ecebec8ac1735e9ab79a4e878b1ab249b4011c086072c945f0024f4d95a241335bb8807da7a1402c98f70183f0cd45c2985d87c5de6188d03'
7
+ data.tar.gz: 20c188c9ad9a9b270d64f0dbb8011861f79a2932e7665df511401be49e0d6f8ecb03cbfb8c5ce81274e239930084c535fc2735fc3997d185545ef4460aa12d99
data/README.md CHANGED
@@ -35,55 +35,55 @@ 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='matthew-ellis'>
39
- <a href='https://github.com/matthewellis'>
40
- <img src='https://github.com/matthewellis.png' width='140px;'>
38
+ <td id='łukasz-grabowski'>
39
+ <a href='https://github.com/lucgrabowski'>
40
+ <img src='https://github.com/lucgrabowski.png' width='140px;'>
41
41
  </a>
42
- <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
42
+ <h4 align='center'>Łukasz Grabowski</h4>
43
43
  </td>
44
- <td id='joshua-liebowitz'>
45
- <a href='https://github.com/taquitos'>
46
- <img src='https://github.com/taquitos.png' width='140px;'>
44
+ <td id='luka-mirosevic'>
45
+ <a href='https://github.com/lmirosevic'>
46
+ <img src='https://github.com/lmirosevic.png' width='140px;'>
47
47
  </a>
48
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
48
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
49
49
  </td>
50
- <td id='helmut-januschka'>
51
- <a href='https://github.com/hjanuschka'>
52
- <img src='https://github.com/hjanuschka.png' width='140px;'>
50
+ <td id='satoshi-namai'>
51
+ <a href='https://github.com/ainame'>
52
+ <img src='https://github.com/ainame.png' width='140px;'>
53
53
  </a>
54
- <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
54
+ <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
55
55
  </td>
56
- <td id='roger-oba'>
57
- <a href='https://github.com/rogerluan'>
58
- <img src='https://github.com/rogerluan.png' width='140px;'>
56
+ <td id='olivier-halligon'>
57
+ <a href='https://github.com/AliSoftware'>
58
+ <img src='https://github.com/AliSoftware.png' width='140px;'>
59
59
  </a>
60
- <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
60
+ <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
61
61
  </td>
62
- <td id='iulian-onofrei'>
63
- <a href='https://github.com/revolter'>
64
- <img src='https://github.com/revolter.png' width='140px;'>
62
+ <td id='daniel-jankowski'>
63
+ <a href='https://github.com/mollyIV'>
64
+ <img src='https://github.com/mollyIV.png' width='140px;'>
65
65
  </a>
66
- <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
66
+ <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
67
67
  </td>
68
68
  </tr>
69
69
  <tr>
70
- <td id='felix-krause'>
71
- <a href='https://github.com/KrauseFx'>
72
- <img src='https://github.com/KrauseFx.png' width='140px;'>
70
+ <td id='kohki-miki'>
71
+ <a href='https://github.com/giginet'>
72
+ <img src='https://github.com/giginet.png' width='140px;'>
73
73
  </a>
74
- <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
74
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
75
75
  </td>
76
- <td id='max-ott'>
77
- <a href='https://github.com/max-ott'>
78
- <img src='https://github.com/max-ott.png' width='140px;'>
76
+ <td id='stefan-natchev'>
77
+ <a href='https://github.com/snatchev'>
78
+ <img src='https://github.com/snatchev.png' width='140px;'>
79
79
  </a>
80
- <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
80
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
81
81
  </td>
82
- <td id='manu-wallner'>
83
- <a href='https://github.com/milch'>
84
- <img src='https://github.com/milch.png' width='140px;'>
82
+ <td id='felix-krause'>
83
+ <a href='https://github.com/KrauseFx'>
84
+ <img src='https://github.com/KrauseFx.png' width='140px;'>
85
85
  </a>
86
- <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
86
+ <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
87
87
  </td>
88
88
  <td id='danielle-tomlinson'>
89
89
  <a href='https://github.com/endocrimes'>
@@ -91,115 +91,115 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
91
91
  </a>
92
92
  <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
93
93
  </td>
94
- <td id='satoshi-namai'>
95
- <a href='https://github.com/ainame'>
96
- <img src='https://github.com/ainame.png' width='140px;'>
94
+ <td id='jimmy-dee'>
95
+ <a href='https://github.com/jdee'>
96
+ <img src='https://github.com/jdee.png' width='140px;'>
97
97
  </a>
98
- <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
98
+ <h4 align='center'>Jimmy Dee</h4>
99
99
  </td>
100
100
  </tr>
101
101
  <tr>
102
- <td id='jan-piotrowski'>
103
- <a href='https://github.com/janpio'>
104
- <img src='https://github.com/janpio.png' width='140px;'>
102
+ <td id='matthew-ellis'>
103
+ <a href='https://github.com/matthewellis'>
104
+ <img src='https://github.com/matthewellis.png' width='140px;'>
105
105
  </a>
106
- <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
106
+ <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
107
107
  </td>
108
- <td id='maksym-grebenets'>
109
- <a href='https://github.com/mgrebenets'>
110
- <img src='https://github.com/mgrebenets.png' width='140px;'>
108
+ <td id='jérôme-lacoste'>
109
+ <a href='https://github.com/lacostej'>
110
+ <img src='https://github.com/lacostej.png' width='140px;'>
111
111
  </a>
112
- <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
112
+ <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
113
113
  </td>
114
- <td id='josh-holtz'>
115
- <a href='https://github.com/joshdholtz'>
116
- <img src='https://github.com/joshdholtz.png' width='140px;'>
114
+ <td id='andrew-mcburney'>
115
+ <a href='https://github.com/armcburney'>
116
+ <img src='https://github.com/armcburney.png' width='140px;'>
117
117
  </a>
118
- <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
118
+ <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
119
119
  </td>
120
- <td id='jorge-revuelta-h'>
121
- <a href='https://github.com/minuscorp'>
122
- <img src='https://github.com/minuscorp.png' width='140px;'>
120
+ <td id='manu-wallner'>
121
+ <a href='https://github.com/milch'>
122
+ <img src='https://github.com/milch.png' width='140px;'>
123
123
  </a>
124
- <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
124
+ <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
125
125
  </td>
126
- <td id='fumiya-nakamura'>
127
- <a href='https://github.com/nafu'>
128
- <img src='https://github.com/nafu.png' width='140px;'>
126
+ <td id='max-ott'>
127
+ <a href='https://github.com/max-ott'>
128
+ <img src='https://github.com/max-ott.png' width='140px;'>
129
129
  </a>
130
- <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
130
+ <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
131
131
  </td>
132
132
  </tr>
133
133
  <tr>
134
- <td id='jimmy-dee'>
135
- <a href='https://github.com/jdee'>
136
- <img src='https://github.com/jdee.png' width='140px;'>
134
+ <td id='jorge-revuelta-h'>
135
+ <a href='https://github.com/minuscorp'>
136
+ <img src='https://github.com/minuscorp.png' width='140px;'>
137
137
  </a>
138
- <h4 align='center'>Jimmy Dee</h4>
138
+ <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
139
139
  </td>
140
- <td id='kohki-miki'>
141
- <a href='https://github.com/giginet'>
142
- <img src='https://github.com/giginet.png' width='140px;'>
140
+ <td id='manish-rathi'>
141
+ <a href='https://github.com/crazymanish'>
142
+ <img src='https://github.com/crazymanish.png' width='140px;'>
143
143
  </a>
144
- <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
144
+ <h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
145
145
  </td>
146
- <td id='łukasz-grabowski'>
147
- <a href='https://github.com/lucgrabowski'>
148
- <img src='https://github.com/lucgrabowski.png' width='140px;'>
146
+ <td id='joshua-liebowitz'>
147
+ <a href='https://github.com/taquitos'>
148
+ <img src='https://github.com/taquitos.png' width='140px;'>
149
149
  </a>
150
- <h4 align='center'>Łukasz Grabowski</h4>
150
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
151
151
  </td>
152
- <td id='stefan-natchev'>
153
- <a href='https://github.com/snatchev'>
154
- <img src='https://github.com/snatchev.png' width='140px;'>
152
+ <td id='iulian-onofrei'>
153
+ <a href='https://github.com/revolter'>
154
+ <img src='https://github.com/revolter.png' width='140px;'>
155
155
  </a>
156
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
156
+ <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
157
157
  </td>
158
- <td id='olivier-halligon'>
159
- <a href='https://github.com/AliSoftware'>
160
- <img src='https://github.com/AliSoftware.png' width='140px;'>
158
+ <td id='maksym-grebenets'>
159
+ <a href='https://github.com/mgrebenets'>
160
+ <img src='https://github.com/mgrebenets.png' width='140px;'>
161
161
  </a>
162
- <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
162
+ <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
163
163
  </td>
164
164
  </tr>
165
165
  <tr>
166
- <td id='luka-mirosevic'>
167
- <a href='https://github.com/lmirosevic'>
168
- <img src='https://github.com/lmirosevic.png' width='140px;'>
166
+ <td id='roger-oba'>
167
+ <a href='https://github.com/rogerluan'>
168
+ <img src='https://github.com/rogerluan.png' width='140px;'>
169
169
  </a>
170
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
170
+ <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
171
171
  </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;'>
172
+ <td id='aaron-brager'>
173
+ <a href='https://github.com/getaaron'>
174
+ <img src='https://github.com/getaaron.png' width='140px;'>
175
175
  </a>
176
- <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
176
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
177
177
  </td>
178
- <td id='manish-rathi'>
179
- <a href='https://github.com/crazymanish'>
180
- <img src='https://github.com/crazymanish.png' width='140px;'>
178
+ <td id='josh-holtz'>
179
+ <a href='https://github.com/joshdholtz'>
180
+ <img src='https://github.com/joshdholtz.png' width='140px;'>
181
181
  </a>
182
- <h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
182
+ <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
183
183
  </td>
184
- <td id='daniel-jankowski'>
185
- <a href='https://github.com/mollyIV'>
186
- <img src='https://github.com/mollyIV.png' width='140px;'>
184
+ <td id='fumiya-nakamura'>
185
+ <a href='https://github.com/nafu'>
186
+ <img src='https://github.com/nafu.png' width='140px;'>
187
187
  </a>
188
- <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
188
+ <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
189
189
  </td>
190
- <td id='aaron-brager'>
191
- <a href='https://github.com/getaaron'>
192
- <img src='https://github.com/getaaron.png' width='140px;'>
190
+ <td id='jan-piotrowski'>
191
+ <a href='https://github.com/janpio'>
192
+ <img src='https://github.com/janpio.png' width='140px;'>
193
193
  </a>
194
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
194
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
195
195
  </td>
196
196
  </tr>
197
197
  <tr>
198
- <td id='andrew-mcburney'>
199
- <a href='https://github.com/armcburney'>
200
- <img src='https://github.com/armcburney.png' width='140px;'>
198
+ <td id='helmut-januschka'>
199
+ <a href='https://github.com/hjanuschka'>
200
+ <img src='https://github.com/hjanuschka.png' width='140px;'>
201
201
  </a>
202
- <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
202
+ <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
203
203
  </td>
204
204
  </table>
205
205
 
@@ -23,6 +23,8 @@ module Deliver
23
23
  IOS_61 = "iOS-6.1-in"
24
24
  # iPhone XS Max
25
25
  IOS_65 = "iOS-6.5-in"
26
+ # iPhone 14 Pro Max
27
+ IOS_67 = "iOS-6.7-in"
26
28
 
27
29
  # iPad
28
30
  IOS_IPAD = "iOS-iPad"
@@ -47,6 +49,8 @@ module Deliver
47
49
  IOS_61_MESSAGES = "iOS-6.1-in-messages"
48
50
  # iPhone XS Max iMessage
49
51
  IOS_65_MESSAGES = "iOS-6.5-in-messages"
52
+ # iPhone 14 Pro Max iMessage
53
+ IOS_67_MESSAGES = "iOS-6.7-in-messages"
50
54
 
51
55
  # iPad iMessage
52
56
  IOS_IPAD_MESSAGES = "iOS-iPad-messages"
@@ -101,6 +105,7 @@ module Deliver
101
105
  ScreenSize::IOS_55 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_55, # also 7 Plus & 8 Plus
102
106
  ScreenSize::IOS_58 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_58,
103
107
  ScreenSize::IOS_65 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_65,
108
+ ScreenSize::IOS_67 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_67,
104
109
  ScreenSize::IOS_IPAD => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPAD_97,
105
110
  ScreenSize::IOS_IPAD_10_5 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPAD_105,
106
111
  ScreenSize::IOS_IPAD_11 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPAD_PRO_3GEN_11,
@@ -111,6 +116,7 @@ module Deliver
111
116
  ScreenSize::IOS_55_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_55, # also 7 Plus & 8 Plus
112
117
  ScreenSize::IOS_58_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_58,
113
118
  ScreenSize::IOS_65_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_65,
119
+ ScreenSize::IOS_67_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_67,
114
120
  ScreenSize::IOS_IPAD_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_97,
115
121
  ScreenSize::IOS_IPAD_PRO_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_PRO_129,
116
122
  ScreenSize::IOS_IPAD_PRO_12_9_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_PRO_3GEN_129,
@@ -135,6 +141,7 @@ module Deliver
135
141
  ScreenSize::IOS_58 => "iPhone XS",
136
142
  ScreenSize::IOS_61 => "iPhone XR",
137
143
  ScreenSize::IOS_65 => "iPhone XS Max",
144
+ ScreenSize::IOS_67 => "iPhone 14 Pro Max",
138
145
  ScreenSize::IOS_IPAD => "iPad",
139
146
  ScreenSize::IOS_IPAD_10_5 => "iPad 10.5",
140
147
  ScreenSize::IOS_IPAD_11 => "iPad 11",
@@ -146,6 +153,7 @@ module Deliver
146
153
  ScreenSize::IOS_58_MESSAGES => "iPhone XS (iMessage)",
147
154
  ScreenSize::IOS_61_MESSAGES => "iPhone XR (iMessage)",
148
155
  ScreenSize::IOS_65_MESSAGES => "iPhone XS Max (iMessage)",
156
+ ScreenSize::IOS_67_MESSAGES => "iPhone 14 Pro Max (iMessage)",
149
157
  ScreenSize::IOS_IPAD_MESSAGES => "iPad (iMessage)",
150
158
  ScreenSize::IOS_IPAD_PRO_MESSAGES => "iPad Pro (iMessage)",
151
159
  ScreenSize::IOS_IPAD_PRO_12_9_MESSAGES => "iPad Pro (12.9-inch) (3rd generation) (iMessage)",
@@ -175,6 +183,7 @@ module Deliver
175
183
  ScreenSize::IOS_55_MESSAGES,
176
184
  ScreenSize::IOS_58_MESSAGES,
177
185
  ScreenSize::IOS_65_MESSAGES,
186
+ ScreenSize::IOS_67_MESSAGES,
178
187
  ScreenSize::IOS_IPAD_MESSAGES,
179
188
  ScreenSize::IOS_IPAD_PRO_MESSAGES,
180
189
  ScreenSize::IOS_IPAD_PRO_12_9_MESSAGES,
@@ -187,6 +196,10 @@ module Deliver
187
196
  # This list does not include iPad Pro 12.9-inch (3rd generation)
188
197
  # because it has same resoluation as IOS_IPAD_PRO and will clobber
189
198
  return {
199
+ ScreenSize::IOS_67_MESSAGES => [
200
+ [1290, 2796],
201
+ [2796, 1290]
202
+ ],
190
203
  ScreenSize::IOS_65_MESSAGES => [
191
204
  [1242, 2688],
192
205
  [2688, 1242],
@@ -247,6 +260,10 @@ module Deliver
247
260
  # This list does not include iPad Pro 12.9-inch (3rd generation)
248
261
  # because it has same resoluation as IOS_IPAD_PRO and will clobber
249
262
  return {
263
+ ScreenSize::IOS_67 => [
264
+ [1290, 2796],
265
+ [2796, 1290]
266
+ ],
250
267
  ScreenSize::IOS_65 => [
251
268
  [1242, 2688],
252
269
  [2688, 1242],
@@ -275,9 +275,12 @@ module Deliver
275
275
  api_token = Spaceship::ConnectAPI.token
276
276
  api_key = if options[:api_key].nil? && !api_token.nil?
277
277
  # Load api key info if user set api_key_path, not api_key
278
- { key_id: api_token.key_id, issuer_id: api_token.issuer_id, key: api_token.key_raw, is_key_content_base64: api_token.is_key_content_base64 }
278
+ { key_id: api_token.key_id, issuer_id: api_token.issuer_id, key: api_token.key_raw }
279
279
  elsif !options[:api_key].nil?
280
- options[:api_key].transform_keys(&:to_sym)
280
+ api_key = options[:api_key].transform_keys(&:to_sym).dup
281
+ # key is still base 64 style if api_key is loaded from option
282
+ api_key[:key] = Base64.decode64(api_key[:key]) if api_key[:is_key_content_base64]
283
+ api_key
281
284
  end
282
285
 
283
286
  unless api_token.nil?
@@ -74,7 +74,7 @@ That's all you need to build your application. If you want more control, here ar
74
74
  fastlane gym --workspace "Example.xcworkspace" --scheme "AppName" --clean
75
75
  ```
76
76
 
77
- If you need to use a different Xcode installation, use `xcode-select` or define `DEVELOPER_DIR`:
77
+ If you need to use a different Xcode installation, use `[xcodes](https://docs.fastlane.tools/actions/xcodes)` or define `DEVELOPER_DIR`:
78
78
 
79
79
  ```no-highlight
80
80
  DEVELOPER_DIR="/Applications/Xcode6.2.app" fastlane gym
@@ -150,7 +150,7 @@ build_app(
150
150
  scheme: "Release",
151
151
  export_method: "app-store",
152
152
  export_options: {
153
- provisioningProfiles: {
153
+ provisioningProfiles: {
154
154
  "com.example.bundleid" => "Provisioning Profile Name",
155
155
  "com.example.bundleid2" => "Provisioning Profile Name 2"
156
156
  }
@@ -184,10 +184,10 @@ end
184
184
  error do |lane, exception|
185
185
  slack(
186
186
  # message with short human friendly message
187
- message: exception.to_s,
188
- success: false,
187
+ message: exception.to_s,
188
+ success: false,
189
189
  # Output containing extended log output
190
- payload: { "Output" => exception.error_info.to_s }
190
+ payload: { "Output" => exception.error_info.to_s }
191
191
  )
192
192
  end
193
193
  ```
@@ -100,7 +100,7 @@ That's all you need to run your tests. If you want more control, here are some a
100
100
  fastlane scan --workspace "Example.xcworkspace" --scheme "AppName" --device "iPhone 6" --clean
101
101
  ```
102
102
 
103
- If you need to use a different Xcode install, use `xcode-select` or define `DEVELOPER_DIR`:
103
+ If you need to use a different Xcode install, use `[xcodes](https://docs.fastlane.tools/actions/xcodes)` or define `DEVELOPER_DIR`:
104
104
 
105
105
  ```no-highlight
106
106
  DEVELOPER_DIR="/Applications/Xcode6.2.app" scan
@@ -36,18 +36,22 @@ module Fastlane
36
36
  end
37
37
 
38
38
  style_value = params[:use_automatic_signing] ? 'Automatic' : 'Manual'
39
+ development_team_setting = params[:sdk] ? "DEVELOPMENT_TEAM[sdk=#{params[:sdk]}]" : "DEVELOPMENT_TEAM"
40
+ code_sign_identity_setting = params[:sdk] ? "CODE_SIGN_IDENTITY[sdk=#{params[:sdk]}]" : "CODE_SIGN_IDENTITY"
41
+ provisioning_profile_setting = params[:sdk] ? "PROVISIONING_PROFILE_SPECIFIER[sdk=#{params[:sdk]}]" : "PROVISIONING_PROFILE_SPECIFIER"
42
+
39
43
  set_build_setting(config, "CODE_SIGN_STYLE", style_value)
40
44
 
41
45
  if params[:team_id]
42
- set_build_setting(config, "DEVELOPMENT_TEAM", params[:team_id])
46
+ set_build_setting(config, development_team_setting, params[:team_id])
43
47
  UI.important("Set Team id to: #{params[:team_id]} for target: #{target.name} for build configuration: #{config.name}")
44
48
  end
45
49
  if params[:code_sign_identity]
46
- set_build_setting(config, "CODE_SIGN_IDENTITY", params[:code_sign_identity])
50
+ set_build_setting(config, code_sign_identity_setting, params[:code_sign_identity])
47
51
  UI.important("Set Code Sign identity to: #{params[:code_sign_identity]} for target: #{target.name} for build configuration: #{config.name}")
48
52
  end
49
53
  if params[:profile_name]
50
- set_build_setting(config, "PROVISIONING_PROFILE_SPECIFIER", params[:profile_name])
54
+ set_build_setting(config, provisioning_profile_setting, params[:profile_name])
51
55
  UI.important("Set Provisioning Profile name to: #{params[:profile_name]} for target: #{target.name} for build configuration: #{config.name}")
52
56
  end
53
57
  if params[:entitlements_file_path]
@@ -129,6 +133,10 @@ module Fastlane
129
133
  description: "Defines if project should use automatic signing",
130
134
  type: Boolean,
131
135
  default_value: false),
136
+ FastlaneCore::ConfigItem.new(key: :sdk,
137
+ env_name: "FASTLANE_BUILD_SDK",
138
+ optional: true,
139
+ description: "Build target SDKs (iphoneos*, macosx*, iphonesimulator*)"),
132
140
  FastlaneCore::ConfigItem.new(key: :team_id,
133
141
  env_name: "FASTLANE_TEAM_ID",
134
142
  optional: true,
@@ -183,10 +191,12 @@ module Fastlane
183
191
  )',
184
192
  ' # more advanced manual code signing
185
193
  update_code_signing_settings(
186
- use_automatic_signing: true,
194
+ use_automatic_signing: false,
187
195
  path: "demo-project/demo/demo.xcodeproj",
188
196
  team_id: "QABC123DEV",
189
197
  bundle_identifier: "com.demoapp.QABC123DEV",
198
+ code_sign_identity: "iPhone Distribution",
199
+ sdk: "iphoneos*",
190
200
  profile_name: "Demo App Deployment Profile",
191
201
  entitlements_file_path: "Demo App/generated/New.entitlements"
192
202
  )'
@@ -101,7 +101,11 @@ module Fastlane
101
101
  end
102
102
 
103
103
  def self.category
104
- :building
104
+ :deprecated
105
+ end
106
+
107
+ def self.deprecated_notes
108
+ "The xcode-install gem, which this action depends on, has been sunset. Please migrate to [xcodes](https://docs.fastlane.tools/actions/xcodes). You can find a migration guide here: [xcpretty/xcode-install/MIGRATION.md](https://github.com/xcpretty/xcode-install/blob/master/MIGRATION.md)"
105
109
  end
106
110
  end
107
111
  end
@@ -40,7 +40,7 @@ module Fastlane
40
40
  def self.details
41
41
  [
42
42
  "Select and build with the Xcode installed at the provided path.",
43
- "Use the `xcversion` action if you want to select an Xcode:",
43
+ "Use the `xcodes` action if you want to select an Xcode:",
44
44
  "- Based on a version specifier or",
45
45
  "- You don't have known, stable paths, as may happen in a CI environment."
46
46
  ].join("\n")