fastlane 2.204.2 → 2.204.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bb0d735baa2f01d008088fe3a4cafe2c6c3b5e1d276bb7a3c1e5ebe0fccbebfe
4
- data.tar.gz: c9144a288c2ca37eaf878bba27f79b3408cfbd043de0ad5a982e0fa8fed93828
3
+ metadata.gz: b2ca29870c7863747d860afa2bec0087b99af7aac40cb8c490393b0396dc32bf
4
+ data.tar.gz: 6506f061ee882e689f84dd33ae69be368954022c7ddddc4115224aca6e3f7410
5
5
  SHA512:
6
- metadata.gz: be7164ceea49a09f6685af9273d6e7ebb56a09921c4e7a0bb5e50660fa56d030d569886db167bf23b94a86ac8142410c41b62cc4e6c6b202114e5939d6450e82
7
- data.tar.gz: c32ccc34243252a9fdc46b7efcdde3d54d76c21ce8b3a42df94ac3d092fdc1a3faa971842a4ecf285adcb51cfabf1b7be39eb823a5e53d60c32bfd5549981273
6
+ metadata.gz: 7eb97140c14ff54b2e72c168a354494ec44b29f5439114e55f33428b2c9f43ff89fe73e2ed909da2c529e79d293e2a7c1b30e6de34113900d2da64e234a23598
7
+ data.tar.gz: 8d6ee7ca6504a3f5cc749f8e7799f3183ea7b395cbde1f85125d0acac79255d5fd91fbd3c5a6bec83f7bf7931815e9300d00905a8529e5e8d067fcff7cc1d2bd
data/README.md CHANGED
@@ -35,75 +35,81 @@ 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='max-ott'>
39
- <a href='https://github.com/max-ott'>
40
- <img src='https://github.com/max-ott.png' width='140px;'>
41
- </a>
42
- <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
43
- </td>
44
- <td id='matthew-ellis'>
45
- <a href='https://github.com/matthewellis'>
46
- <img src='https://github.com/matthewellis.png' width='140px;'>
38
+ <td id='jérôme-lacoste'>
39
+ <a href='https://github.com/lacostej'>
40
+ <img src='https://github.com/lacostej.png' width='140px;'>
47
41
  </a>
48
- <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
42
+ <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
49
43
  </td>
50
- <td id='danielle-tomlinson'>
51
- <a href='https://github.com/endocrimes'>
52
- <img src='https://github.com/endocrimes.png' width='140px;'>
44
+ <td id='josh-holtz'>
45
+ <a href='https://github.com/joshdholtz'>
46
+ <img src='https://github.com/joshdholtz.png' width='140px;'>
53
47
  </a>
54
- <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
48
+ <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
55
49
  </td>
56
- <td id='joshua-liebowitz'>
57
- <a href='https://github.com/taquitos'>
58
- <img src='https://github.com/taquitos.png' width='140px;'>
50
+ <td id='max-ott'>
51
+ <a href='https://github.com/max-ott'>
52
+ <img src='https://github.com/max-ott.png' width='140px;'>
59
53
  </a>
60
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
54
+ <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
61
55
  </td>
62
- <td id='helmut-januschka'>
63
- <a href='https://github.com/hjanuschka'>
64
- <img src='https://github.com/hjanuschka.png' width='140px;'>
56
+ <td id='manu-wallner'>
57
+ <a href='https://github.com/milch'>
58
+ <img src='https://github.com/milch.png' width='140px;'>
65
59
  </a>
66
- <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
60
+ <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
67
61
  </td>
68
- </tr>
69
- <tr>
70
62
  <td id='manish-rathi'>
71
63
  <a href='https://github.com/crazymanish'>
72
64
  <img src='https://github.com/crazymanish.png' width='140px;'>
73
65
  </a>
74
66
  <h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
75
67
  </td>
76
- <td id='fumiya-nakamura'>
77
- <a href='https://github.com/nafu'>
78
- <img src='https://github.com/nafu.png' width='140px;'>
79
- </a>
80
- <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
81
- </td>
68
+ </tr>
69
+ <tr>
82
70
  <td id='olivier-halligon'>
83
71
  <a href='https://github.com/AliSoftware'>
84
72
  <img src='https://github.com/AliSoftware.png' width='140px;'>
85
73
  </a>
86
74
  <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
87
75
  </td>
