fastlane 2.224.0 → 2.232.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +98 -92
  3. data/bin/fastlane +2 -2
  4. data/cert/lib/cert/options.rb +7 -2
  5. data/cert/lib/cert/runner.rb +23 -11
  6. data/deliver/lib/assets/summary.html.erb +3 -3
  7. data/deliver/lib/deliver/app_screenshot.rb +215 -347
  8. data/deliver/lib/deliver/app_screenshot_iterator.rb +4 -1
  9. data/deliver/lib/deliver/app_screenshot_validator.rb +5 -21
  10. data/deliver/lib/deliver/loader.rb +2 -9
  11. data/deliver/lib/deliver/options.rb +1 -1
  12. data/deliver/lib/deliver/runner.rb +1 -1
  13. data/deliver/lib/deliver/upload_metadata.rb +5 -0
  14. data/deliver/lib/deliver/upload_screenshots.rb +4 -2
  15. data/fastlane/lib/assets/completions/completion.bash +1 -1
  16. data/fastlane/lib/assets/completions/completion.sh +2 -2
  17. data/fastlane/lib/fastlane/actions/app_store_build_number.rb +16 -15
  18. data/fastlane/lib/fastlane/actions/appium.rb +1 -1
  19. data/fastlane/lib/fastlane/actions/docs/create_app_online.md +6 -3
  20. data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +12 -8
  21. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +56 -17
  22. data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +13 -1
  23. data/fastlane/lib/fastlane/actions/get_version_number.rb +1 -1
  24. data/fastlane/lib/fastlane/actions/import_certificate.rb +9 -1
  25. data/fastlane/lib/fastlane/actions/import_from_git.rb +11 -4
  26. data/fastlane/lib/fastlane/actions/increment_build_number.rb +1 -1
  27. data/fastlane/lib/fastlane/actions/install_xcode_plugin.rb +3 -2
  28. data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +2 -2
  29. data/fastlane/lib/fastlane/actions/modify_services.rb +1 -0
  30. data/fastlane/lib/fastlane/actions/notarize.rb +4 -0
  31. data/fastlane/lib/fastlane/actions/onesignal.rb +1 -1
  32. data/fastlane/lib/fastlane/actions/register_device.rb +1 -1
  33. data/fastlane/lib/fastlane/actions/register_devices.rb +1 -1
  34. data/fastlane/lib/fastlane/actions/setup_ci.rb +14 -4
  35. data/fastlane/lib/fastlane/actions/testfairy.rb +41 -4
  36. data/fastlane/lib/fastlane/actions/unlock_keychain.rb +6 -1
  37. data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +1 -1
  38. data/fastlane/lib/fastlane/actions/xcov.rb +1 -7
  39. data/fastlane/lib/fastlane/cli_tools_distributor.rb +9 -0
  40. data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +4 -4
  41. data/fastlane/lib/fastlane/erb_template_helper.rb +1 -7
  42. data/fastlane/lib/fastlane/fast_file.rb +9 -6
  43. data/fastlane/lib/fastlane/helper/s3_client_helper.rb +4 -0
  44. data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +1 -1
  45. data/fastlane/lib/fastlane/plugins/template/.github/workflows/test.yml +20 -20
  46. data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +1 -1
  47. data/fastlane/lib/fastlane/version.rb +2 -1
  48. data/fastlane/swift/Actions.swift +1 -1
  49. data/fastlane/swift/Appfile.swift +13 -5
  50. data/fastlane/swift/ArgumentProcessor.swift +1 -1
  51. data/fastlane/swift/Atomic.swift +1 -1
  52. data/fastlane/swift/ControlCommand.swift +5 -4
  53. data/fastlane/swift/Deliverfile.swift +2 -2
  54. data/fastlane/swift/DeliverfileProtocol.swift +265 -68
  55. data/fastlane/swift/Fastlane.swift +187 -168
  56. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.pbxproj +3 -1
  57. data/fastlane/swift/Gymfile.swift +2 -2
  58. data/fastlane/swift/GymfileProtocol.swift +227 -54
  59. data/fastlane/swift/LaneFileProtocol.swift +7 -5
  60. data/fastlane/swift/MainProcess.swift +1 -1
  61. data/fastlane/swift/Matchfile.swift +2 -2
  62. data/fastlane/swift/MatchfileProtocol.swift +226 -59
  63. data/fastlane/swift/OptionalConfigValue.swift +1 -1
  64. data/fastlane/swift/Plugins.swift +1 -1
  65. data/fastlane/swift/Precheckfile.swift +2 -2
  66. data/fastlane/swift/PrecheckfileProtocol.swift +45 -13
  67. data/fastlane/swift/RubyCommand.swift +6 -7
  68. data/fastlane/swift/RubyCommandable.swift +1 -1
  69. data/fastlane/swift/Runner.swift +3 -3
  70. data/fastlane/swift/RunnerArgument.swift +1 -1
  71. data/fastlane/swift/Scanfile.swift +2 -2
  72. data/fastlane/swift/ScanfileProtocol.swift +334 -84
  73. data/fastlane/swift/Screengrabfile.swift +2 -2
  74. data/fastlane/swift/ScreengrabfileProtocol.swift +89 -24
  75. data/fastlane/swift/Snapshotfile.swift +2 -2
  76. data/fastlane/swift/SnapshotfileProtocol.swift +216 -53
  77. data/fastlane/swift/SocketClient.swift +7 -7
  78. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  79. data/fastlane/swift/SocketResponse.swift +1 -1
  80. data/fastlane/swift/formatting/Brewfile.lock.json +15 -25
  81. data/fastlane/swift/formatting/Rakefile +1 -2
  82. data/fastlane/swift/main.swift +1 -1
  83. data/fastlane_core/lib/assets/XMLTemplate.xml.erb +5 -1
  84. data/fastlane_core/lib/fastlane_core/cert_checker.rb +10 -0
  85. data/fastlane_core/lib/fastlane_core/command_executor.rb +3 -1
  86. data/fastlane_core/lib/fastlane_core/fastlane_pty.rb +5 -1
  87. data/fastlane_core/lib/fastlane_core/helper.rb +6 -1
  88. data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +4 -14
  89. data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +19 -2
  90. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +143 -106
  91. data/fastlane_core/lib/fastlane_core/keychain_importer.rb +3 -1
  92. data/fastlane_core/lib/fastlane_core/project.rb +8 -0
  93. data/fastlane_core/lib/fastlane_core/provisioning_profile.rb +7 -1
  94. data/frameit/lib/frameit/device.rb +2 -2
  95. data/frameit/lib/frameit/device_types.rb +108 -70
  96. data/frameit/lib/frameit/template_finder.rb +1 -1
  97. data/gym/lib/assets/wrap_xcodebuild/xcbuild-safe.sh +1 -0
  98. data/gym/lib/gym/module.rb +9 -4
  99. data/gym/lib/gym/options.rb +20 -2
  100. data/gym/lib/gym/runner.rb +38 -3
  101. data/match/lib/assets/READMETemplate.md +2 -2
  102. data/match/lib/match/generator.rb +2 -2
  103. data/match/lib/match/options.rb +1 -0
  104. data/match/lib/match/runner.rb +1 -1
  105. data/match/lib/match/storage/s3_storage.rb +4 -7
  106. data/pilot/lib/pilot/build_manager.rb +7 -1
  107. data/precheck/lib/precheck/options.rb +1 -1
  108. data/produce/lib/produce/commands_generator.rb +2 -0
  109. data/produce/lib/produce/developer_center.rb +1 -0
  110. data/produce/lib/produce/options.rb +1 -1
  111. data/produce/lib/produce/service.rb +6 -1
  112. data/scan/lib/scan/error_handler.rb +5 -0
  113. data/scan/lib/scan/options.rb +13 -3
  114. data/scan/lib/scan/test_command_generator.rb +10 -2
  115. data/sigh/lib/assets/resign.sh +7 -5
  116. data/sigh/lib/sigh/local_manage.rb +6 -4
  117. data/sigh/lib/sigh/options.rb +1 -0
  118. data/sigh/lib/sigh/runner.rb +23 -3
  119. data/snapshot/lib/snapshot/detect_values.rb +1 -1
  120. data/snapshot/lib/snapshot/options.rb +13 -1
  121. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +4 -2
  122. data/spaceship/lib/spaceship/client.rb +153 -22
  123. data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +65 -9
  124. data/spaceship/lib/spaceship/connect_api/models/app_info_localization.rb +4 -4
  125. data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +7 -1
  126. data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +16 -16
  127. data/spaceship/lib/spaceship/connect_api/models/build_upload.rb +42 -0
  128. data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +2 -0
  129. data/spaceship/lib/spaceship/connect_api/models/certificate.rb +33 -2
  130. data/spaceship/lib/spaceship/connect_api/models/device.rb +1 -2
  131. data/spaceship/lib/spaceship/connect_api/models/profile.rb +2 -3
  132. data/spaceship/lib/spaceship/connect_api/models/webhook.rb +62 -0
  133. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +0 -6
  134. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +9 -0
  135. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +38 -0
  136. data/spaceship/lib/spaceship/connect_api.rb +2 -0
  137. data/spaceship/lib/spaceship/errors.rb +23 -6
  138. data/spaceship/lib/spaceship/portal/key.rb +22 -3
  139. data/spaceship/lib/spaceship/portal/portal_client.rb +29 -2
  140. data/spaceship/lib/spaceship/spaceauth_runner.rb +5 -15
  141. data/supply/lib/supply/client.rb +18 -1
  142. data/supply/lib/supply/uploader.rb +22 -11
  143. data/trainer/lib/trainer/legacy_xcresult.rb +586 -0
  144. data/trainer/lib/trainer/options.rb +5 -0
  145. data/trainer/lib/trainer/plist_test_summary_parser.rb +84 -0
  146. data/trainer/lib/trainer/test_parser.rb +12 -293
  147. data/trainer/lib/trainer/xcresult/helper.rb +63 -0
  148. data/trainer/lib/trainer/xcresult/repetition.rb +39 -0
  149. data/trainer/lib/trainer/xcresult/test_case.rb +221 -0
  150. data/trainer/lib/trainer/xcresult/test_case_attributes.rb +49 -0
  151. data/trainer/lib/trainer/xcresult/test_plan.rb +91 -0
  152. data/trainer/lib/trainer/xcresult/test_suite.rb +134 -0
  153. data/trainer/lib/trainer/xcresult.rb +31 -388
  154. data/trainer/lib/trainer.rb +3 -1
  155. metadata +172 -33
  156. data/fastlane/lib/fastlane/actions/hipchat.rb +0 -200
  157. data/fastlane/lib/fastlane/core_ext/bundler_monkey_patch.rb +0 -14
  158. data/fastlane/lib/fastlane/plugins/template/.circleci/config.yml +0 -43
  159. data/fastlane/lib/fastlane/plugins/template/.travis.yml +0 -4
