fastlane 2.166.0 → 2.167.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 +5 -5
- data/README.md +78 -78
- data/deliver/lib/deliver/app_screenshot.rb +6 -2
- data/fastlane/lib/fastlane/actions/add_git_tag.rb +9 -2
- data/fastlane/lib/fastlane/actions/spm.rb +6 -0
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +5 -0
- data/fastlane/lib/fastlane/cli_tools_distributor.rb +1 -1
- data/fastlane/lib/fastlane/features.rb +1 -1
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +1 -0
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +6 -3
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/LaneFileProtocol.swift +2 -2
- data/fastlane/swift/MainProcess.swift +2 -0
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Runner.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/SocketClient.swift +1 -1
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +12 -7
- data/fastlane_core/lib/fastlane_core/provisioning_profile.rb +3 -1
- data/fastlane_core/lib/fastlane_core/ui/disable_colors.rb +8 -0
- data/gym/lib/gym/code_signing_mapping.rb +1 -1
- data/match/lib/match/nuke.rb +9 -5
- data/pilot/lib/pilot/build_manager.rb +9 -3
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +9 -0
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +12 -0
- metadata +18 -20
- data/deliver/lib/deliver/.upload_screenshots.rb.swp +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 12fc2f2fba2826c89ba9d96fb23aaf99ff241513f980e97cc6bd911683b563d1
|
|
4
|
+
data.tar.gz: 189a71d8c59ce592ec3ef3c94c6cd4605ae3e6e130fb8dfd57a286aeffbffad4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2ce1affc526767654afe6c01483ae298d0a99b09f433fdae244956ff01d46947fb785e3d934bfa052c16c3b1064659ff368eda6746181162964ffd139a46ff61
|
|
7
|
+
data.tar.gz: 7b33693ca6d648c49065a72152357491945a43f2936b245dde1eda2d91855eb319d23a4080315f9eb1c70bf2f90d6e4df845611acfd8674b9853a83e0dcded15
|
data/README.md
CHANGED
|
@@ -34,17 +34,11 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
34
34
|
<!-- This table is regenerated and resorted on each release -->
|
|
35
35
|
<table id='team'>
|
|
36
36
|
<tr>
|
|
37
|
-
<td id='
|
|
38
|
-
<a href='https://github.com/
|
|
39
|
-
<img src='https://github.com/
|
|
40
|
-
</a>
|
|
41
|
-
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
42
|
-
</td>
|
|
43
|
-
<td id='danielle-tomlinson'>
|
|
44
|
-
<a href='https://github.com/endocrimes'>
|
|
45
|
-
<img src='https://github.com/endocrimes.png?size=140'>
|
|
37
|
+
<td id='aaron-brager'>
|
|
38
|
+
<a href='https://github.com/getaaron'>
|
|
39
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
|
46
40
|
</a>
|
|
47
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
41
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
48
42
|
</td>
|
|
49
43
|
<td id='jimmy-dee'>
|
|
50
44
|
<a href='https://github.com/jdee'>
|
|
@@ -52,11 +46,11 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
52
46
|
</a>
|
|
53
47
|
<h4 align='center'>Jimmy Dee</h4>
|
|
54
48
|
</td>
|
|
55
|
-
<td id='
|
|
56
|
-
<a href='https://github.com/
|
|
57
|
-
<img src='https://github.com/
|
|
49
|
+
<td id='max-ott'>
|
|
50
|
+
<a href='https://github.com/max-ott'>
|
|
51
|
+
<img src='https://github.com/max-ott.png?size=140'>
|
|
58
52
|
</a>
|
|
59
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
53
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
60
54
|
</td>
|
|
61
55
|
<td id='jorge-revuelta-h'>
|
|
62
56
|
<a href='https://github.com/minuscorp'>
|
|
@@ -64,89 +58,89 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
64
58
|
</a>
|
|
65
59
|
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
66
60
|
</td>
|
|
67
|
-
</tr>
|
|
68
|
-
<tr>
|
|
69
|
-
<td id='fumiya-nakamura'>
|
|
70
|
-
<a href='https://github.com/nafu'>
|
|
71
|
-
<img src='https://github.com/nafu.png?size=140'>
|
|
72
|
-
</a>
|
|
73
|
-
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
74
|
-
</td>
|
|
75
61
|
<td id='manu-wallner'>
|
|
76
62
|
<a href='https://github.com/milch'>
|
|
77
63
|
<img src='https://github.com/milch.png?size=140'>
|
|
78
64
|
</a>
|
|
79
65
|
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
80
66
|
</td>
|
|
81
|
-
|
|
82
|
-
<
|
|
83
|
-
<
|
|
67
|
+
</tr>
|
|
68
|
+
<tr>
|
|
69
|
+
<td id='jan-piotrowski'>
|
|
70
|
+
<a href='https://github.com/janpio'>
|
|
71
|
+
<img src='https://github.com/janpio.png?size=140'>
|
|
84
72
|
</a>
|
|
85
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
73
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
|
86
74
|
</td>
|
|
87
|
-
<td id='
|
|
88
|
-
<a href='https://github.com/
|
|
89
|
-
<img src='https://github.com/
|
|
75
|
+
<td id='olivier-halligon'>
|
|
76
|
+
<a href='https://github.com/AliSoftware'>
|
|
77
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
|
90
78
|
</a>
|
|
91
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
79
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
92
80
|
</td>
|
|
93
|
-
<td id='
|
|
94
|
-
<a href='https://github.com/
|
|
95
|
-
<img src='https://github.com/
|
|
81
|
+
<td id='jérôme-lacoste'>
|
|
82
|
+
<a href='https://github.com/lacostej'>
|
|
83
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
|
96
84
|
</a>
|
|
97
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
85
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
98
86
|
</td>
|
|
99
|
-
|
|
100
|
-
<
|
|
101
|
-
<
|
|
102
|
-
<a href='https://github.com/matthewellis'>
|
|
103
|
-
<img src='https://github.com/matthewellis.png?size=140'>
|
|
87
|
+
<td id='luka-mirosevic'>
|
|
88
|
+
<a href='https://github.com/lmirosevic'>
|
|
89
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
|
104
90
|
</a>
|
|
105
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
91
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
106
92
|
</td>
|
|
93
|
+
<td id='stefan-natchev'>
|
|
94
|
+
<a href='https://github.com/snatchev'>
|
|
95
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
|
96
|
+
</a>
|
|
97
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
98
|
+
</td>
|
|
99
|
+
</tr>
|
|
100
|
+
<tr>
|
|
107
101
|
<td id='joshua-liebowitz'>
|
|
108
102
|
<a href='https://github.com/taquitos'>
|
|
109
103
|
<img src='https://github.com/taquitos.png?size=140'>
|
|
110
104
|
</a>
|
|
111
105
|
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
112
106
|
</td>
|
|
113
|
-
<td id='
|
|
114
|
-
<a href='https://github.com/
|
|
115
|
-
<img src='https://github.com/
|
|
107
|
+
<td id='andrew-mcburney'>
|
|
108
|
+
<a href='https://github.com/armcburney'>
|
|
109
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
|
116
110
|
</a>
|
|
117
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
111
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
118
112
|
</td>
|
|
119
|
-
<td id='
|
|
120
|
-
<a href='https://github.com/
|
|
121
|
-
<img src='https://github.com/
|
|
113
|
+
<td id='matthew-ellis'>
|
|
114
|
+
<a href='https://github.com/matthewellis'>
|
|
115
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
|
122
116
|
</a>
|
|
123
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
117
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
124
118
|
</td>
|
|
125
|
-
<td id='
|
|
126
|
-
<a href='https://github.com/
|
|
127
|
-
<img src='https://github.com/
|
|
119
|
+
<td id='kohki-miki'>
|
|
120
|
+
<a href='https://github.com/giginet'>
|
|
121
|
+
<img src='https://github.com/giginet.png?size=140'>
|
|
128
122
|
</a>
|
|
129
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
123
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
130
124
|
</td>
|
|
131
|
-
|
|
132
|
-
<
|
|
133
|
-
<
|
|
134
|
-
<a href='https://github.com/joshdholtz'>
|
|
135
|
-
<img src='https://github.com/joshdholtz.png?size=140'>
|
|
125
|
+
<td id='daniel-jankowski'>
|
|
126
|
+
<a href='https://github.com/mollyIV'>
|
|
127
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
|
136
128
|
</a>
|
|
137
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
129
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
|
138
130
|
</td>
|
|
139
|
-
|
|
140
|
-
<
|
|
141
|
-
<
|
|
131
|
+
</tr>
|
|
132
|
+
<tr>
|
|
133
|
+
<td id='helmut-januschka'>
|
|
134
|
+
<a href='https://github.com/hjanuschka'>
|
|
135
|
+
<img src='https://github.com/hjanuschka.png?size=140'>
|
|
142
136
|
</a>
|
|
143
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
137
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
|
144
138
|
</td>
|
|
145
|
-
<td id='
|
|
146
|
-
<a href='https://github.com/
|
|
147
|
-
<img src='https://github.com/
|
|
139
|
+
<td id='maksym-grebenets'>
|
|
140
|
+
<a href='https://github.com/mgrebenets'>
|
|
141
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
|
148
142
|
</a>
|
|
149
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
143
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
150
144
|
</td>
|
|
151
145
|
<td id='felix-krause'>
|
|
152
146
|
<a href='https://github.com/KrauseFx'>
|
|
@@ -154,25 +148,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
154
148
|
</a>
|
|
155
149
|
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
|
156
150
|
</td>
|
|
157
|
-
<td id='
|
|
158
|
-
<a href='https://github.com/
|
|
159
|
-
<img src='https://github.com/
|
|
151
|
+
<td id='iulian-onofrei'>
|
|
152
|
+
<a href='https://github.com/revolter'>
|
|
153
|
+
<img src='https://github.com/revolter.png?size=140'>
|
|
160
154
|
</a>
|
|
161
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
155
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
|
156
|
+
</td>
|
|
157
|
+
<td id='josh-holtz'>
|
|
158
|
+
<a href='https://github.com/joshdholtz'>
|
|
159
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
|
160
|
+
</a>
|
|
161
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
162
162
|
</td>
|
|
163
163
|
</tr>
|
|
164
164
|
<tr>
|
|
165
|
-
<td id='
|
|
166
|
-
<a href='https://github.com/
|
|
167
|
-
<img src='https://github.com/
|
|
165
|
+
<td id='danielle-tomlinson'>
|
|
166
|
+
<a href='https://github.com/endocrimes'>
|
|
167
|
+
<img src='https://github.com/endocrimes.png?size=140'>
|
|
168
168
|
</a>
|
|
169
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
169
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
|
170
170
|
</td>
|
|
171
|
-
<td id='
|
|
172
|
-
<a href='https://github.com/
|
|
173
|
-
<img src='https://github.com/
|
|
171
|
+
<td id='fumiya-nakamura'>
|
|
172
|
+
<a href='https://github.com/nafu'>
|
|
173
|
+
<img src='https://github.com/nafu.png?size=140'>
|
|
174
174
|
</a>
|
|
175
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
175
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
176
176
|
</td>
|
|
177
177
|
</table>
|
|
178
178
|
|
|
@@ -187,7 +187,9 @@ module Deliver
|
|
|
187
187
|
return {
|
|
188
188
|
ScreenSize::IOS_65_MESSAGES => [
|
|
189
189
|
[1242, 2688],
|
|
190
|
-
[2688, 1242]
|
|
190
|
+
[2688, 1242],
|
|
191
|
+
[1284, 2778],
|
|
192
|
+
[2778, 1284]
|
|
191
193
|
],
|
|
192
194
|
ScreenSize::IOS_61_MESSAGES => [
|
|
193
195
|
[828, 1792],
|
|
@@ -243,7 +245,9 @@ module Deliver
|
|
|
243
245
|
return {
|
|
244
246
|
ScreenSize::IOS_65 => [
|
|
245
247
|
[1242, 2688],
|
|
246
|
-
[2688, 1242]
|
|
248
|
+
[2688, 1242],
|
|
249
|
+
[1284, 2778],
|
|
250
|
+
[2778, 1284]
|
|
247
251
|
],
|
|
248
252
|
ScreenSize::IOS_61 => [
|
|
249
253
|
[828, 1792],
|
|
@@ -6,7 +6,13 @@ module Fastlane
|
|
|
6
6
|
# lane name in lane_context could be nil because you can just call $fastlane add_git_tag which has no context
|
|
7
7
|
lane_name = Actions.lane_context[Actions::SharedValues::LANE_NAME].to_s.delete(' ') # no spaces allowed
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
if options[:tag]
|
|
10
|
+
tag = options[:tag]
|
|
11
|
+
elsif options[:build_number]
|
|
12
|
+
tag = "#{options[:grouping]}/#{lane_name}/#{options[:prefix]}#{options[:build_number]}#{options[:postfix]}"
|
|
13
|
+
else
|
|
14
|
+
UI.user_error!("No value found for 'tag' or 'build_number'. At least one of them must be provided. Note that if you do specify a tag, all other arguments are ignored.")
|
|
15
|
+
end
|
|
10
16
|
message = options[:message] || "#{tag} (fastlane)"
|
|
11
17
|
|
|
12
18
|
cmd = ['git tag']
|
|
@@ -64,7 +70,8 @@ module Fastlane
|
|
|
64
70
|
description: "The build number. Defaults to the result of increment_build_number if you\'re using it",
|
|
65
71
|
default_value: Actions.lane_context[Actions::SharedValues::BUILD_NUMBER],
|
|
66
72
|
default_value_dynamic: true,
|
|
67
|
-
is_string: false
|
|
73
|
+
is_string: false,
|
|
74
|
+
optional: true),
|
|
68
75
|
FastlaneCore::ConfigItem.new(key: :message,
|
|
69
76
|
env_name: "FL_GIT_TAG_MESSAGE",
|
|
70
77
|
description: "The tag message. Defaults to the tag's name",
|
|
@@ -11,6 +11,7 @@ module Fastlane
|
|
|
11
11
|
cmd << "--disable-sandbox" if params[:disable_sandbox]
|
|
12
12
|
cmd << "--verbose" if params[:verbose]
|
|
13
13
|
cmd << params[:command] if package_commands.include?(params[:command])
|
|
14
|
+
cmd << "--enable-code-coverage" if params[:enable_code_coverage] && params[:command] == 'generate-xcodeproj'
|
|
14
15
|
if params[:xcconfig]
|
|
15
16
|
cmd << "--xcconfig-overrides #{params[:xcconfig]}"
|
|
16
17
|
end
|
|
@@ -44,6 +45,11 @@ module Fastlane
|
|
|
44
45
|
verify_block: proc do |value|
|
|
45
46
|
UI.user_error!("Please pass a valid command. Use one of the following: #{available_commands.join(', ')}") unless available_commands.include?(value)
|
|
46
47
|
end),
|
|
48
|
+
FastlaneCore::ConfigItem.new(key: :enable_code_coverage,
|
|
49
|
+
env_name: "FL_SPM_ENABLE_CODE_COVERAGE",
|
|
50
|
+
description: "Enables code coverage for the generated Xcode project when using the generate-xcodeproj command",
|
|
51
|
+
is_string: false,
|
|
52
|
+
optional: true),
|
|
47
53
|
FastlaneCore::ConfigItem.new(key: :build_path,
|
|
48
54
|
env_name: "FL_SPM_BUILD_PATH",
|
|
49
55
|
description: "Specify build/cache directory [default: ./.build]",
|
|
@@ -71,6 +71,11 @@ module Fastlane
|
|
|
71
71
|
cleaner.execute
|
|
72
72
|
end
|
|
73
73
|
|
|
74
|
+
if FastlaneCore::FastlaneFolder.swift?
|
|
75
|
+
upgrader = SwiftRunnerUpgrader.new
|
|
76
|
+
upgrader.upgrade_if_needed!
|
|
77
|
+
end
|
|
78
|
+
|
|
74
79
|
UI.message("fastlane.tools successfully updated! I will now restart myself... 😴")
|
|
75
80
|
|
|
76
81
|
# Set no_update to true so we don't try to update again
|
|
@@ -123,7 +123,7 @@ module Fastlane
|
|
|
123
123
|
end
|
|
124
124
|
|
|
125
125
|
# Since loading dotenv should respect additional environments passed using
|
|
126
|
-
# --env, we must
|
|
126
|
+
# --env, we must extract the arguments out of ARGV and process them before
|
|
127
127
|
# calling into commander. This is required since the ENV must be configured
|
|
128
128
|
# before running any other commands in order to correctly respect variables
|
|
129
129
|
# like FASTLANE_HIDE_CHANGELOG and FASTLANE_DISABLE_COLORS
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Use this file as the place to register Feature switches for the
|
|
1
|
+
# Use this file as the place to register Feature switches for the fastlane_core project
|
|
2
2
|
|
|
3
3
|
# FastlaneCore::Feature.register(env_var: 'YOUR_FEATURE_SWITCH_ENV_VAR',
|
|
4
4
|
# description: 'Describe what this feature switch controls')
|
|
@@ -76,7 +76,7 @@ public func addGitTag(tag: String? = nil,
|
|
|
76
76
|
grouping: String = "builds",
|
|
77
77
|
prefix: String = "",
|
|
78
78
|
postfix: String = "",
|
|
79
|
-
buildNumber: Any,
|
|
79
|
+
buildNumber: Any? = nil,
|
|
80
80
|
message: String? = nil,
|
|
81
81
|
commit: String? = nil,
|
|
82
82
|
force: Bool = false,
|
|
@@ -7445,6 +7445,7 @@ public func splunkmint(dsym: String? = nil,
|
|
|
7445
7445
|
|
|
7446
7446
|
- parameters:
|
|
7447
7447
|
- command: The swift command (one of: build, test, clean, reset, update, resolve, generate-xcodeproj, init)
|
|
7448
|
+
- enableCodeCoverage: Enables code coverage for the generated Xcode project when using the generate-xcodeproj command
|
|
7448
7449
|
- buildPath: Specify build/cache directory [default: ./.build]
|
|
7449
7450
|
- packagePath: Change working directory before any other operation
|
|
7450
7451
|
- xcconfig: Use xcconfig file to override swift package generate-xcodeproj defaults
|
|
@@ -7455,6 +7456,7 @@ public func splunkmint(dsym: String? = nil,
|
|
|
7455
7456
|
- verbose: Increase verbosity of informational output
|
|
7456
7457
|
*/
|
|
7457
7458
|
public func spm(command: String = "build",
|
|
7459
|
+
enableCodeCoverage: Any? = nil,
|
|
7458
7460
|
buildPath: String? = nil,
|
|
7459
7461
|
packagePath: String? = nil,
|
|
7460
7462
|
xcconfig: String? = nil,
|
|
@@ -7465,6 +7467,7 @@ public func spm(command: String = "build",
|
|
|
7465
7467
|
verbose: Bool = false)
|
|
7466
7468
|
{
|
|
7467
7469
|
let command = RubyCommand(commandID: "", methodName: "spm", className: nil, args: [RubyCommand.Argument(name: "command", value: command),
|
|
7470
|
+
RubyCommand.Argument(name: "enable_code_coverage", value: enableCodeCoverage),
|
|
7468
7471
|
RubyCommand.Argument(name: "build_path", value: buildPath),
|
|
7469
7472
|
RubyCommand.Argument(name: "package_path", value: packagePath),
|
|
7470
7473
|
RubyCommand.Argument(name: "xcconfig", value: xcconfig),
|
|
@@ -9259,7 +9262,7 @@ public func xcov(workspace: String? = nil,
|
|
|
9259
9262
|
coverallsServiceJobId: String? = nil,
|
|
9260
9263
|
coverallsRepoToken: String? = nil,
|
|
9261
9264
|
xcconfig: String? = nil,
|
|
9262
|
-
ideFoundationPath: String = "/Applications/Xcode-
|
|
9265
|
+
ideFoundationPath: String = "/Applications/Xcode-11.7.app/Contents/Developer/../Frameworks/IDEFoundation.framework/Versions/A/IDEFoundation",
|
|
9263
9266
|
legacySupport: Bool = false)
|
|
9264
9267
|
{
|
|
9265
9268
|
let command = RubyCommand(commandID: "", methodName: "xcov", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
|
|
@@ -9405,4 +9408,4 @@ public let snapshotfile = Snapshotfile()
|
|
|
9405
9408
|
|
|
9406
9409
|
// Please don't remove the lines below
|
|
9407
9410
|
// They are used to detect outdated files
|
|
9408
|
-
// FastlaneRunnerAPIVersion [0.9.
|
|
9411
|
+
// FastlaneRunnerAPIVersion [0.9.103]
|
|
@@ -22,8 +22,8 @@ public protocol LaneFileProtocol: class {
|
|
|
22
22
|
|
|
23
23
|
public extension LaneFileProtocol {
|
|
24
24
|
var fastlaneVersion: String { return "" } // Defaults to "" because that means any is fine
|
|
25
|
-
func beforeAll(with
|
|
26
|
-
func afterAll(with
|
|
25
|
+
func beforeAll(with _: String) {} // No-op by default
|
|
26
|
+
func afterAll(with _: String) {} // No-op by default
|
|
27
27
|
func onError(currentLane _: String, errorInfo _: String) {} // No-op by default
|
|
28
28
|
func recordLaneDescriptions() {} // No-op by default
|
|
29
29
|
}
|
|
@@ -56,6 +56,8 @@ class MainProcess {
|
|
|
56
56
|
print(stdout)
|
|
57
57
|
self.timeBetweenPrints = Int(self.lastPrintDate.timeIntervalSinceNow)
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
// swiftformat:disable:next redundantSelf
|
|
59
61
|
_ = Runner.waitWithPolling(self.timeBetweenPrints, toEventually: { $0 > 5 }, timeout: 10)
|
|
60
62
|
thread.start()
|
|
61
63
|
#endif
|
data/fastlane/swift/Runner.swift
CHANGED
|
@@ -37,7 +37,7 @@ class Runner {
|
|
|
37
37
|
socketClient.send(rubyCommand: command)
|
|
38
38
|
|
|
39
39
|
let secondsToWait = DispatchTimeInterval.seconds(SocketClient.defaultCommandTimeoutSeconds)
|
|
40
|
-
//
|
|
40
|
+
// swiftformat:disable:next redundantSelf
|
|
41
41
|
let timeoutResult = Self.waitWithPolling(self.executeNext[command.id], toEventually: { $0 == true }, timeout: SocketClient.defaultCommandTimeoutSeconds)
|
|
42
42
|
executeNext.removeValue(forKey: command.id)
|
|
43
43
|
let failureMessage = "command didn't execute in: \(SocketClient.defaultCommandTimeoutSeconds) seconds"
|
|
@@ -29,7 +29,7 @@ class SocketClient: NSObject {
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
static let connectTimeoutSeconds = 2
|
|
32
|
-
static let defaultCommandTimeoutSeconds =
|
|
32
|
+
static let defaultCommandTimeoutSeconds = 10800 // 3 hours
|
|
33
33
|
static let doneToken = "done" // TODO: remove these
|
|
34
34
|
static let cancelToken = "cancelFastlaneRun"
|
|
35
35
|
|
|
@@ -22,7 +22,7 @@ module FastlaneCore
|
|
|
22
22
|
end
|
|
23
23
|
|
|
24
24
|
def self.installed_identies(in_keychain: nil)
|
|
25
|
-
|
|
25
|
+
install_wwdr_certificates unless wwdr_certificates_installed?
|
|
26
26
|
|
|
27
27
|
available = list_available_identities(in_keychain: in_keychain)
|
|
28
28
|
# Match for this text against word boundaries to avoid edge cases around multiples of 10 identities!
|
|
@@ -81,16 +81,21 @@ module FastlaneCore
|
|
|
81
81
|
`#{commands.join(' ')}`
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
-
def self.
|
|
84
|
+
def self.wwdr_certificates_installed?
|
|
85
85
|
certificate_name = "Apple Worldwide Developer Relations Certification Authority"
|
|
86
86
|
keychain = wwdr_keychain
|
|
87
|
-
response = Helper.backticks("security find-certificate -c '#{certificate_name}' #{keychain.shellescape}", print: FastlaneCore::Globals.verbose?)
|
|
88
|
-
|
|
87
|
+
response = Helper.backticks("security find-certificate -a -c '#{certificate_name}' #{keychain.shellescape}", print: FastlaneCore::Globals.verbose?)
|
|
88
|
+
certs = response.split("keychain: \"#{keychain}\"").drop(1)
|
|
89
|
+
certs.count == 2
|
|
89
90
|
end
|
|
90
91
|
|
|
91
|
-
def self.
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
def self.install_wwdr_certificates
|
|
93
|
+
install_wwdr_certificate('https://developer.apple.com/certificationauthority/AppleWWDRCA.cer')
|
|
94
|
+
install_wwdr_certificate('https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer')
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
def self.install_wwdr_certificate(url)
|
|
98
|
+
file = Tempfile.new(File.basename(url))
|
|
94
99
|
filename = file.path
|
|
95
100
|
keychain = wwdr_keychain
|
|
96
101
|
keychain = "-k #{keychain.shellescape}" unless keychain.empty?
|
|
@@ -47,7 +47,9 @@ module FastlaneCore
|
|
|
47
47
|
def bundle_id(path, keychain_path = nil)
|
|
48
48
|
profile = parse(path, keychain_path)
|
|
49
49
|
app_id_prefix = profile["ApplicationIdentifierPrefix"].first
|
|
50
|
-
|
|
50
|
+
entitlements = profile["Entitlements"]
|
|
51
|
+
app_identifier = entitlements["application-identifier"] || entitlements["com.apple.application-identifier"]
|
|
52
|
+
bundle_id = app_identifier.gsub("#{app_id_prefix}.", "")
|
|
51
53
|
bundle_id
|
|
52
54
|
rescue
|
|
53
55
|
UI.error("Unable to extract the Bundle Id from the provided provisioning profile '#{path}'.")
|
|
@@ -142,7 +142,7 @@ module Gym
|
|
|
142
142
|
next unless specified_configuration == build_configuration.name
|
|
143
143
|
|
|
144
144
|
# Catalyst apps will have some build settings that will have a configuration
|
|
145
|
-
# that is
|
|
145
|
+
# that is specific for macos so going to do our best to capture those
|
|
146
146
|
#
|
|
147
147
|
# There are other platform filters besides "[sdk=macosx*]" that we could use but
|
|
148
148
|
# this is the default that Xcode will use so this will also be our default
|
data/match/lib/match/nuke.rb
CHANGED
|
@@ -252,11 +252,15 @@ module Match
|
|
|
252
252
|
|
|
253
253
|
self.encryption.encrypt_files if self.encryption
|
|
254
254
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
255
|
+
if files_to_delete.count > 0
|
|
256
|
+
# Now we need to save all this to the storage too, if needed
|
|
257
|
+
message = ["[fastlane]", "Nuked", "files", "for", type.to_s].join(" ")
|
|
258
|
+
self.storage.save_changes!(files_to_commit: [],
|
|
259
|
+
files_to_delete: files_to_delete,
|
|
260
|
+
custom_message: message)
|
|
261
|
+
else
|
|
262
|
+
UI.message("Your storage had no files to be deleted. This happens when you run `nuke` with an empty storage. Nothing to be worried about!")
|
|
263
|
+
end
|
|
260
264
|
end
|
|
261
265
|
|
|
262
266
|
private
|
|
@@ -192,7 +192,7 @@ module Pilot
|
|
|
192
192
|
[
|
|
193
193
|
build.app_version,
|
|
194
194
|
build.version,
|
|
195
|
-
(build.beta_build_metrics || []).map(&:install_count).reduce(:+)
|
|
195
|
+
(build.beta_build_metrics || []).map(&:install_count).compact.reduce(:+)
|
|
196
196
|
]
|
|
197
197
|
end
|
|
198
198
|
|
|
@@ -273,9 +273,15 @@ module Pilot
|
|
|
273
273
|
changelog
|
|
274
274
|
end
|
|
275
275
|
|
|
276
|
+
def self.emoji_regex
|
|
277
|
+
# EmojiRegex::RGIEmoji is now preferred over EmojiRegex::Regex which is deprecated as of 3.2.0
|
|
278
|
+
# https://github.com/ticky/ruby-emoji-regex/releases/tag/v3.2.0
|
|
279
|
+
return defined?(EmojiRegex::RGIEmoji) ? EmojiRegex::RGIEmoji : EmojiRegex::Regex
|
|
280
|
+
end
|
|
281
|
+
|
|
276
282
|
def self.strip_emoji(changelog)
|
|
277
|
-
if changelog && changelog =~
|
|
278
|
-
changelog.gsub!(
|
|
283
|
+
if changelog && changelog =~ emoji_regex
|
|
284
|
+
changelog.gsub!(emoji_regex, "")
|
|
279
285
|
UI.important("Emoji symbols have been removed from the changelog, since they're not allowed by Apple.")
|
|
280
286
|
end
|
|
281
287
|
changelog
|
|
@@ -36,6 +36,15 @@ module Spaceship
|
|
|
36
36
|
def post_bulk_beta_tester_assignments(beta_testers: nil)
|
|
37
37
|
return Spaceship::ConnectAPI.post_bulk_beta_tester_assignments(beta_group_id: id, beta_testers: beta_testers)
|
|
38
38
|
end
|
|
39
|
+
|
|
40
|
+
def delete!
|
|
41
|
+
return Spaceship::ConnectAPI.delete_beta_group(group_id: id)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def fetch_builds
|
|
45
|
+
resps = Spaceship::ConnectAPI.get_builds_for_beta_group(group_id: id).all_pages
|
|
46
|
+
return resps.flat_map(&:to_models)
|
|
47
|
+
end
|
|
39
48
|
end
|
|
40
49
|
end
|
|
41
50
|
end
|
|
@@ -214,6 +214,18 @@ module Spaceship
|
|
|
214
214
|
test_flight_request_client.post("betaGroups", body)
|
|
215
215
|
end
|
|
216
216
|
|
|
217
|
+
def delete_beta_group(group_id: nil)
|
|
218
|
+
raise "group_id is nil" if group_id.nil?
|
|
219
|
+
|
|
220
|
+
test_flight_request_client.delete("betaGroups/#{group_id}")
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
def get_builds_for_beta_group(group_id: nil)
|
|
224
|
+
raise "group_id is nil" if group_id.nil?
|
|
225
|
+
|
|
226
|
+
test_flight_request_client.get("betaGroups/#{group_id}/builds")
|
|
227
|
+
end
|
|
228
|
+
|
|
217
229
|
#
|
|
218
230
|
# betaTesters
|
|
219
231
|
#
|
metadata
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fastlane
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.167.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
|
-
-
|
|
8
|
-
-
|
|
7
|
+
- Matthew Ellis
|
|
8
|
+
- Jorge Revuelta H
|
|
9
|
+
- Jérôme Lacoste
|
|
9
10
|
- Max Ott
|
|
10
11
|
- Josh Holtz
|
|
11
|
-
- Jérôme Lacoste
|
|
12
|
-
- Stefan Natchev
|
|
13
|
-
- Olivier Halligon
|
|
14
|
-
- Jorge Revuelta H
|
|
15
|
-
- Jan Piotrowski
|
|
16
|
-
- Helmut Januschka
|
|
17
|
-
- Matthew Ellis
|
|
18
|
-
- Manu Wallner
|
|
19
12
|
- Aaron Brager
|
|
20
|
-
-
|
|
21
|
-
- Maksym Grebenets
|
|
13
|
+
- Andrew McBurney
|
|
22
14
|
- Daniel Jankowski
|
|
23
|
-
- Luka Mirosevic
|
|
24
|
-
- Danielle Tomlinson
|
|
25
15
|
- Fumiya Nakamura
|
|
16
|
+
- Jimmy Dee
|
|
17
|
+
- Kohki Miki
|
|
26
18
|
- Iulian Onofrei
|
|
19
|
+
- Manu Wallner
|
|
20
|
+
- Stefan Natchev
|
|
27
21
|
- Felix Krause
|
|
28
|
-
-
|
|
22
|
+
- Joshua Liebowitz
|
|
23
|
+
- Jan Piotrowski
|
|
24
|
+
- Olivier Halligon
|
|
25
|
+
- Luka Mirosevic
|
|
26
|
+
- Danielle Tomlinson
|
|
27
|
+
- Helmut Januschka
|
|
28
|
+
- Maksym Grebenets
|
|
29
29
|
autorequire:
|
|
30
30
|
bindir: bin
|
|
31
31
|
cert_chain: []
|
|
32
|
-
date: 2020-11-
|
|
32
|
+
date: 2020-11-13 00:00:00.000000000 Z
|
|
33
33
|
dependencies:
|
|
34
34
|
- !ruby/object:Gem::Dependency
|
|
35
35
|
name: slack-notifier
|
|
@@ -943,7 +943,6 @@ files:
|
|
|
943
943
|
- deliver/lib/assets/ScreenshotsHelp
|
|
944
944
|
- deliver/lib/assets/summary.html.erb
|
|
945
945
|
- deliver/lib/deliver.rb
|
|
946
|
-
- deliver/lib/deliver/.upload_screenshots.rb.swp
|
|
947
946
|
- deliver/lib/deliver/app_screenshot.rb
|
|
948
947
|
- deliver/lib/deliver/app_screenshot_iterator.rb
|
|
949
948
|
- deliver/lib/deliver/commands_generator.rb
|
|
@@ -1830,8 +1829,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
1830
1829
|
- !ruby/object:Gem::Version
|
|
1831
1830
|
version: '0'
|
|
1832
1831
|
requirements: []
|
|
1833
|
-
|
|
1834
|
-
rubygems_version: 2.6.14.4
|
|
1832
|
+
rubygems_version: 3.1.4
|
|
1835
1833
|
signing_key:
|
|
1836
1834
|
specification_version: 4
|
|
1837
1835
|
summary: The easiest way to automate beta deployments and releases for your iOS and
|
|
Binary file
|