88
- <td id='josh-holtz'>
89
- <a href='https://github.com/joshdholtz'>
90
- <img src='https://github.com/joshdholtz.png' width='140px;'>
76
+ <td id='kohki-miki'>
77
+ <a href='https://github.com/giginet'>
78
+ <img src='https://github.com/giginet.png' width='140px;'>
91
79
  </a>
92
- <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
80
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
93
81
  </td>
94
- <td id='maksym-grebenets'>
95
- <a href='https://github.com/mgrebenets'>
96
- <img src='https://github.com/mgrebenets.png' width='140px;'>
82
+ <td id='iulian-onofrei'>
83
+ <a href='https://github.com/revolter'>
84
+ <img src='https://github.com/revolter.png' width='140px;'>
97
85
  </a>
98
- <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
86
+ <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
87
+ </td>
88
+ <td id='jimmy-dee'>
89
+ <a href='https://github.com/jdee'>
90
+ <img src='https://github.com/jdee.png' width='140px;'>
91
+ </a>
92
+ <h4 align='center'>Jimmy Dee</h4>
93
+ </td>
94
+ <td id='andrew-mcburney'>
95
+ <a href='https://github.com/armcburney'>
96
+ <img src='https://github.com/armcburney.png' width='140px;'>
97
+ </a>
98
+ <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></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='daniel-jankowski'>
103
+ <a href='https://github.com/mollyIV'>
104
+ <img src='https://github.com/mollyIV.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/mollyIV'>Daniel Jankowski</a></h4>
107
+ </td>
108
+ <td id='satoshi-namai'>
109
+ <a href='https://github.com/ainame'>
110
+ <img src='https://github.com/ainame.png' width='140px;'>
111
+ </a>
112
+ <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
107
113
  </td>
108
114
  <td id='jorge-revuelta-h'>
109
115
  <a href='https://github.com/minuscorp'>
@@ -111,37 +117,25 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
111
117
  </a>
112
118
  <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
113
119
  </td>
114
- <td id='aaron-brager'>
115
- <a href='https://github.com/getaaron'>
116
- <img src='https://github.com/getaaron.png' width='140px;'>
117
- </a>
118
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
119
- </td>
120
- <td id='roger-oba'>
121
- <a href='https://github.com/rogerluan'>
122
- <img src='https://github.com/rogerluan.png' width='140px;'>
120
+ <td id='stefan-natchev'>
121
+ <a href='https://github.com/snatchev'>
122
+ <img src='https://github.com/snatchev.png' width='140px;'>
123
123
  </a>
124
- <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
124
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
125
125
  </td>
126
- <td id='iulian-onofrei'>
127
- <a href='https://github.com/revolter'>
128
- <img src='https://github.com/revolter.png' width='140px;'>
126
+ <td id='fumiya-nakamura'>
127
+ <a href='https://github.com/nafu'>
128
+ <img src='https://github.com/nafu.png' width='140px;'>
129
129
  </a>
130
- <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
130
+ <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</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;'>
137
- </a>
138
- <h4 align='center'>Jimmy Dee</h4>
139
- </td>
140
- <td id='daniel-jankowski'>
141
- <a href='https://github.com/mollyIV'>
142
- <img src='https://github.com/mollyIV.png' width='140px;'>
134
+ <td id='luka-mirosevic'>
135
+ <a href='https://github.com/lmirosevic'>
136
+ <img src='https://github.com/lmirosevic.png' width='140px;'>
143
137
  </a>
144
- <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
138
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
145
139
  </td>
146
140
  <td id='felix-krause'>
147
141
  <a href='https://github.com/KrauseFx'>
@@ -149,25 +143,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
149
143
  </a>
150
144
  <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
151
145
  </td>
152
- <td id='jérôme-lacoste'>
153
- <a href='https://github.com/lacostej'>
154
- <img src='https://github.com/lacostej.png' width='140px;'>
146
+ <td id='helmut-januschka'>
147
+ <a href='https://github.com/hjanuschka'>
148
+ <img src='https://github.com/hjanuschka.png' width='140px;'>
155
149
  </a>
156
- <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
150
+ <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
157
151
  </td>
158
- <td id='andrew-mcburney'>
159
- <a href='https://github.com/armcburney'>
160
- <img src='https://github.com/armcburney.png' width='140px;'>
152
+ <td id='maksym-grebenets'>
153
+ <a href='https://github.com/mgrebenets'>
154
+ <img src='https://github.com/mgrebenets.png' width='140px;'>
161
155
  </a>