@@ -1,5 +1,5 @@
1
1
  // MatchfileProtocol.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  public protocol MatchfileProtocol: AnyObject {
5
5
  /// Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution, developer_id_installer
@@ -146,7 +146,7 @@ public protocol MatchfileProtocol: AnyObject {
146
146
  /// Enable this if you have the Mac Catalyst capability enabled and your project was created with Xcode 11.3 or earlier. Prepends 'maccatalyst.' to the app identifier for the provisioning profile mapping
147
147
  var deriveCatalystAppIdentifier: Bool { get }
148
148
 
149
- /// The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
149
+ /// **DEPRECATED!** Removed since May 2025 on App Store Connect API OpenAPI v3.8.0 - Learn more: https://docs.fastlane.tools/actions/match/#managed-capabilities - The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
150
150
  var templateName: String? { get }
151
151
 
152
152
  /// A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
@@ -172,64 +172,231 @@ public protocol MatchfileProtocol: AnyObject {
172
172
  }
173
173
 
174
174
  public extension MatchfileProtocol {
175
- var type: String { return "development" }
176
- var additionalCertTypes: [String]? { return nil }
177
- var readonly: Bool { return false }
178
- var generateAppleCerts: Bool { return true }
179
- var skipProvisioningProfiles: Bool { return false }
180
- var appIdentifier: [String] { return [] }
181
- var apiKeyPath: String? { return nil }
182
- var apiKey: [String: Any]? { return nil }
183
- var username: String? { return nil }
184
- var teamId: String? { return nil }
185
- var teamName: String? { return nil }
186
- var storageMode: String { return "git" }
187
- var gitUrl: String { return "" }
188
- var gitBranch: String { return "master" }
189
- var gitFullName: String? { return nil }
190
- var gitUserEmail: String? { return nil }
191
- var shallowClone: Bool { return false }
192
- var cloneBranchDirectly: Bool { return false }
193
- var gitBasicAuthorization: String? { return nil }
194
- var gitBearerAuthorization: String? { return nil }
195
- var gitPrivateKey: String? { return nil }
196
- var googleCloudBucketName: String? { return nil }
197
- var googleCloudKeysFile: String? { return nil }
198
- var googleCloudProjectId: String? { return nil }
199
- var skipGoogleCloudAccountConfirmation: Bool { return false }
200
- var s3Region: String? { return nil }
201
- var s3AccessKey: String? { return nil }
202
- var s3SecretAccessKey: String? { return nil }
203
- var s3Bucket: String? { return nil }
204
- var s3ObjectPrefix: String? { return nil }
205
- var s3SkipEncryption: Bool { return false }
206
- var gitlabProject: String? { return nil }
207
- var gitlabHost: String { return "https://gitlab.com" }
208
- var jobToken: String? { return nil }
209
- var privateToken: String? { return nil }
210
- var keychainName: String { return "login.keychain" }
211
- var keychainPassword: String? { return nil }
212
- var force: Bool { return false }
213
- var forceForNewDevices: Bool { return false }
214
- var includeMacInProfiles: Bool { return false }
215
- var includeAllCertificates: Bool { return false }
216
- var certificateId: String? { return nil }
217
- var forceForNewCertificates: Bool { return false }
218
- var skipConfirmation: Bool { return false }
219
- var safeRemoveCerts: Bool { return false }
220
- var skipDocs: Bool { return false }
221
- var platform: String { return "ios" }
222
- var deriveCatalystAppIdentifier: Bool { return false }
223
- var templateName: String? { return nil }
224
- var profileName: String? { return nil }
225
- var failOnNameTaken: Bool { return false }
226
- var skipCertificateMatching: Bool { return false }
227
- var outputPath: String? { return nil }
228
- var skipSetPartitionList: Bool { return false }
229
- var forceLegacyEncryption: Bool { return false }
230
- var verbose: Bool { return false }
175
+ var type: String {
176
+ return "development"
177
+ }
178
+
179
+ var additionalCertTypes: [String]? {
180
+ return nil
181
+ }
182
+
183
+ var readonly: Bool {
184
+ return false
185
+ }
186
+
187
+ var generateAppleCerts: Bool {
188
+ return true
189
+ }
190
+
191
+ var skipProvisioningProfiles: Bool {
192
+ return false
193
+ }
194
+
195
+ var appIdentifier: [String] {
196
+ return []
197
+ }
198
+
199
+ var apiKeyPath: String? {
200
+ return nil
201
+ }
202
+
203
+ var apiKey: [String: Any]? {
204
+ return nil
205
+ }
206
+
207
+ var username: String? {
208
+ return nil
209
+ }
210
+
211
+ var teamId: String? {
212
+ return nil
213
+ }
214
+
215
+ var teamName: String? {
216
+ return nil
217
+ }
218
+
219
+ var storageMode: String {
220
+ return "git"
221
+ }
222
+
223
+ var gitUrl: String {
224
+ return ""
225
+ }
226
+
227
+ var gitBranch: String {
228
+ return "master"
229
+ }
230
+
231
+ var gitFullName: String? {
232
+ return nil
233
+ }
234
+
235
+ var gitUserEmail: String? {
236
+ return nil
237
+ }
238
+
239
+ var shallowClone: Bool {
240
+ return false
241
+ }
242
+
243
+ var cloneBranchDirectly: Bool {
244
+ return false
245
+ }
246
+
247
+ var gitBasicAuthorization: String? {
248
+ return nil
249
+ }
250
+
251
+ var gitBearerAuthorization: String? {
252
+ return nil
253
+ }
254
+
255
+ var gitPrivateKey: String? {
256
+ return nil
257
+ }
258
+
259
+ var googleCloudBucketName: String? {
260
+ return nil
261
+ }
262
+
263
+ var googleCloudKeysFile: String? {
264
+ return nil
265
+ }
266
+
267
+ var googleCloudProjectId: String? {
268
+ return nil
269
+ }
270
+
271
+ var skipGoogleCloudAccountConfirmation: Bool {
272
+ return false
273
+ }
274
+
275
+ var s3Region: String? {
276
+ return nil
277
+ }
278
+
279
+ var s3AccessKey: String? {
280
+ return nil
281
+ }
282
+
283
+ var s3SecretAccessKey: String? {
284
+ return nil
285
+ }
286
+
287
+ var s3Bucket: String? {
288
+ return nil
289
+ }
290
+
291
+ var s3ObjectPrefix: String? {
292
+ return nil
293
+ }
294
+
295
+ var s3SkipEncryption: Bool {
296
+ return false
297
+ }
298
+
299
+ var gitlabProject: String? {
300
+ return nil
301
+ }
302
+
303
+ var gitlabHost: String {
304
+ return "https://gitlab.com"
305
+ }
306
+
307
+ var jobToken: String? {
308
+ return nil
309
+ }
310
+
311
+ var privateToken: String? {
312
+ return nil
313
+ }
314
+
315
+ var keychainName: String {
316
+ return "login.keychain"
317
+ }
318
+
319
+ var keychainPassword: String? {
320
+ return nil
321
+ }
322
+
323
+ var force: Bool {
324
+ return false
325
+ }
326
+
327
+ var forceForNewDevices: Bool {
328
+ return false
329
+ }
330
+
331
+ var includeMacInProfiles: Bool {
332
+ return false
333
+ }
334
+
335
+ var includeAllCertificates: Bool {
336
+ return false
337
+ }
338
+
339
+ var certificateId: String? {
340
+ return nil
341
+ }
342
+
343
+ var forceForNewCertificates: Bool {
344
+ return false
345
+ }
346
+
347
+ var skipConfirmation: Bool {
348
+ return false
349
+ }
350
+
351
+ var safeRemoveCerts: Bool {
352
+ return false
353
+ }
354
+
355
+ var skipDocs: Bool {
356
+ return false
357
+ }
358
+
359
+ var platform: String {
360
+ return "ios"
361
+ }
362
+
363
+ var deriveCatalystAppIdentifier: Bool {
364
+ return false
365
+ }
366
+
367
+ var templateName: String? {
368
+ return nil
369
+ }
370
+
371
+ var profileName: String? {
372
+ return nil
373
+ }
374
+
375
+ var failOnNameTaken: Bool {
376
+ return false
377
+ }
378
+
379
+ var skipCertificateMatching: Bool {
380
+ return false
381
+ }
382
+
383
+ var outputPath: String? {
384
+ return nil
385
+ }
386
+
387
+ var skipSetPartitionList: Bool {
388
+ return false
389
+ }
390
+
391
+ var forceLegacyEncryption: Bool {
392
+ return false
393
+ }
394
+
395
+ var verbose: Bool {
396
+ return false
397
+ }
231
398
  }
232
399
 
233
400
  // Please don't remove the lines below
234
401
  // They are used to detect outdated files
235
- // FastlaneRunnerAPIVersion [0.9.127]
402
+ // FastlaneRunnerAPIVersion [0.9.139]
@@ -1,5 +1,5 @@
1
1
  // OptionalConfigValue.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  //
5
5
  // ** NOTE **
@@ -1,5 +1,5 @@
1
1
  // Plugins.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  // This autogenerated file will be overwritten or replaced when installing/updating plugins or running "fastlane generate_swift"
5
5
  //
@@ -1,5 +1,5 @@
1
1
  // Precheckfile.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  // This class is automatically included in FastlaneRunner during build
5
5
 
@@ -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.224.0
20
+ // Generated with fastlane 2.232.0
@@ -1,5 +1,5 @@
1
1
  // PrecheckfileProtocol.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  public protocol PrecheckfileProtocol: AnyObject {
5
5
  /// Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
@@ -37,19 +37,51 @@ public protocol PrecheckfileProtocol: AnyObject {
37
37
  }
38
38
 
39
39
  public extension PrecheckfileProtocol {
40
- var apiKeyPath: String? { return nil }
41
- var apiKey: [String: Any]? { return nil }
42
- var appIdentifier: String { return "" }
43
- var username: String? { return nil }
44
- var teamId: String? { return nil }
45
- var teamName: String? { return nil }
46
- var platform: String { return "ios" }
47
- var defaultRuleLevel: String { return "error" }
48
- var includeInAppPurchases: Bool { return true }
49
- var useLive: Bool { return false }
50
- var freeStuffInIap: String? { return nil }
40
+ var apiKeyPath: String? {
41
+ return nil
42
+ }
43
+
44
+ var apiKey: [String: Any]? {
45
+ return nil
46
+ }
47
+
48
+ var appIdentifier: String {
49
+ return ""
50
+ }
51
+
52
+ var username: String? {
53
+ return nil
54
+ }
55
+
56
+ var teamId: String? {
57
+ return nil
58
+ }
59
+
60
+ var teamName: String? {
61
+ return nil
62
+ }
63
+
64
+ var platform: String {
65
+ return "ios"
66
+ }
67
+
68
+ var defaultRuleLevel: String {
69
+ return "error"
70
+ }
71
+
72
+ var includeInAppPurchases: Bool {
73
+ return true
74
+ }
75
+
76
+ var useLive: Bool {
77
+ return false
78
+ }
79
+
80
+ var freeStuffInIap: String? {
81
+ return nil
82
+ }
51
83
  }
52
84
 
53
85
  // Please don't remove the lines below
54
86
  // They are used to detect outdated files
55
- // FastlaneRunnerAPIVersion [0.9.126]
87
+ // FastlaneRunnerAPIVersion [0.9.138]
@@ -1,5 +1,5 @@
1
1
  // RubyCommand.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  //
5
5
  // ** NOTE **
@@ -11,7 +11,9 @@
11
11
  import Foundation
12
12
 
13
13
  struct RubyCommand: RubyCommandable {
14
- var type: CommandType { return .action }
14
+ var type: CommandType {
15
+ return .action
16
+ }
15
17
 
16
18
  struct Argument {
17
19
  enum ArgType {
@@ -62,8 +64,7 @@ struct RubyCommand: RubyCommandable {
62
64
  "value": someValue,
63
65
  ]
64
66
  let jsonData = try! JSONSerialization.data(withJSONObject: dictionary, options: [])
65
- let jsonString = String(data: jsonData, encoding: .utf8)!
66
- return jsonString
67
+ return String(data: jsonData, encoding: .utf8)!
67
68
  }
68
69
  } else {
69
70
  // Just exclude this arg if it doesn't have a value
@@ -146,9 +147,7 @@ struct RubyCommand: RubyCommandable {
146
147
  jsonParts.append(classNameJson)
147
148
  }
148
149
 
149
- let commandJsonString = "{\(jsonParts.joined(separator: ","))}"
150
-
151
- return commandJsonString
150
+ return "{\(jsonParts.joined(separator: ","))}"
152
151
  }
153
152
  }
154
153
 
@@ -1,5 +1,5 @@
1
1
  // RubyCommandable.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  //
5
5
  // ** NOTE **
@@ -1,5 +1,5 @@
1
1
  // Runner.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  //
5
5
  // ** NOTE **
@@ -97,7 +97,7 @@ class Runner {
97
97
  }
98
98
  }
99
99
 
100
- // Handle threading stuff
100
+ /// Handle threading stuff
101
101
  extension Runner {
102
102
  func startSocketThread(port: UInt32) {
103
103
  let secondsToWait = DispatchTimeInterval.seconds(SocketClient.connectTimeoutSeconds)
@@ -230,7 +230,7 @@ class Logger {
230
230
  case verbose
231
231
  }
232
232
 
233
- public static var logMode: LogMode = .normal
233
+ static var logMode: LogMode = .normal
234
234
 
235
235
  func log(message: String) {
236
236
  let timestamp = NSDate().timeIntervalSince1970
@@ -1,5 +1,5 @@
1
1
  // RunnerArgument.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  //
5
5
  // ** NOTE **
@@ -1,5 +1,5 @@
1
1
  // Scanfile.swift
2
- // Copyright (c) 2024 FastlaneTools
2
+ // Copyright (c) 2026 FastlaneTools
3
3
 
4
4
  // This class is automatically included in FastlaneRunner during build
5
5
 
@@ -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.224.0
20
+ // Generated with fastlane 2.232.0