fastlane 2.214.0 → 2.215.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.
- checksums.yaml +4 -4
- data/README.md +102 -102
- data/deliver/lib/deliver/app_screenshot.rb +13 -10
- data/deliver/lib/deliver/submit_for_review.rb +13 -0
- data/fastlane/lib/fastlane/actions/docs/build_app.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +8 -8
- data/fastlane/lib/fastlane/actions/docs/check_app_store_metadata.md +3 -3
- data/fastlane/lib/fastlane/actions/docs/get_push_certificate.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +1 -1
- data/fastlane/lib/fastlane/actions/download_universal_apk_from_google_play.rb +1 -1
- data/fastlane/lib/fastlane/actions/ensure_xcode_version.rb +4 -0
- data/fastlane/lib/fastlane/helper/xcodes_helper.rb +0 -3
- data/fastlane/lib/fastlane/new_action.rb +1 -1
- data/fastlane/lib/fastlane/plugins/plugin_info_collector.rb +3 -3
- data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +1 -2
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +5 -1
- data/fastlane/lib/fastlane/plugins/template/lib/fastlane/plugin/%plugin_name%/helper/%plugin_name%_helper.rb.erb +1 -1
- data/fastlane/lib/fastlane/version.rb +2 -2
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastlane.swift +22 -2
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +5 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +26 -16
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +1 -1
- data/frameit/lib/frameit/device_types.rb +1 -1
- data/match/lib/match/change_password.rb +3 -9
- data/match/lib/match/commands_generator.rb +3 -6
- data/match/lib/match/encryption.rb +1 -1
- data/match/lib/match/importer.rb +3 -31
- data/match/lib/match/migrate.rb +6 -2
- data/match/lib/match/nuke.rb +3 -25
- data/match/lib/match/options.rb +7 -0
- data/match/lib/match/runner.rb +5 -32
- data/match/lib/match/setup.rb +1 -1
- data/match/lib/match/storage/s3_storage.rb +6 -0
- data/match/lib/match/storage.rb +56 -5
- data/spaceship/lib/spaceship/connect_api/api_client.rb +19 -1
- data/spaceship/lib/spaceship/connect_api/models/app.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/app_info.rb +15 -9
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -0
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +3 -1
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +8 -2
- data/supply/lib/supply/client.rb +39 -20
- data/supply/lib/supply/image_listing.rb +15 -0
- data/supply/lib/supply/options.rb +5 -0
- data/supply/lib/supply/setup.rb +1 -1
- data/supply/lib/supply/uploader.rb +32 -5
- data/supply/lib/supply.rb +1 -0
- metadata +282 -273
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ca392430fd8ccee923fa73986787d896274816cbdca6e7245346f87c8836bb12
|
|
4
|
+
data.tar.gz: ff6be4a15bc4afba8d97048c2866c1d7ae7b36fdb382420c6ff0ab805a760d98
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b4c419b1a38f052585887569f8f7bf9e59f22cf85146e7df7fd2d57e4d832bb70b091fb5f6391b979a15369559cd6481566e58e9ccaa04d9b9e31b33bc86780d
|
|
7
|
+
data.tar.gz: 4c11e7e47e3831a3b05ef14693fabc1c3df8e62af609d8021479b3044027173e99410aefd81a0752b5d5d6046afb49556e50a7fe77224870e914ce4f6c970d35
|
data/README.md
CHANGED
|
@@ -35,61 +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='
|
|
39
|
-
<a href='https://github.com/
|
|
40
|
-
<img src='https://github.com/
|
|
38
|
+
<td id='matthew-ellis'>
|
|
39
|
+
<a href='https://github.com/matthewellis'>
|
|
40
|
+
<img src='https://github.com/matthewellis.png' width='140px;'>
|
|
41
41
|
</a>
|
|
42
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
42
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
43
43
|
</td>
|
|
44
|
-
<td id='
|
|
45
|
-
<a href='https://github.com/
|
|
46
|
-
<img src='https://github.com/
|
|
44
|
+
<td id='jimmy-dee'>
|
|
45
|
+
<a href='https://github.com/jdee'>
|
|
46
|
+
<img src='https://github.com/jdee.png' width='140px;'>
|
|
47
47
|
</a>
|
|
48
|
-
<h4 align='center'
|
|
48
|
+
<h4 align='center'>Jimmy Dee</h4>
|
|
49
49
|
</td>
|
|
50
|
-
<td id='
|
|
51
|
-
<a href='https://github.com/
|
|
52
|
-
<img src='https://github.com/
|
|
50
|
+
<td id='roger-oba'>
|
|
51
|
+
<a href='https://github.com/rogerluan'>
|
|
52
|
+
<img src='https://github.com/rogerluan.png' width='140px;'>
|
|
53
53
|
</a>
|
|
54
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
54
|
+
<h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
|
|
55
55
|
</td>
|
|
56
|
-
<td id='
|
|
57
|
-
<a href='https://github.com/
|
|
58
|
-
<img src='https://github.com/
|
|
56
|
+
<td id='fumiya-nakamura'>
|
|
57
|
+
<a href='https://github.com/nafu'>
|
|
58
|
+
<img src='https://github.com/nafu.png' width='140px;'>
|
|
59
59
|
</a>
|
|
60
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
60
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
61
61
|
</td>
|
|
62
|
-
<td id='
|
|
63
|
-
<a href='https://github.com/
|
|
64
|
-
<img src='https://github.com/
|
|
62
|
+
<td id='satoshi-namai'>
|
|
63
|
+
<a href='https://github.com/ainame'>
|
|
64
|
+
<img src='https://github.com/ainame.png' width='140px;'>
|
|
65
65
|
</a>
|
|
66
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
66
|
+
<h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
|
|
67
67
|
</td>
|
|
68
68
|
</tr>
|
|
69
69
|
<tr>
|
|
70
|
-
<td id='
|
|
71
|
-
<a href='https://github.com/
|
|
72
|
-
<img src='https://github.com/
|
|
73
|
-
</a>
|
|
74
|
-
<h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</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;'>
|
|
70
|
+
<td id='maksym-grebenets'>
|
|
71
|
+
<a href='https://github.com/mgrebenets'>
|
|
72
|
+
<img src='https://github.com/mgrebenets.png' width='140px;'>
|
|
79
73
|
</a>
|
|
80
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
74
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
81
75
|
</td>
|
|
82
|
-
<td id='
|
|
83
|
-
<a href='https://github.com/
|
|
84
|
-
<img src='https://github.com/
|
|
76
|
+
<td id='daniel-jankowski'>
|
|
77
|
+
<a href='https://github.com/mollyIV'>
|
|
78
|
+
<img src='https://github.com/mollyIV.png' width='140px;'>
|
|
85
79
|
</a>
|
|
86
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
80
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
|
87
81
|
</td>
|
|
88
|
-
<td id='
|
|
89
|
-
<a href='https://github.com/
|
|
90
|
-
<img src='https://github.com/
|
|
82
|
+
<td id='łukasz-grabowski'>
|
|
83
|
+
<a href='https://github.com/lucgrabowski'>
|
|
84
|
+
<img src='https://github.com/lucgrabowski.png' width='140px;'>
|
|
91
85
|
</a>
|
|
92
|
-
<h4 align='center'
|
|
86
|
+
<h4 align='center'>Łukasz Grabowski</h4>
|
|
93
87
|
</td>
|
|
94
88
|
<td id='jérôme-lacoste'>
|
|
95
89
|
<a href='https://github.com/lacostej'>
|
|
@@ -97,109 +91,115 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
97
91
|
</a>
|
|
98
92
|
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
99
93
|
</td>
|
|
94
|
+
<td id='manish-rathi'>
|
|
95
|
+
<a href='https://github.com/crazymanish'>
|
|
96
|
+
<img src='https://github.com/crazymanish.png' width='140px;'>
|
|
97
|
+
</a>
|
|
98
|
+
<h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
|
|
99
|
+
</td>
|
|
100
100
|
</tr>
|
|
101
101
|
<tr>
|
|
102
|
-
<td id='
|
|
103
|
-
<a href='https://github.com/
|
|
104
|
-
<img src='https://github.com/
|
|
102
|
+
<td id='stefan-natchev'>
|
|
103
|
+
<a href='https://github.com/snatchev'>
|
|
104
|
+
<img src='https://github.com/snatchev.png' width='140px;'>
|
|
105
105
|
</a>
|
|
106
|
-
<h4 align='center'>
|
|
106
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
107
107
|
</td>
|
|
108
|
-
<td id='
|
|
109
|
-
<a href='https://github.com/
|
|
110
|
-
<img src='https://github.com/
|
|
108
|
+
<td id='olivier-halligon'>
|
|
109
|
+
<a href='https://github.com/AliSoftware'>
|
|
110
|
+
<img src='https://github.com/AliSoftware.png' width='140px;'>
|
|
111
111
|
</a>
|
|
112
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
112
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
113
113
|
</td>
|
|
114
|
-
<td id='
|
|
115
|
-
<a href='https://github.com/
|
|
116
|
-
<img src='https://github.com/
|
|
114
|
+
<td id='danielle-tomlinson'>
|
|
115
|
+
<a href='https://github.com/endocrimes'>
|
|
116
|
+
<img src='https://github.com/endocrimes.png' width='140px;'>
|
|
117
117
|
</a>
|
|
118
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
118
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
|
119
119
|
</td>
|
|
120
|
-
<td id='
|
|
121
|
-
<a href='https://github.com/
|
|
122
|
-
<img src='https://github.com/
|
|
120
|
+
<td id='josh-holtz'>
|
|
121
|
+
<a href='https://github.com/joshdholtz'>
|
|
122
|
+
<img src='https://github.com/joshdholtz.png' width='140px;'>
|
|
123
123
|
</a>
|
|
124
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
124
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
125
125
|
</td>
|
|
126
|
-
<td id='
|
|
127
|
-
<a href='https://github.com/
|
|
128
|
-
<img src='https://github.com/
|
|
126
|
+
<td id='aaron-brager'>
|
|
127
|
+
<a href='https://github.com/getaaron'>
|
|
128
|
+
<img src='https://github.com/getaaron.png' width='140px;'>
|
|
129
129
|
</a>
|
|
130
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
130
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
131
131
|
</td>
|
|
132
132
|
</tr>
|
|
133
133
|
<tr>
|
|
134
|
-
<td id='
|
|
135
|
-
<a href='https://github.com/
|
|
136
|
-
<img src='https://github.com/
|
|
134
|
+
<td id='manu-wallner'>
|
|
135
|
+
<a href='https://github.com/milch'>
|
|
136
|
+
<img src='https://github.com/milch.png' width='140px;'>
|
|
137
137
|
</a>
|
|
138
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
138
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
139
139
|
</td>
|
|
140
|
-
<td id='
|
|
141
|
-
<a href='https://github.com/
|
|
142
|
-
<img src='https://github.com/
|
|
140
|
+
<td id='felix-krause'>
|
|
141
|
+
<a href='https://github.com/KrauseFx'>
|
|
142
|
+
<img src='https://github.com/KrauseFx.png' width='140px;'>
|
|
143
143
|
</a>
|
|
144
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
144
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
|
145
145
|
</td>
|
|
146
|
-
<td id='
|
|
147
|
-
<a href='https://github.com/
|
|
148
|
-
<img src='https://github.com/
|
|
146
|
+
<td id='andrew-mcburney'>
|
|
147
|
+
<a href='https://github.com/armcburney'>
|
|
148
|
+
<img src='https://github.com/armcburney.png' width='140px;'>
|
|
149
149
|
</a>
|
|
150
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
150
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
151
151
|
</td>
|
|
152
|
-
<td id='
|
|
153
|
-
<a href='https://github.com/
|
|
154
|
-
<img src='https://github.com/
|
|
152
|
+
<td id='jan-piotrowski'>
|
|
153
|
+
<a href='https://github.com/janpio'>
|
|
154
|
+
<img src='https://github.com/janpio.png' width='140px;'>
|
|
155
155
|
</a>
|
|
156
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
156
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
|
157
157
|
</td>
|
|
158
|
-
<td id='
|
|
159
|
-
<a href='https://github.com/
|
|
160
|
-
<img src='https://github.com/
|
|
158
|
+
<td id='iulian-onofrei'>
|
|
159
|
+
<a href='https://github.com/revolter'>
|
|
160
|
+
<img src='https://github.com/revolter.png' width='140px;'>
|
|
161
161
|
</a>
|
|
162
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
162
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
|
163
163
|
</td>
|
|
164
164
|
</tr>
|
|
165
165
|
<tr>
|
|
166
|
-
<td id='
|
|
167
|
-
<a href='https://github.com/
|
|
168
|
-
<img src='https://github.com/
|
|
166
|
+
<td id='helmut-januschka'>
|
|
167
|
+
<a href='https://github.com/hjanuschka'>
|
|
168
|
+
<img src='https://github.com/hjanuschka.png' width='140px;'>
|
|
169
169
|
</a>
|
|
170
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
170
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
|
171
171
|
</td>
|
|
172
|
-
<td id='
|
|
173
|
-
<a href='https://github.com/
|
|
174
|
-
<img src='https://github.com/
|
|
172
|
+
<td id='joshua-liebowitz'>
|
|
173
|
+
<a href='https://github.com/taquitos'>
|
|
174
|
+
<img src='https://github.com/taquitos.png' width='140px;'>
|
|
175
175
|
</a>
|
|
176
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
176
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
177
177
|
</td>
|
|
178
|
-
<td id='
|
|
179
|
-
<a href='https://github.com/
|
|
180
|
-
<img src='https://github.com/
|
|
178
|
+
<td id='kohki-miki'>
|
|
179
|
+
<a href='https://github.com/giginet'>
|
|
180
|
+
<img src='https://github.com/giginet.png' width='140px;'>
|
|
181
181
|
</a>
|
|
182
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
182
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
183
183
|
</td>
|
|
184
|
-
<td id='
|
|
185
|
-
<a href='https://github.com/
|
|
186
|
-
<img src='https://github.com/
|
|
184
|
+
<td id='jorge-revuelta-h'>
|
|
185
|
+
<a href='https://github.com/minuscorp'>
|
|
186
|
+
<img src='https://github.com/minuscorp.png' width='140px;'>
|
|
187
187
|
</a>
|
|
188
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
188
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
189
189
|
</td>
|
|
190
|
-
<td id='
|
|
191
|
-
<a href='https://github.com/
|
|
192
|
-
<img src='https://github.com/
|
|
190
|
+
<td id='max-ott'>
|
|
191
|
+
<a href='https://github.com/max-ott'>
|
|
192
|
+
<img src='https://github.com/max-ott.png' width='140px;'>
|
|
193
193
|
</a>
|
|
194
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
194
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
195
195
|
</td>
|
|
196
196
|
</tr>
|
|
197
197
|
<tr>
|
|
198
|
-
<td id='
|
|
199
|
-
<a href='https://github.com/
|
|
200
|
-
<img src='https://github.com/
|
|
198
|
+
<td id='luka-mirosevic'>
|
|
199
|
+
<a href='https://github.com/lmirosevic'>
|
|
200
|
+
<img src='https://github.com/lmirosevic.png' width='140px;'>
|
|
201
201
|
</a>
|
|
202
|
-
<h4 align='center'
|
|
202
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
203
203
|
</td>
|
|
204
204
|
</table>
|
|
205
205
|
|
|
@@ -19,9 +19,9 @@ module Deliver
|
|
|
19
19
|
IOS_55 = "iOS-5.5-in"
|
|
20
20
|
# iPhone XS
|
|
21
21
|
IOS_58 = "iOS-5.8-in"
|
|
22
|
-
# iPhone
|
|
22
|
+
# iPhone 14 Pro
|
|
23
23
|
IOS_61 = "iOS-6.1-in"
|
|
24
|
-
# iPhone XS Max
|
|
24
|
+
# iPhone 14 Plus, iPhone 13 Pro Max, iPhone 12 Pro Max, iPhone 11 Pro Max, iPhone 11, iPhone XS Max, iPhone XR
|
|
25
25
|
IOS_65 = "iOS-6.5-in"
|
|
26
26
|
# iPhone 14 Pro Max
|
|
27
27
|
IOS_67 = "iOS-6.7-in"
|
|
@@ -45,9 +45,9 @@ module Deliver
|
|
|
45
45
|
IOS_55_MESSAGES = "iOS-5.5-in-messages"
|
|
46
46
|
# iPhone XS iMessage
|
|
47
47
|
IOS_58_MESSAGES = "iOS-5.8-in-messages"
|
|
48
|
-
# iPhone
|
|
48
|
+
# iPhone 14 Pro iMessage
|
|
49
49
|
IOS_61_MESSAGES = "iOS-6.1-in-messages"
|
|
50
|
-
# iPhone XS Max iMessage
|
|
50
|
+
# iPhone 14 Plus, iPhone 13 Pro Max, iPhone 12 Pro Max, iPhone 11 Pro Max, iPhone 11, iPhone XS Max, iPhone XR iMessage
|
|
51
51
|
IOS_65_MESSAGES = "iOS-6.5-in-messages"
|
|
52
52
|
# iPhone 14 Pro Max iMessage
|
|
53
53
|
IOS_67_MESSAGES = "iOS-6.7-in-messages"
|
|
@@ -104,6 +104,7 @@ module Deliver
|
|
|
104
104
|
ScreenSize::IOS_47 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_47, # also 7 & 8
|
|
105
105
|
ScreenSize::IOS_55 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_55, # also 7 Plus & 8 Plus
|
|
106
106
|
ScreenSize::IOS_58 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_58,
|
|
107
|
+
ScreenSize::IOS_61 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_61,
|
|
107
108
|
ScreenSize::IOS_65 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_65,
|
|
108
109
|
ScreenSize::IOS_67 => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPHONE_67,
|
|
109
110
|
ScreenSize::IOS_IPAD => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_IPAD_97,
|
|
@@ -115,6 +116,7 @@ module Deliver
|
|
|
115
116
|
ScreenSize::IOS_47_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_47, # also 7 & 8
|
|
116
117
|
ScreenSize::IOS_55_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_55, # also 7 Plus & 8 Plus
|
|
117
118
|
ScreenSize::IOS_58_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_58,
|
|
119
|
+
ScreenSize::IOS_61_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_61,
|
|
118
120
|
ScreenSize::IOS_65_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_65,
|
|
119
121
|
ScreenSize::IOS_67_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_67,
|
|
120
122
|
ScreenSize::IOS_IPAD_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_97,
|
|
@@ -139,7 +141,7 @@ module Deliver
|
|
|
139
141
|
ScreenSize::IOS_47 => "iPhone 6", # also 7 & 8
|
|
140
142
|
ScreenSize::IOS_55 => "iPhone 6 Plus", # also 7 Plus & 8 Plus
|
|
141
143
|
ScreenSize::IOS_58 => "iPhone XS",
|
|
142
|
-
ScreenSize::IOS_61 => "iPhone
|
|
144
|
+
ScreenSize::IOS_61 => "iPhone 14 Pro",
|
|
143
145
|
ScreenSize::IOS_65 => "iPhone XS Max",
|
|
144
146
|
ScreenSize::IOS_67 => "iPhone 14 Pro Max",
|
|
145
147
|
ScreenSize::IOS_IPAD => "iPad",
|
|
@@ -151,7 +153,7 @@ module Deliver
|
|
|
151
153
|
ScreenSize::IOS_47_MESSAGES => "iPhone 6 (iMessage)", # also 7 & 8
|
|
152
154
|
ScreenSize::IOS_55_MESSAGES => "iPhone 6 Plus (iMessage)", # also 7 Plus & 8 Plus
|
|
153
155
|
ScreenSize::IOS_58_MESSAGES => "iPhone XS (iMessage)",
|
|
154
|
-
ScreenSize::IOS_61_MESSAGES => "iPhone
|
|
156
|
+
ScreenSize::IOS_61_MESSAGES => "iPhone 14 Pro (iMessage)",
|
|
155
157
|
ScreenSize::IOS_65_MESSAGES => "iPhone XS Max (iMessage)",
|
|
156
158
|
ScreenSize::IOS_67_MESSAGES => "iPhone 14 Pro Max (iMessage)",
|
|
157
159
|
ScreenSize::IOS_IPAD_MESSAGES => "iPad (iMessage)",
|
|
@@ -182,6 +184,7 @@ module Deliver
|
|
|
182
184
|
ScreenSize::IOS_47_MESSAGES,
|
|
183
185
|
ScreenSize::IOS_55_MESSAGES,
|
|
184
186
|
ScreenSize::IOS_58_MESSAGES,
|
|
187
|
+
ScreenSize::IOS_61_MESSAGES,
|
|
185
188
|
ScreenSize::IOS_65_MESSAGES,
|
|
186
189
|
ScreenSize::IOS_67_MESSAGES,
|
|
187
190
|
ScreenSize::IOS_IPAD_MESSAGES,
|
|
@@ -207,8 +210,8 @@ module Deliver
|
|
|
207
210
|
[2778, 1284]
|
|
208
211
|
],
|
|
209
212
|
ScreenSize::IOS_61_MESSAGES => [
|
|
210
|
-
[
|
|
211
|
-
[
|
|
213
|
+
[1179, 2556],
|
|
214
|
+
[2556, 1179]
|
|
212
215
|
],
|
|
213
216
|
ScreenSize::IOS_58_MESSAGES => [
|
|
214
217
|
[1125, 2436],
|
|
@@ -271,8 +274,8 @@ module Deliver
|
|
|
271
274
|
[2778, 1284]
|
|
272
275
|
],
|
|
273
276
|
ScreenSize::IOS_61 => [
|
|
274
|
-
[
|
|
275
|
-
[
|
|
277
|
+
[1179, 2556],
|
|
278
|
+
[2556, 1179]
|
|
276
279
|
],
|
|
277
280
|
ScreenSize::IOS_58 => [
|
|
278
281
|
[1125, 2436],
|
|
@@ -47,6 +47,19 @@ module Deliver
|
|
|
47
47
|
end
|
|
48
48
|
|
|
49
49
|
submission.add_app_store_version_to_review_items(app_store_version_id: version.id)
|
|
50
|
+
|
|
51
|
+
10.times do
|
|
52
|
+
version_with_latest_info = Spaceship::ConnectAPI::AppStoreVersion.get(app_store_version_id: version.id)
|
|
53
|
+
|
|
54
|
+
if version_with_latest_info.app_store_state == Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::READY_FOR_REVIEW
|
|
55
|
+
break
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
UI.message("Waiting for the state of the version to become #{Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::READY_FOR_REVIEW}...")
|
|
59
|
+
|
|
60
|
+
sleep(15)
|
|
61
|
+
end
|
|
62
|
+
|
|
50
63
|
submission.submit_for_review
|
|
51
64
|
end
|
|
52
65
|
|
|
@@ -42,8 +42,8 @@ fastlane gym
|
|
|
42
42
|
|
|
43
43
|
_gym_ uses the latest APIs to build and sign your application which results in much faster build times.
|
|
44
44
|
|
|
45
|
-
| |
|
|
46
|
-
|
|
45
|
+
| | _gym_ Features |
|
|
46
|
+
|----------|------------------|
|
|
47
47
|
🚀 | _gym_ builds 30% faster than other build tools like [shenzhen](https://github.com/nomad/shenzhen)
|
|
48
48
|
🏁 | Beautiful inline build output
|
|
49
49
|
📖 | Helps you resolve common build errors like code signing issues
|
|
@@ -32,7 +32,7 @@ androidTestImplementation 'tools.fastlane:screengrab:x.x.x'
|
|
|
32
32
|
|
|
33
33
|
The latest version is [ ](https://search.maven.org/artifact/tools.fastlane/screengrab)
|
|
34
34
|
|
|
35
|
-
As of
|
|
35
|
+
As of _screengrab_ version 2.0.0, all Android test dependencies are AndroidX dependencies. This means a device with API 18+, Android 4.3 or greater is required. If you wish to capture screenshots with an older Android OS, then you must use a 1.x.x version.
|
|
36
36
|
|
|
37
37
|
##### Configuring your Manifest Permissions
|
|
38
38
|
|
|
@@ -63,21 +63,21 @@ Ensure that the following permissions exist in your **src/debug/AndroidManifest.
|
|
|
63
63
|
1. Add `LocaleTestRule` to your tests class to handle automatic switching of locales.
|
|
64
64
|
|
|
65
65
|
If you're using Java use:
|
|
66
|
-
|
|
66
|
+
|
|
67
67
|
```java
|
|
68
68
|
@ClassRule
|
|
69
69
|
public static final LocaleTestRule localeTestRule = new LocaleTestRule();
|
|
70
70
|
```
|
|
71
|
-
|
|
71
|
+
|
|
72
72
|
If you're using Kotlin use:
|
|
73
|
-
|
|
73
|
+
|
|
74
74
|
```kotlin
|
|
75
75
|
@Rule @JvmField
|
|
76
76
|
val localeTestRule = LocaleTestRule()
|
|
77
77
|
```
|
|
78
|
-
|
|
78
|
+
|
|
79
79
|
The `@JvmField` annotation is important. It won't work like this:
|
|
80
|
-
|
|
80
|
+
|
|
81
81
|
```kotlin
|
|
82
82
|
companion object {
|
|
83
83
|
@get:ClassRule
|
|
@@ -87,7 +87,7 @@ Ensure that the following permissions exist in your **src/debug/AndroidManifest.
|
|
|
87
87
|
|
|
88
88
|
2. To capture screenshots, add the following to your tests `Screengrab.screenshot("name_of_screenshot_here");` on the appropriate screens
|
|
89
89
|
|
|
90
|
-
# Generating Screenshots with
|
|
90
|
+
# Generating Screenshots with _screengrab_
|
|
91
91
|
- Then, before running `fastlane screengrab` you'll need a debug and test apk
|
|
92
92
|
- You can create your APKs manually with `./gradlew assembleDebug assembleAndroidTest`
|
|
93
93
|
- You can also create a lane and use `build_android_app`:
|
|
@@ -228,7 +228,7 @@ When using JUnit 3 you'll need to add a bit more code:
|
|
|
228
228
|
|
|
229
229
|
## Clean Status Bar
|
|
230
230
|
|
|
231
|
-
|
|
231
|
+
_screengrab_ can clean your status bar to make your screenshots even more beautiful.
|
|
232
232
|
It is simply a wrapper that allows configuring SystemUI DemoMode in your code.
|
|
233
233
|
Note: the clean status bar feature is only supported on devices with *API level >= 23*.
|
|
234
234
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<img src="/img/actions/precheck.png" width="250">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
_precheck_
|
|
6
6
|
============
|
|
7
7
|
|
|
8
8
|
###### Check your app using a community driven set of App Store review rules to avoid being rejected
|
|
@@ -23,8 +23,8 @@ Apple rejects builds for many avoidable metadata issues like including swear wor
|
|
|
23
23
|
# Features
|
|
24
24
|
|
|
25
25
|
|
|
26
|
-
| |
|
|
27
|
-
|
|
26
|
+
| | _precheck_ Features |
|
|
27
|
+
|----------|-----------------------|
|
|
28
28
|
🐛 | product bug mentions
|
|
29
29
|
🙅 | Swear word checker
|
|
30
30
|
🤖 | Mentioning other platforms
|
|
@@ -48,7 +48,7 @@ This does the following:
|
|
|
48
48
|
- Downloads the certificate
|
|
49
49
|
- Generates a new ```.pem``` file in the current working directory, which you can upload to your server
|
|
50
50
|
|
|
51
|
-
Note that _pem_ will never revoke your existing certificates. _pem_ can't download any of your existing push certificates, as the private key is only available on the machine it was created on.
|
|
51
|
+
Note that _pem_ will never revoke your existing certificates. _pem_ can't download any of your existing push certificates, as the private key is only available on the machine it was created on.
|
|
52
52
|
|
|
53
53
|
If you already have a push certificate enabled, which is active for at least 30 more days, _pem_ will not create a new certificate. If you still want to create one, use the `force`:
|
|
54
54
|
|
|
@@ -111,7 +111,7 @@ If you need the `p12` in your keychain, perhaps to test push with an app like [K
|
|
|
111
111
|
Enter Import Password:
|
|
112
112
|
<hit enter: the p12 has no password>
|
|
113
113
|
MAC verified OK
|
|
114
|
-
Enter
|
|
114
|
+
Enter your pem passphrase:
|
|
115
115
|
<enter a temporary password to encrypt the pem file>
|
|
116
116
|
|
|
117
117
|
% openssl pkcs12 -export -in my.pem -out my-with-passphrase.p12
|
|
@@ -408,7 +408,7 @@ fastlane match adhoc --force_for_new_devices
|
|
|
408
408
|
|
|
409
409
|
##### Templates (aka: custom entitlements)
|
|
410
410
|
|
|
411
|
-
|
|
411
|
+
_match_ can generate profiles that contain custom entitlements by passing in the entitlement's name with the `template_name` parameter.
|
|
412
412
|
|
|
413
413
|
```
|
|
414
414
|
match(type: "development",
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
###### The best way to manage your TestFlight testers and builds from your terminal
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
_pilot_ makes it easier to manage your app on Apple’s TestFlight. You can:
|
|
8
8
|
|
|
9
9
|
- Upload & distribute builds
|
|
10
10
|
- Add & remove testers
|
|
@@ -56,7 +56,7 @@ module Fastlane
|
|
|
56
56
|
<<~DETAILS
|
|
57
57
|
Download the universal APK of a given version code from the Google Play Console.
|
|
58
58
|
|
|
59
|
-
This uses
|
|
59
|
+
This uses _fastlane_ `supply` (and the `AndroidPublisher` Google API) to download the Universal APK
|
|
60
60
|
generated by Google after you uploaded an `.aab` bundle to the Play Console.
|
|
61
61
|
|
|
62
62
|
See https://developers.google.com/android-publisher/api-ref/rest/v3/generatedapks/list
|
|
@@ -119,6 +119,10 @@ module Fastlane
|
|
|
119
119
|
def self.is_supported?(platform)
|
|
120
120
|
[:ios, :mac].include?(platform)
|
|
121
121
|
end
|
|
122
|
+
|
|
123
|
+
def self.deprecated_notes
|
|
124
|
+
"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)"
|
|
125
|
+
end
|
|
122
126
|
end
|
|
123
127
|
end
|
|
124
128
|
end
|
|
@@ -18,9 +18,6 @@ module Fastlane
|
|
|
18
18
|
module Verify
|
|
19
19
|
def self.requirement(req)
|
|
20
20
|
UI.user_error!("Version must be specified") if req.nil? || req.to_s.strip.size == 0
|
|
21
|
-
Gem::Requirement.new(req.to_s)
|
|
22
|
-
rescue Gem::Requirement::BadRequirementError
|
|
23
|
-
UI.user_error!("The requirement '#{req}' is not a valid RubyGems style requirement")
|
|
24
21
|
end
|
|
25
22
|
end
|
|
26
23
|
end
|
|
@@ -7,7 +7,7 @@ module Fastlane
|
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
def self.fetch_name
|
|
10
|
-
puts("Must be
|
|
10
|
+
puts("Must be lowercase, and use a '_' between words. Do not use '.'".green)
|
|
11
11
|
puts("examples: 'testflight', 'upload_to_s3'".green)
|
|
12
12
|
name = UI.input("Name of your action: ")
|
|
13
13
|
until name_valid?(name)
|
|
@@ -45,7 +45,7 @@ module Fastlane
|
|
|
45
45
|
@ui.message("\nThe gem name '#{gem_name}' is already taken on RubyGems, please choose a different plugin name.")
|
|
46
46
|
else
|
|
47
47
|
# That's a naming error
|
|
48
|
-
@ui.message("\nPlugin names can only contain
|
|
48
|
+
@ui.message("\nPlugin names can only contain lowercase letters, numbers, and underscores")
|
|
49
49
|
@ui.message("and should not contain 'fastlane' or 'plugin'.")
|
|
50
50
|
end
|
|
51
51
|
end
|
|
@@ -54,7 +54,7 @@ module Fastlane
|
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
def plugin_name_valid?(name)
|
|
57
|
-
# Only
|
|
57
|
+
# Only lowercase letters, numbers and underscores allowed
|
|
58
58
|
/^[a-z0-9_]+$/ =~ name &&
|
|
59
59
|
# Does not contain the words 'fastlane' or 'plugin' since those will become
|
|
60
60
|
# part of the gem name
|
|
@@ -79,7 +79,7 @@ module Fastlane
|
|
|
79
79
|
name = name.to_s.downcase
|
|
80
80
|
fixes = {
|
|
81
81
|
/[\- ]/ => '_', # dashes and spaces become underscores
|
|
82
|
-
/[^a-z0-9_]/ => '', # anything other than
|
|
82
|
+
/[^a-z0-9_]/ => '', # anything other than lowercase letters, numbers and underscores is removed
|
|
83
83
|
/fastlane[_]?/ => '', # 'fastlane' or 'fastlane_' is removed
|
|
84
84
|
/plugin[_]?/ => '' # 'plugin' or 'plugin_' is removed
|
|
85
85
|
}
|
|
@@ -13,9 +13,8 @@ Gem::Specification.new do |spec|
|
|
|
13
13
|
spec.license = "MIT"
|
|
14
14
|
|
|
15
15
|
spec.files = Dir["lib/**/*"] + %w(README.md LICENSE)
|
|
16
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
17
16
|
spec.require_paths = ['lib']
|
|
18
|
-
|
|
17
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
|
19
18
|
spec.required_ruby_version = '>= 2.6'
|
|
20
19
|
|
|
21
20
|
# Don't add a dependency to fastlane or fastlane_re
|
|
@@ -124,6 +124,8 @@ Style/GuardClause:
|
|
|
124
124
|
Enabled: false
|
|
125
125
|
Style/StringLiterals:
|
|
126
126
|
Enabled: false
|
|
127
|
+
Style/QuotedSymbols:
|
|
128
|
+
Enabled: false
|
|
127
129
|
Style/ConditionalAssignment:
|
|
128
130
|
Enabled: false
|
|
129
131
|
Style/RedundantSelf:
|
|
@@ -164,7 +166,7 @@ Style/CollectionMethods:
|
|
|
164
166
|
Enabled: false
|
|
165
167
|
Style/MethodCallWithArgsParentheses:
|
|
166
168
|
Enabled: true
|
|
167
|
-
|
|
169
|
+
AllowedMethods:
|
|
168
170
|
- require
|
|
169
171
|
- require_relative
|
|
170
172
|
- fastlane_require
|
|
@@ -186,3 +188,5 @@ Style/MethodCallWithArgsParentheses:
|
|
|
186
188
|
- context
|
|
187
189
|
- before
|
|
188
190
|
- after
|
|
191
|
+
Gemspec/DevelopmentDependencies:
|
|
192
|
+
Enabled: false
|