162
- <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
156
+ <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
157
+ </td>
158
+ <td id='jan-piotrowski'>
159
+ <a href='https://github.com/janpio'>
160
+ <img src='https://github.com/janpio.png' width='140px;'>
161
+ </a>
162
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
163
163
  </td>
164
164
  </tr>
165
165
  <tr>
166
- <td id='kohki-miki'>
167
- <a href='https://github.com/giginet'>
168
- <img src='https://github.com/giginet.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/giginet'>Kohki Miki</a></h4>
170
+ <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
171
171
  </td>
172
172
  <td id='łukasz-grabowski'>
173
173
  <a href='https://github.com/lucgrabowski'>
@@ -175,31 +175,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
175
175
  </a>
176
176
  <h4 align='center'>Łukasz Grabowski</h4>
177
177
  </td>
178
- <td id='manu-wallner'>
179
- <a href='https://github.com/milch'>
180
- <img src='https://github.com/milch.png' width='140px;'>
178
+ <td id='matthew-ellis'>
179
+ <a href='https://github.com/matthewellis'>
180
+ <img src='https://github.com/matthewellis.png' width='140px;'>
181
181
  </a>
182
- <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
182
+ <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
183
183
  </td>
184
- <td id='stefan-natchev'>
185
- <a href='https://github.com/snatchev'>
186
- <img src='https://github.com/snatchev.png' width='140px;'>
184
+ <td id='joshua-liebowitz'>
185
+ <a href='https://github.com/taquitos'>
186
+ <img src='https://github.com/taquitos.png' width='140px;'>
187
187
  </a>
188
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
188
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
189
189
  </td>
190
- <td id='luka-mirosevic'>
191
- <a href='https://github.com/lmirosevic'>
192
- <img src='https://github.com/lmirosevic.png' width='140px;'>
190
+ <td id='danielle-tomlinson'>
191
+ <a href='https://github.com/endocrimes'>
192
+ <img src='https://github.com/endocrimes.png' width='140px;'>
193
193
  </a>
194
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
194
+ <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
195
195
  </td>
196
196
  </tr>
197
197
  <tr>
198
- <td id='satoshi-namai'>
199
- <a href='https://github.com/ainame'>
200
- <img src='https://github.com/ainame.png' width='140px;'>
198
+ <td id='aaron-brager'>
199
+ <a href='https://github.com/getaaron'>
200
+ <img src='https://github.com/getaaron.png' width='140px;'>
201
201
  </a>
202
- <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
202
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
203
203
  </td>
204
204
  </table>
205
205
 
@@ -79,7 +79,7 @@ module Fastlane
79
79
  end
80
80
 
81
81
  def self.return_type
82
- :hash_of_strings
82
+ :hash
83
83
  end
84
84
 
85
85
  def self.category
@@ -216,10 +216,10 @@ module Fastlane
216
216
  # Check if upgrade is needed
217
217
  # If fastlane build settings exists already, we don't need any more changes to the Xcode project
218
218
  self.fastlane_runner_target.build_configurations.each { |config|
219
- return false if dry_run && config.build_settings["CODE_SIGN_IDENTITY"].nil?
220
- return false if dry_run && config.build_settings["MACOSX_DEPLOYMENT_TARGET"].nil?
219
+ return true if dry_run && config.build_settings["CODE_SIGN_IDENTITY"].nil?
220
+ return true if dry_run && config.build_settings["MACOSX_DEPLOYMENT_TARGET"].nil?
221
221
  }
222
- return true if dry_run
222
+ return false if dry_run
223
223
 
224
224
  # Proceed to upgrade
225
225
  self.fastlane_runner_target.build_configurations.each { |config|
@@ -236,11 +236,10 @@ module Fastlane
236
236
  phase_copy_sign = self.fastlane_runner_target.copy_files_build_phases.select { |phase_copy| phase_copy.name == "FastlaneRunnerCopySigned" }.first
237
237
 
238
238
  old_phase_copy_sign = self.fastlane_runner_target.shell_script_build_phases.select { |phase_copy| phase_copy.shell_script == "cd \"${SRCROOT}\"\ncd ../..\ncp \"${TARGET_BUILD_DIR}/${EXECUTABLE_PATH}\" .\n" }.first
239
- unless phase_copy_sign
240
- return false if dry_run
241
- end
242
239
 
243
- return true if dry_run
240
+ return true if dry_run && phase_copy_sign.nil?
241
+
242
+ return false if dry_run
244
243
 
245
244
  # Proceed to upgrade
246
245
  old_phase_copy_sign.remove_from_project unless old_phase_copy_sign.nil?
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.204.2'.freeze
2
+ VERSION = '2.204.3'.freeze
3
3
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
4
4
  MINIMUM_XCODE_RELEASE = "7.0".freeze
5
5
  RUBOCOP_REQUIREMENT = '1.12.1'.freeze
@@ -17,4 +17,4 @@ public class Deliverfile: DeliverfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -260,4 +260,4 @@ public extension DeliverfileProtocol {
260
260
 
261
261
  // Please don't remove the lines below
262
262
  // They are used to detect outdated files
263
- // FastlaneRunnerAPIVersion [0.9.98]
263
+ // FastlaneRunnerAPIVersion [0.9.99]
@@ -6643,7 +6643,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
6643
6643
  - force: Renew the provisioning profiles every time you run match
6644
6644
  - forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
6645
6645
  - includeAllCertificates: Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
6646
- - forceForNewCertificates: Renew the provisioning profiles if the device count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
6646
+ - forceForNewCertificates: Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
6647
6647
  - skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
6648
6648
  - safeRemoveCerts: Remove certs from repository during nuke without revoking them on the developer portal
6649
6649
  - skipDocs: Skip generation of a README.md for the created git repository
@@ -6846,7 +6846,7 @@ public func match(type: String = matchfile.type,
6846
6846
  - force: Renew the provisioning profiles every time you run match
6847
6847
  - forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
6848
6848
  - includeAllCertificates: Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
6849
- - forceForNewCertificates: Renew the provisioning profiles if the device count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
6849
+ - forceForNewCertificates: Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
6850
6850
  - skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
6851
6851
  - safeRemoveCerts: Remove certs from repository during nuke without revoking them on the developer portal
6852
6852
  - skipDocs: Skip generation of a README.md for the created git repository
@@ -8240,7 +8240,7 @@ public func puts(message: OptionalConfigValue<String?> = .fastlaneDefault(nil))
8240
8240
  This can be useful when basing your release process on the version string only stored in one place - in the podspec.
8241
8241
  As one of the first steps you'd read the podspec and its version and the rest of the workflow can use that version string (when e.g. creating a new git tag or a GitHub Release).
8242
8242
  */
8243
- @discardableResult public func readPodspec(path: String) -> [String: String] {
8243
+ @discardableResult public func readPodspec(path: String) -> [String: Any] {
8244
8244
  let pathArg = RubyCommand.Argument(name: "path", value: path, type: nil)
8245
8245
  let array: [RubyCommand.Argument?] = [pathArg]
8246
8246
  let args: [RubyCommand.Argument] = array
@@ -11036,7 +11036,7 @@ public func swiftlint(mode: String = "lint",
11036
11036
  - force: Renew the provisioning profiles every time you run match
11037
11037
  - forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
11038
11038
  - includeAllCertificates: Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
11039
- - forceForNewCertificates: Renew the provisioning profiles if the device count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
11039
+ - forceForNewCertificates: Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
11040
11040
  - skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
11041
11041
  - safeRemoveCerts: Remove certs from repository during nuke without revoking them on the developer portal
11042
11042
  - skipDocs: Skip generation of a README.md for the created git repository
@@ -13430,4 +13430,4 @@ public let snapshotfile: Snapshotfile = .init()
13430
13430
 
13431
13431
  // Please don't remove the lines below
13432
13432
  // They are used to detect outdated files
13433
- // FastlaneRunnerAPIVersion [0.9.151]
13433
+ // FastlaneRunnerAPIVersion [0.9.152]
@@ -17,4 +17,4 @@ public class Gymfile: GymfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -204,4 +204,4 @@ public extension GymfileProtocol {
204
204
 
205
205
  // Please don't remove the lines below
206
206
  // They are used to detect outdated files
207
- // FastlaneRunnerAPIVersion [0.9.101]
207
+ // FastlaneRunnerAPIVersion [0.9.102]
@@ -17,4 +17,4 @@ public class Matchfile: MatchfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -104,7 +104,7 @@ public protocol MatchfileProtocol: AnyObject {
104
104
  /// Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
105
105
  var includeAllCertificates: Bool { get }
106
106
 
107
- /// Renew the provisioning profiles if the device count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
107
+ /// Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
108
108
  var forceForNewCertificates: Bool { get }
109
109
 
110
110
  /// Disables confirmation prompts during nuke, answering them with yes
@@ -196,4 +196,4 @@ public extension MatchfileProtocol {
196
196
 
197
197
  // Please don't remove the lines below
198
198
  // They are used to detect outdated files
199
- // FastlaneRunnerAPIVersion [0.9.95]
199
+ // FastlaneRunnerAPIVersion [0.9.96]
@@ -17,4 +17,4 @@ public class Precheckfile: PrecheckfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -52,4 +52,4 @@ public extension PrecheckfileProtocol {
52
52
 
53
53
  // Please don't remove the lines below
54
54
  // They are used to detect outdated files
55
- // FastlaneRunnerAPIVersion [0.9.94]
55
+ // FastlaneRunnerAPIVersion [0.9.95]
@@ -17,4 +17,4 @@ public class Scanfile: ScanfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -312,4 +312,4 @@ public extension ScanfileProtocol {
312
312
 
313
313
  // Please don't remove the lines below
314
314
  // They are used to detect outdated files
315
- // FastlaneRunnerAPIVersion [0.9.106]
315
+ // FastlaneRunnerAPIVersion [0.9.107]
@@ -17,4 +17,4 @@ public class Screengrabfile: ScreengrabfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -96,4 +96,4 @@ public extension ScreengrabfileProtocol {
96
96
 
97
97
  // Please don't remove the lines below
98
98
  // They are used to detect outdated files
99
- // FastlaneRunnerAPIVersion [0.9.96]
99
+ // FastlaneRunnerAPIVersion [0.9.97]
@@ -17,4 +17,4 @@ public class Snapshotfile: SnapshotfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.204.2
20
+ // Generated with fastlane 2.204.3
@@ -204,4 +204,4 @@ public extension SnapshotfileProtocol {
204
204
 
205
205
  // Please don't remove the lines below
206
206
  // They are used to detect outdated files
207
- // FastlaneRunnerAPIVersion [0.9.90]
207
+ // FastlaneRunnerAPIVersion [0.9.91]
@@ -2,35 +2,35 @@
2
2
  "entries": {
3
3
  "brew": {
4
4
  "swiftformat": {
5
- "version": "0.49.3",
5
+ "version": "0.49.4",
6
6
  "bottle": {
7
7
  "rebuild": 0,
8
8
  "root_url": "https://ghcr.io/v2/homebrew/core",
9
9
  "files": {
10
10
  "arm64_monterey": {
11
11
  "cellar": ":any_skip_relocation",
12
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:3fd0427fdb74e0cc88da322ce2b2cd0b9e021fd286f34978b01b0bb62f9e8529",
13
- "sha256": "3fd0427fdb74e0cc88da322ce2b2cd0b9e021fd286f34978b01b0bb62f9e8529"
12
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:8253553ad8c6ce8550175e1152e82d80ce125fa4045a890941e1e6e915104e05",
13
+ "sha256": "8253553ad8c6ce8550175e1152e82d80ce125fa4045a890941e1e6e915104e05"
14
14
  },
15
15
  "arm64_big_sur": {
16
16
  "cellar": ":any_skip_relocation",
17
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:cc99c52385e32a1d2bb42625a535cac9835313e65ba84776cbe2ad49ae41167d",
18
- "sha256": "cc99c52385e32a1d2bb42625a535cac9835313e65ba84776cbe2ad49ae41167d"
17
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:d569c123783a70a2020f3b27de99eb7a17cfb393295e04d56c73b72212a3bf49",
18
+ "sha256": "d569c123783a70a2020f3b27de99eb7a17cfb393295e04d56c73b72212a3bf49"
19
19
  },
20
20
  "monterey": {
21
21
  "cellar": ":any_skip_relocation",
22
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:39877fc1115e6f15d20a76c30ddbb23d45f52fb95eb81382c4f4abe2b98eb03b",
23
- "sha256": "39877fc1115e6f15d20a76c30ddbb23d45f52fb95eb81382c4f4abe2b98eb03b"
22
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:4203004748fbc1eb752fc9b9b59f94627a7d5cc50ec9c0cafdbccfd3deca8558",
23
+ "sha256": "4203004748fbc1eb752fc9b9b59f94627a7d5cc50ec9c0cafdbccfd3deca8558"
24
24
  },
25
25
  "big_sur": {
26
26
  "cellar": ":any_skip_relocation",
27
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:ead4633c1ec372b7cc6995dba2d3352691b4086f501e0346629072873bccef99",
28
- "sha256": "ead4633c1ec372b7cc6995dba2d3352691b4086f501e0346629072873bccef99"
27
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:d9781aa3d22021a0dbc3f96e5d9604b1de9b269e9ce502e4a7eedf710a6aa555",
28
+ "sha256": "d9781aa3d22021a0dbc3f96e5d9604b1de9b269e9ce502e4a7eedf710a6aa555"
29
29
  },
30
30
  "catalina": {
31
31
  "cellar": ":any_skip_relocation",
32
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:359cd4f2c3eea7c28f485db06dc955d8b27eabab340420a0c52931004a3ee3e7",
33
- "sha256": "359cd4f2c3eea7c28f485db06dc955d8b27eabab340420a0c52931004a3ee3e7"
32
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:13bf74f3ee6e5afb272cc9897cc7a660a738e30137e9be7d240cfa8c18aeb8c1",
33
+ "sha256": "13bf74f3ee6e5afb272cc9897cc7a660a738e30137e9be7d240cfa8c18aeb8c1"
34
34
  }
35
35
  }
36
36
  }
@@ -56,9 +56,9 @@
56
56
  "macOS": "11.0.1"
57
57
  },
58
58
  "monterey": {
59
- "HOMEBREW_VERSION": "3.3.13-44-g8e97f60",
59
+ "HOMEBREW_VERSION": "3.3.14-58-g02ceb18",
60
60
  "HOMEBREW_PREFIX": "/opt/homebrew",
61
- "Homebrew/homebrew-core": "e240762241519818ce5ec468ac8b67daf17d64a2",
61
+ "Homebrew/homebrew-core": "23ce0d29228c3f5f9c70211d7f8db2e0ffc8dd4e",
62
62
  "CLT": "13.2.0.0.1.1638488800",
63
63
  "Xcode": "13.2.1",
64
64
  "macOS": "12.0.1"
@@ -249,7 +249,7 @@ module Match
249
249
  default_value: false),
250
250
  FastlaneCore::ConfigItem.new(key: :force_for_new_certificates,
251
251
  env_name: "MATCH_FORCE_FOR_NEW_CERTIFICATES",
252
- description: "Renew the provisioning profiles if the device count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'",
252
+ description: "Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'",
253
253
  type: Boolean,
254
254
  default_value: false),
255
255
  FastlaneCore::ConfigItem.new(key: :skip_confirmation,
@@ -188,6 +188,7 @@ module Scan
188
188
  number_of_tests: 0,
189
189
  number_of_failures: 0,
190
190
  number_of_retries: 0,
191
+ number_of_skipped: 0,
191
192
  number_of_tests_excluding_retries: 0,
192
193
  number_of_failures_excluding_retries: 0
193
194
  }
@@ -250,6 +251,7 @@ module Scan
250
251
  results[:number_of_failures] += data[:number_of_failures]
251
252
  results[:number_of_tests_excluding_retries] += data[:number_of_tests_excluding_retries]
252
253
  results[:number_of_failures_excluding_retries] += data[:number_of_failures_excluding_retries]
254
+ results[:number_of_skipped] += data[:number_of_skipped] || 0
253
255
  results[:number_of_retries] += data[:number_of_retries]
254
256
  end
255
257
 
@@ -266,6 +268,7 @@ module Scan
266
268
  results = trainer_test_results
267
269
 
268
270
  number_of_retries = results[:number_of_retries]
271
+ number_of_skipped = results[:number_of_skipped]
269
272
  number_of_tests = results[:number_of_tests_excluding_retries]
270
273
  number_of_failures = results[:number_of_failures_excluding_retries]
271
274
 
@@ -293,8 +296,9 @@ module Scan
293
296
  title: "Test Results",
294
297
  rows: [
295
298
  ["Number of tests", "#{number_of_tests}#{retries_str}"],
299
+ number_of_skipped > 0 ? ["Number of tests skipped", number_of_skipped] : nil,
296
300
  ["Number of failures", failures_str]
297
- ]
301
+ ].compact
298
302
  }))
299
303
  puts("")
300
304
 
@@ -165,7 +165,7 @@ open class Snapshot: NSObject {
165
165
  }
166
166
 
167
167
  let screenshot = XCUIScreen.main.screenshot()
168
- #if os(iOS)
168
+ #if os(iOS) && !targetEnvironment(macCatalyst)
169
169
  let image = XCUIDevice.shared.orientation.isLandscape ? fixLandscapeOrientation(image: screenshot.image) : screenshot.image
170
170
  #else
171
171
  let image = screenshot.image
@@ -306,4 +306,4 @@ private extension CGFloat {
306
306
 
307
307
  // Please don't remove the lines below
308
308
  // They are used to detect outdated configuration files
309
- // SnapshotHelperVersion [1.27]
309
+ // SnapshotHelperVersion [1.28]
@@ -168,7 +168,7 @@ module Spaceship
168
168
  "R58UK2EWSO" => Production,
169
169
  "9RQEK7MSXA" => InHouse,
170
170
  "LA30L5BJEU" => Certificate,
171
- "BKLRAVXMGM" => DevelopmentPush,
171
+ "JKG5JZ54H7" => DevelopmentPush,
172
172
  "UPV3DW712I" => ProductionPush,
173
173
  "Y3B2F3TYSI" => Passbook,
174
174
  "3T2ZP62QW8" => WebsitePush,
@@ -178,12 +178,13 @@ module Spaceship
178
178
  }
179
179
 
180
180
  OLDER_IOS_CERTIFICATE_TYPES = [
181
- # those are also sent by the browser, but not sure what they represent
181
+ "3BQKVH9I2X", # old ProductionPush
182
+ "BKLRAVXMGM", # old DevelopmentPush
183
+ # those are also sent by the browser, but not sure what they represent:
182
184
  "T44PTHVNID",
183
185
  "DZQUP8189Y",
184
186
  "FGQUP4785Z",
185
187
  "S5WE21TULA",
186
- "3BQKVH9I2X", # ProductionPush,
187
188
  "FUOY7LWJET"
188
189
  ]
189
190
 
@@ -6,13 +6,16 @@
6
6
 
7
7
  <testsuites tests="<%= number_of_tests %>" failures="<%= number_of_failures %>">
8
8
  <% @results.each do |testsuite| %>
9
- <testsuite name=<%= (testsuite[:target_name].nil? ? testsuite[:test_name] : testsuite[:target_name]).encode(:xml => :attr) %> tests="<%= testsuite[:number_of_tests_excluding_retries] %>" failures="<%= testsuite[:number_of_failures_excluding_retries] %>" time="<%= testsuite[:duration] %>">
9
+ <testsuite name=<%= (testsuite[:target_name].nil? ? testsuite[:test_name] : testsuite[:target_name]).encode(:xml => :attr) %> tests="<%= testsuite[:number_of_tests_excluding_retries] %>" failures="<%= testsuite[:number_of_failures_excluding_retries] %>" <% if testsuite[:number_of_skipped] %>skipped="<%= testsuite[:number_of_skipped] %>" <% end %>time="<%= testsuite[:duration] %>">
10
10
  <% testsuite[:tests].each do |test| %>
11
11
  <testcase classname=<%= test[:test_group].encode(:xml => :attr) %> name=<%= test[:name].encode(:xml => :attr) %> time="<%= test[:duration] %>">
12
12
  <% (test[:failures] || []).each do |failure| %>
13
13
  <failure message=<%= failure[:failure_message].encode(:xml => :attr) %>>
14
14
  </failure>
15
15
  <% end %>
16
+ <% if test[:skipped] %>
17
+ <skipped/>
18
+ <% end%>
16
19
  </testcase>
17
20
  <% end %>
18
21
  </testsuite>
@@ -19,6 +19,7 @@ module Trainer
19
19
  attr_accessor :number_of_tests_excluding_retries
20
20
  attr_accessor :number_of_failures_excluding_retries
21
21
  attr_accessor :number_of_retries
22
+ attr_accessor :number_of_skipped
22
23
 
23
24
  # Returns a hash with the path being the key, and the value
24
25
  # defining if the tests were successful
@@ -89,7 +90,8 @@ module Trainer
89
90
  number_of_failures: tp.number_of_failures,
90
91
  number_of_tests_excluding_retries: tp.number_of_tests_excluding_retries,
91
92
  number_of_failures_excluding_retries: tp.number_of_failures_excluding_retries,
92
- number_of_retries: tp.number_of_retries
93
+ number_of_retries: tp.number_of_retries,
94
+ number_of_skipped: tp.number_of_skipped
93
95
  }
94
96
  end
95
97
  return_hash
@@ -116,12 +118,14 @@ module Trainer
116
118
  self.number_of_tests_excluding_retries = 0
117
119
  self.number_of_failures_excluding_retries = 0
118
120
  self.number_of_retries = 0
121
+ self.number_of_skipped = 0
119
122
  self.data.each do |thing|
120
123
  self.number_of_tests += thing[:number_of_tests].to_i
121
124
  self.number_of_failures += thing[:number_of_failures].to_i
122
125
  self.number_of_tests_excluding_retries += thing[:number_of_tests_excluding_retries].to_i
123
126
  self.number_of_failures_excluding_retries += thing[:number_of_failures_excluding_retries].to_i
124
127
  self.number_of_retries += thing[:number_of_retries].to_i
128
+ self.number_of_skipped += thing[:number_of_skipped].to_i
125
129
  end
126
130
  end
127
131
 
@@ -250,6 +254,7 @@ module Trainer
250
254
 
251
255
  info = tests_by_identifier[identifier] || {}
252
256
  info[:failure_count] ||= 0
257
+ info[:skip_count] ||= 0
253
258
  info[:success_count] ||= 0
254
259
 
255
260
  retry_count = info[:retry_count]
@@ -272,6 +277,9 @@ module Trainer
272
277
  }]
273
278
 
274
279
  info[:failure_count] += 1
280
+ elsif test.test_status == "Skipped"
281
+ test_row[:skipped] = true
282
+ info[:skip_count] += 1
275
283
  else
276
284
  info[:success_count] = 1
277
285
  end
@@ -319,7 +327,8 @@ module Trainer
319
327
  # Used for seeing if any tests continued to fail after all of the Xcode 13 (and up) retries have finished
320
328
  unique_tests = tests_by_identifier.values || []
321
329
  row[:number_of_tests_excluding_retries] = unique_tests.count
322
- row[:number_of_failures_excluding_retries] = unique_tests.find_all { |a| a[:success_count] == 0 }.count
330
+ row[:number_of_skipped] = unique_tests.map { |a| a[:skip_count] }.inject(:+)
331
+ row[:number_of_failures_excluding_retries] = unique_tests.find_all { |a| (a[:success_count] + a[:skip_count]) == 0 }.count
323
332
  row[:number_of_retries] = unique_tests.map { |a| a[:retry_count] }.inject(:+)
324
333
 
325
334
  row
metadata CHANGED
@@ -1,39 +1,39 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.204.2
4
+ version: 2.204.3
5
5
  platform: ruby
6
6
  authors:
7
- - Iulian Onofrei
7
+ - Jorge Revuelta H
8
8
  - Roger Oba
9
9
  - Danielle Tomlinson
10
- - Manish Rathi
11
- - Josh Holtz
12
- - Felix Krause
10
+ - Helmut Januschka
13
11
  - Jérôme Lacoste
12
+ - Josh Holtz
14
13
  - Joshua Liebowitz
14
+ - Felix Krause
15
+ - Aaron Brager
16
+ - Łukasz Grabowski
17
+ - Fumiya Nakamura
18
+ - Iulian Onofrei
19
+ - Jimmy Dee
20
+ - Manish Rathi
15
21
  - Kohki Miki
16
22
  - Daniel Jankowski
17
- - Manu Wallner
18
23
  - Maksym Grebenets
19
- - Jan Piotrowski
20
- - Olivier Halligon
21
- - Satoshi Namai
22
24
  - Stefan Natchev
23
- - Łukasz Grabowski
24
- - Fumiya Nakamura
25
- - Luka Mirosevic
25
+ - Satoshi Namai
26
+ - Max Ott
26
27
  - Matthew Ellis
28
+ - Luka Mirosevic
29
+ - Jan Piotrowski
30
+ - Olivier Halligon
31
+ - Manu Wallner
27
32
  - Andrew McBurney
28
- - Jorge Revuelta H
29
- - Max Ott
30
- - Aaron Brager
31
- - Helmut Januschka
32
- - Jimmy Dee
33
33
  autorequire:
34
34
  bindir: bin
35
35
  cert_chain: []
36
- date: 2022-02-04 00:00:00.000000000 Z
36
+ date: 2022-02-11 00:00:00.000000000 Z
37
37
  dependencies:
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: xcodeproj
@@ -1848,6 +1848,7 @@ files:
1848
1848
  - trainer/lib/.DS_Store
1849
1849
  - trainer/lib/assets/junit.xml.erb
1850
1850
  - trainer/lib/trainer.rb
1851
+ - trainer/lib/trainer/.test_parser.rb.swp
1851
1852
  - trainer/lib/trainer/commands_generator.rb
1852
1853
  - trainer/lib/trainer/junit_generator.rb
1853
1854
  - trainer/lib/trainer/module.rb