fastlane 2.232.2 → 2.233.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 +98 -98
- data/credentials_manager/lib/credentials_manager/appfile_config.rb +4 -0
- data/deliver/lib/deliver/detect_values.rb +2 -0
- data/deliver/lib/deliver/options.rb +23 -0
- data/deliver/lib/deliver/runner.rb +17 -12
- data/deliver/lib/deliver/sync_app_previews.rb +204 -0
- data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +5 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +20 -4
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +3 -0
- data/fastlane/lib/fastlane/actions/resign.rb +13 -2
- data/fastlane/lib/fastlane/actions/swiftlint.rb +8 -1
- data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +1 -1
- data/fastlane/lib/fastlane/helper/s3_client_helper.rb +5 -2
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +29 -1
- data/fastlane/swift/Fastlane.swift +105 -9
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +8 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +8 -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_core/lib/fastlane_core/itunes_transporter.rb +48 -17
- data/fastlane_core/lib/fastlane_core/video_utils.rb +202 -0
- data/frameit/lib/frameit/device_types.rb +2 -2
- data/gym/lib/gym/generators/build_command_generator.rb +2 -1
- data/gym/lib/gym/options.rb +5 -0
- data/match/lib/match/generator.rb +3 -1
- data/match/lib/match/options.rb +5 -0
- data/match/lib/match/runner.rb +12 -7
- data/match/lib/match/storage/s3_storage.rb +4 -1
- data/match/lib/match/storage.rb +1 -0
- data/pilot/lib/pilot/build_manager.rb +4 -12
- data/pilot/lib/pilot/options.rb +4 -0
- data/precheck/lib/precheck/rules/rules_data/curse_word_hashes/README.md +54 -0
- data/precheck/lib/precheck/rules/rules_data/curse_word_hashes/en_us.txt +2 -1
- data/scan/lib/scan/detect_values.rb +11 -3
- data/sigh/lib/assets/resign.sh +17 -5
- data/sigh/lib/sigh/commands_generator.rb +1 -0
- data/sigh/lib/sigh/manager.rb +6 -6
- data/sigh/lib/sigh/resign.rb +9 -6
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +54 -17
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +1 -2
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +2 -2
- data/trainer/lib/trainer/legacy_xcresult.rb +27 -20
- data/trainer/lib/trainer/xcresult/test_suite.rb +4 -1
- metadata +25 -22
|
@@ -190,7 +190,7 @@ public func appStoreBuildNumber(apiKeyPath: OptionalConfigValue<String?> = .fast
|
|
|
190
190
|
|
|
191
191
|
- parameters:
|
|
192
192
|
- keyId: The key ID
|
|
193
|
-
- issuerId: The issuer ID. It
|
|
193
|
+
- issuerId: The issuer ID. It should be nil if the key is individual API key
|
|
194
194
|
- keyFilepath: The path to the key p8 file
|
|
195
195
|
- keyContent: The content of the key p8 file
|
|
196
196
|
- isKeyContentBase64: Whether :key_content is Base64 encoded or not
|
|
@@ -656,6 +656,9 @@ public func appledoc(input: [String],
|
|
|
656
656
|
- useLiveVersion: Force usage of live version rather than edit version
|
|
657
657
|
- metadataPath: Path to the folder containing the metadata files
|
|
658
658
|
- screenshotsPath: Path to the folder containing the screenshots
|
|
659
|
+
- appPreviewsPath: Path to the folder containing localized App Preview videos
|
|
660
|
+
- previewFrameTimeCode: Time code for the App Preview still frame written as hour:minute:second:centisecond (e.g. 00:00:00:01)
|
|
661
|
+
- overwritePreviewVideos: Clear all previously uploaded App Preview videos before uploading the new ones
|
|
659
662
|
- skipBinaryUpload: Skip uploading an ipa or pkg to App Store Connect
|
|
660
663
|
- skipScreenshots: Don't upload the screenshots
|
|
661
664
|
- skipMetadata: Don't upload the metadata (e.g. title, description). This will still upload screenshots
|
|
@@ -680,6 +683,7 @@ public func appledoc(input: [String],
|
|
|
680
683
|
- devPortalTeamId: The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
|
|
681
684
|
- devPortalTeamName: The name of your Developer Portal team if you're in multiple teams
|
|
682
685
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
686
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
683
687
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
|
684
688
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
|
685
689
|
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
|
@@ -715,7 +719,7 @@ public func appledoc(input: [String],
|
|
|
715
719
|
If you don't want to verify an HTML preview for App Store builds, use the `:force` option.
|
|
716
720
|
This is useful when running _fastlane_ on your Continuous Integration server:
|
|
717
721
|
`_upload_to_app_store_(force: true)`
|
|
718
|
-
If your account is on multiple teams and you need to tell the
|
|
722
|
+
If your account is on multiple teams and you need to tell the transporter which provider to use, you can set `:itc_provider` or `:provider_public_id`.
|
|
719
723
|
*/
|
|
720
724
|
public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
721
725
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
|
@@ -730,6 +734,9 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
730
734
|
useLiveVersion: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
731
735
|
metadataPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
732
736
|
screenshotsPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
737
|
+
appPreviewsPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
738
|
+
previewFrameTimeCode: String = "00:00:05:00",
|
|
739
|
+
overwritePreviewVideos: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
733
740
|
skipBinaryUpload: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
734
741
|
skipScreenshots: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
735
742
|
skipMetadata: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -754,6 +761,7 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
754
761
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
755
762
|
devPortalTeamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
756
763
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
764
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
757
765
|
runPrecheckBeforeSubmit: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
|
758
766
|
precheckDefaultRuleLevel: String = "warn",
|
|
759
767
|
individualMetadataItems: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
|
@@ -797,6 +805,9 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
797
805
|
let useLiveVersionArg = useLiveVersion.asRubyArgument(name: "use_live_version", type: nil)
|
|
798
806
|
let metadataPathArg = metadataPath.asRubyArgument(name: "metadata_path", type: nil)
|
|
799
807
|
let screenshotsPathArg = screenshotsPath.asRubyArgument(name: "screenshots_path", type: nil)
|
|
808
|
+
let appPreviewsPathArg = appPreviewsPath.asRubyArgument(name: "app_previews_path", type: nil)
|
|
809
|
+
let previewFrameTimeCodeArg = RubyCommand.Argument(name: "preview_frame_time_code", value: previewFrameTimeCode, type: nil)
|
|
810
|
+
let overwritePreviewVideosArg = overwritePreviewVideos.asRubyArgument(name: "overwrite_preview_videos", type: nil)
|
|
800
811
|
let skipBinaryUploadArg = skipBinaryUpload.asRubyArgument(name: "skip_binary_upload", type: nil)
|
|
801
812
|
let skipScreenshotsArg = skipScreenshots.asRubyArgument(name: "skip_screenshots", type: nil)
|
|
802
813
|
let skipMetadataArg = skipMetadata.asRubyArgument(name: "skip_metadata", type: nil)
|
|
@@ -821,6 +832,7 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
821
832
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
822
833
|
let devPortalTeamNameArg = devPortalTeamName.asRubyArgument(name: "dev_portal_team_name", type: nil)
|
|
823
834
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
835
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
824
836
|
let runPrecheckBeforeSubmitArg = runPrecheckBeforeSubmit.asRubyArgument(name: "run_precheck_before_submit", type: nil)
|
|
825
837
|
let precheckDefaultRuleLevelArg = RubyCommand.Argument(name: "precheck_default_rule_level", value: precheckDefaultRuleLevel, type: nil)
|
|
826
838
|
let individualMetadataItemsArg = individualMetadataItems.asRubyArgument(name: "individual_metadata_items", type: nil)
|
|
@@ -863,6 +875,9 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
863
875
|
useLiveVersionArg,
|
|
864
876
|
metadataPathArg,
|
|
865
877
|
screenshotsPathArg,
|
|
878
|
+
appPreviewsPathArg,
|
|
879
|
+
previewFrameTimeCodeArg,
|
|
880
|
+
overwritePreviewVideosArg,
|
|
866
881
|
skipBinaryUploadArg,
|
|
867
882
|
skipScreenshotsArg,
|
|
868
883
|
skipMetadataArg,
|
|
@@ -887,6 +902,7 @@ public func appstore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
887
902
|
devPortalTeamIdArg,
|
|
888
903
|
devPortalTeamNameArg,
|
|
889
904
|
itcProviderArg,
|
|
905
|
+
providerPublicIdArg,
|
|
890
906
|
runPrecheckBeforeSubmitArg,
|
|
891
907
|
precheckDefaultRuleLevelArg,
|
|
892
908
|
individualMetadataItemsArg,
|
|
@@ -1298,6 +1314,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1298
1314
|
- clean: Should the project be cleaned before building it?
|
|
1299
1315
|
- outputDirectory: The directory in which the ipa file should be stored in
|
|
1300
1316
|
- outputName: The name of the resulting ipa file
|
|
1317
|
+
- appName: App name to use in logfile name
|
|
1301
1318
|
- configuration: The configuration to use when building the app. Defaults to 'Release'
|
|
1302
1319
|
- silent: Hide all information that's not necessary while building
|
|
1303
1320
|
- codesigningIdentity: The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
|
|
@@ -1357,6 +1374,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1357
1374
|
clean: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1358
1375
|
outputDirectory: String = ".",
|
|
1359
1376
|
outputName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1377
|
+
appName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1360
1378
|
configuration: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1361
1379
|
silent: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1362
1380
|
codesigningIdentity: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
@@ -1412,6 +1430,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1412
1430
|
let cleanArg = clean.asRubyArgument(name: "clean", type: nil)
|
|
1413
1431
|
let outputDirectoryArg = RubyCommand.Argument(name: "output_directory", value: outputDirectory, type: nil)
|
|
1414
1432
|
let outputNameArg = outputName.asRubyArgument(name: "output_name", type: nil)
|
|
1433
|
+
let appNameArg = appName.asRubyArgument(name: "app_name", type: nil)
|
|
1415
1434
|
let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
|
|
1416
1435
|
let silentArg = silent.asRubyArgument(name: "silent", type: nil)
|
|
1417
1436
|
let codesigningIdentityArg = codesigningIdentity.asRubyArgument(name: "codesigning_identity", type: nil)
|
|
@@ -1466,6 +1485,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1466
1485
|
cleanArg,
|
|
1467
1486
|
outputDirectoryArg,
|
|
1468
1487
|
outputNameArg,
|
|
1488
|
+
appNameArg,
|
|
1469
1489
|
configurationArg,
|
|
1470
1490
|
silentArg,
|
|
1471
1491
|
codesigningIdentityArg,
|
|
@@ -1531,6 +1551,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1531
1551
|
- clean: Should the project be cleaned before building it?
|
|
1532
1552
|
- outputDirectory: The directory in which the ipa file should be stored in
|
|
1533
1553
|
- outputName: The name of the resulting ipa file
|
|
1554
|
+
- appName: App name to use in logfile name
|
|
1534
1555
|
- configuration: The configuration to use when building the app. Defaults to 'Release'
|
|
1535
1556
|
- silent: Hide all information that's not necessary while building
|
|
1536
1557
|
- codesigningIdentity: The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
|
|
@@ -1587,6 +1608,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1587
1608
|
clean: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1588
1609
|
outputDirectory: String = ".",
|
|
1589
1610
|
outputName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1611
|
+
appName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1590
1612
|
configuration: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1591
1613
|
silent: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1592
1614
|
codesigningIdentity: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
@@ -1639,6 +1661,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1639
1661
|
let cleanArg = clean.asRubyArgument(name: "clean", type: nil)
|
|
1640
1662
|
let outputDirectoryArg = RubyCommand.Argument(name: "output_directory", value: outputDirectory, type: nil)
|
|
1641
1663
|
let outputNameArg = outputName.asRubyArgument(name: "output_name", type: nil)
|
|
1664
|
+
let appNameArg = appName.asRubyArgument(name: "app_name", type: nil)
|
|
1642
1665
|
let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
|
|
1643
1666
|
let silentArg = silent.asRubyArgument(name: "silent", type: nil)
|
|
1644
1667
|
let codesigningIdentityArg = codesigningIdentity.asRubyArgument(name: "codesigning_identity", type: nil)
|
|
@@ -1690,6 +1713,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1690
1713
|
cleanArg,
|
|
1691
1714
|
outputDirectoryArg,
|
|
1692
1715
|
outputNameArg,
|
|
1716
|
+
appNameArg,
|
|
1693
1717
|
configurationArg,
|
|
1694
1718
|
silentArg,
|
|
1695
1719
|
codesigningIdentityArg,
|
|
@@ -1752,6 +1776,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1752
1776
|
- clean: Should the project be cleaned before building it?
|
|
1753
1777
|
- outputDirectory: The directory in which the ipa file should be stored in
|
|
1754
1778
|
- outputName: The name of the resulting ipa file
|
|
1779
|
+
- appName: App name to use in logfile name
|
|
1755
1780
|
- configuration: The configuration to use when building the app. Defaults to 'Release'
|
|
1756
1781
|
- silent: Hide all information that's not necessary while building
|
|
1757
1782
|
- codesigningIdentity: The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
|
|
@@ -1809,6 +1834,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1809
1834
|
clean: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1810
1835
|
outputDirectory: String = ".",
|
|
1811
1836
|
outputName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1837
|
+
appName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1812
1838
|
configuration: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
1813
1839
|
silent: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
1814
1840
|
codesigningIdentity: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
@@ -1862,6 +1888,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1862
1888
|
let cleanArg = clean.asRubyArgument(name: "clean", type: nil)
|
|
1863
1889
|
let outputDirectoryArg = RubyCommand.Argument(name: "output_directory", value: outputDirectory, type: nil)
|
|
1864
1890
|
let outputNameArg = outputName.asRubyArgument(name: "output_name", type: nil)
|
|
1891
|
+
let appNameArg = appName.asRubyArgument(name: "app_name", type: nil)
|
|
1865
1892
|
let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
|
|
1866
1893
|
let silentArg = silent.asRubyArgument(name: "silent", type: nil)
|
|
1867
1894
|
let codesigningIdentityArg = codesigningIdentity.asRubyArgument(name: "codesigning_identity", type: nil)
|
|
@@ -1914,6 +1941,7 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
|
|
|
1914
1941
|
cleanArg,
|
|
1915
1942
|
outputDirectoryArg,
|
|
1916
1943
|
outputNameArg,
|
|
1944
|
+
appNameArg,
|
|
1917
1945
|
configurationArg,
|
|
1918
1946
|
silentArg,
|
|
1919
1947
|
codesigningIdentityArg,
|
|
@@ -3763,6 +3791,9 @@ public func deleteKeychain(name: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
3763
3791
|
- useLiveVersion: Force usage of live version rather than edit version
|
|
3764
3792
|
- metadataPath: Path to the folder containing the metadata files
|
|
3765
3793
|
- screenshotsPath: Path to the folder containing the screenshots
|
|
3794
|
+
- appPreviewsPath: Path to the folder containing localized App Preview videos
|
|
3795
|
+
- previewFrameTimeCode: Time code for the App Preview still frame written as hour:minute:second:centisecond (e.g. 00:00:00:01)
|
|
3796
|
+
- overwritePreviewVideos: Clear all previously uploaded App Preview videos before uploading the new ones
|
|
3766
3797
|
- skipBinaryUpload: Skip uploading an ipa or pkg to App Store Connect
|
|
3767
3798
|
- skipScreenshots: Don't upload the screenshots
|
|
3768
3799
|
- skipMetadata: Don't upload the metadata (e.g. title, description). This will still upload screenshots
|
|
@@ -3787,6 +3818,7 @@ public func deleteKeychain(name: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
3787
3818
|
- devPortalTeamId: The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
|
|
3788
3819
|
- devPortalTeamName: The name of your Developer Portal team if you're in multiple teams
|
|
3789
3820
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
3821
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
3790
3822
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
|
3791
3823
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
|
3792
3824
|
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
|
@@ -3822,7 +3854,7 @@ public func deleteKeychain(name: OptionalConfigValue<String?> = .fastlaneDefault
|
|
|
3822
3854
|
If you don't want to verify an HTML preview for App Store builds, use the `:force` option.
|
|
3823
3855
|
This is useful when running _fastlane_ on your Continuous Integration server:
|
|
3824
3856
|
`_upload_to_app_store_(force: true)`
|
|
3825
|
-
If your account is on multiple teams and you need to tell the
|
|
3857
|
+
If your account is on multiple teams and you need to tell the transporter which provider to use, you can set `:itc_provider` or `:provider_public_id`.
|
|
3826
3858
|
*/
|
|
3827
3859
|
public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.apiKeyPath),
|
|
3828
3860
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(deliverfile.apiKey),
|
|
@@ -3837,6 +3869,9 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3837
3869
|
useLiveVersion: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.useLiveVersion),
|
|
3838
3870
|
metadataPath: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.metadataPath),
|
|
3839
3871
|
screenshotsPath: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.screenshotsPath),
|
|
3872
|
+
appPreviewsPath: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.appPreviewsPath),
|
|
3873
|
+
previewFrameTimeCode: String = deliverfile.previewFrameTimeCode,
|
|
3874
|
+
overwritePreviewVideos: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.overwritePreviewVideos),
|
|
3840
3875
|
skipBinaryUpload: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.skipBinaryUpload),
|
|
3841
3876
|
skipScreenshots: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.skipScreenshots),
|
|
3842
3877
|
skipMetadata: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.skipMetadata),
|
|
@@ -3861,6 +3896,7 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3861
3896
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.devPortalTeamId),
|
|
3862
3897
|
devPortalTeamName: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.devPortalTeamName),
|
|
3863
3898
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.itcProvider),
|
|
3899
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(deliverfile.providerPublicId),
|
|
3864
3900
|
runPrecheckBeforeSubmit: OptionalConfigValue<Bool> = .fastlaneDefault(deliverfile.runPrecheckBeforeSubmit),
|
|
3865
3901
|
precheckDefaultRuleLevel: Any = deliverfile.precheckDefaultRuleLevel,
|
|
3866
3902
|
individualMetadataItems: OptionalConfigValue<[String]?> = .fastlaneDefault(deliverfile.individualMetadataItems),
|
|
@@ -3904,6 +3940,9 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3904
3940
|
let useLiveVersionArg = useLiveVersion.asRubyArgument(name: "use_live_version", type: nil)
|
|
3905
3941
|
let metadataPathArg = metadataPath.asRubyArgument(name: "metadata_path", type: nil)
|
|
3906
3942
|
let screenshotsPathArg = screenshotsPath.asRubyArgument(name: "screenshots_path", type: nil)
|
|
3943
|
+
let appPreviewsPathArg = appPreviewsPath.asRubyArgument(name: "app_previews_path", type: nil)
|
|
3944
|
+
let previewFrameTimeCodeArg = RubyCommand.Argument(name: "preview_frame_time_code", value: previewFrameTimeCode, type: nil)
|
|
3945
|
+
let overwritePreviewVideosArg = overwritePreviewVideos.asRubyArgument(name: "overwrite_preview_videos", type: nil)
|
|
3907
3946
|
let skipBinaryUploadArg = skipBinaryUpload.asRubyArgument(name: "skip_binary_upload", type: nil)
|
|
3908
3947
|
let skipScreenshotsArg = skipScreenshots.asRubyArgument(name: "skip_screenshots", type: nil)
|
|
3909
3948
|
let skipMetadataArg = skipMetadata.asRubyArgument(name: "skip_metadata", type: nil)
|
|
@@ -3928,6 +3967,7 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3928
3967
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
3929
3968
|
let devPortalTeamNameArg = devPortalTeamName.asRubyArgument(name: "dev_portal_team_name", type: nil)
|
|
3930
3969
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
3970
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
3931
3971
|
let runPrecheckBeforeSubmitArg = runPrecheckBeforeSubmit.asRubyArgument(name: "run_precheck_before_submit", type: nil)
|
|
3932
3972
|
let precheckDefaultRuleLevelArg = RubyCommand.Argument(name: "precheck_default_rule_level", value: precheckDefaultRuleLevel, type: nil)
|
|
3933
3973
|
let individualMetadataItemsArg = individualMetadataItems.asRubyArgument(name: "individual_metadata_items", type: nil)
|
|
@@ -3970,6 +4010,9 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3970
4010
|
useLiveVersionArg,
|
|
3971
4011
|
metadataPathArg,
|
|
3972
4012
|
screenshotsPathArg,
|
|
4013
|
+
appPreviewsPathArg,
|
|
4014
|
+
previewFrameTimeCodeArg,
|
|
4015
|
+
overwritePreviewVideosArg,
|
|
3973
4016
|
skipBinaryUploadArg,
|
|
3974
4017
|
skipScreenshotsArg,
|
|
3975
4018
|
skipMetadataArg,
|
|
@@ -3994,6 +4037,7 @@ public func deliver(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(
|
|
|
3994
4037
|
devPortalTeamIdArg,
|
|
3995
4038
|
devPortalTeamNameArg,
|
|
3996
4039
|
itcProviderArg,
|
|
4040
|
+
providerPublicIdArg,
|
|
3997
4041
|
runPrecheckBeforeSubmitArg,
|
|
3998
4042
|
precheckDefaultRuleLevelArg,
|
|
3999
4043
|
individualMetadataItemsArg,
|
|
@@ -5715,6 +5759,7 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
|
5715
5759
|
- clean: Should the project be cleaned before building it?
|
|
5716
5760
|
- outputDirectory: The directory in which the ipa file should be stored in
|
|
5717
5761
|
- outputName: The name of the resulting ipa file
|
|
5762
|
+
- appName: App name to use in logfile name
|
|
5718
5763
|
- configuration: The configuration to use when building the app. Defaults to 'Release'
|
|
5719
5764
|
- silent: Hide all information that's not necessary while building
|
|
5720
5765
|
- codesigningIdentity: The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
|
|
@@ -5774,6 +5819,7 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
|
5774
5819
|
clean: OptionalConfigValue<Bool> = .fastlaneDefault(gymfile.clean),
|
|
5775
5820
|
outputDirectory: String = gymfile.outputDirectory,
|
|
5776
5821
|
outputName: OptionalConfigValue<String?> = .fastlaneDefault(gymfile.outputName),
|
|
5822
|
+
appName: OptionalConfigValue<String?> = .fastlaneDefault(gymfile.appName),
|
|
5777
5823
|
configuration: OptionalConfigValue<String?> = .fastlaneDefault(gymfile.configuration),
|
|
5778
5824
|
silent: OptionalConfigValue<Bool> = .fastlaneDefault(gymfile.silent),
|
|
5779
5825
|
codesigningIdentity: OptionalConfigValue<String?> = .fastlaneDefault(gymfile.codesigningIdentity),
|
|
@@ -5829,6 +5875,7 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
|
5829
5875
|
let cleanArg = clean.asRubyArgument(name: "clean", type: nil)
|
|
5830
5876
|
let outputDirectoryArg = RubyCommand.Argument(name: "output_directory", value: outputDirectory, type: nil)
|
|
5831
5877
|
let outputNameArg = outputName.asRubyArgument(name: "output_name", type: nil)
|
|
5878
|
+
let appNameArg = appName.asRubyArgument(name: "app_name", type: nil)
|
|
5832
5879
|
let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
|
|
5833
5880
|
let silentArg = silent.asRubyArgument(name: "silent", type: nil)
|
|
5834
5881
|
let codesigningIdentityArg = codesigningIdentity.asRubyArgument(name: "codesigning_identity", type: nil)
|
|
@@ -5883,6 +5930,7 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
|
5883
5930
|
cleanArg,
|
|
5884
5931
|
outputDirectoryArg,
|
|
5885
5932
|
outputNameArg,
|
|
5933
|
+
appNameArg,
|
|
5886
5934
|
configurationArg,
|
|
5887
5935
|
silentArg,
|
|
5888
5936
|
codesigningIdentityArg,
|
|
@@ -6797,6 +6845,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
|
6797
6845
|
- s3Region: Name of the S3 region
|
|
6798
6846
|
- s3AccessKey: S3 access key
|
|
6799
6847
|
- s3SecretAccessKey: S3 secret access key
|
|
6848
|
+
- s3SessionToken: S3 session token
|
|
6800
6849
|
- s3Bucket: Name of the S3 bucket
|
|
6801
6850
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
|
6802
6851
|
- s3SkipEncryption: Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
|
|
@@ -6856,6 +6905,7 @@ public func match(type: String = matchfile.type,
|
|
|
6856
6905
|
s3Region: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3Region),
|
|
6857
6906
|
s3AccessKey: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3AccessKey),
|
|
6858
6907
|
s3SecretAccessKey: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3SecretAccessKey),
|
|
6908
|
+
s3SessionToken: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3SessionToken),
|
|
6859
6909
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3Bucket),
|
|
6860
6910
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3ObjectPrefix),
|
|
6861
6911
|
s3SkipEncryption: OptionalConfigValue<Bool> = .fastlaneDefault(matchfile.s3SkipEncryption),
|
|
@@ -6913,6 +6963,7 @@ public func match(type: String = matchfile.type,
|
|
|
6913
6963
|
let s3RegionArg = s3Region.asRubyArgument(name: "s3_region", type: nil)
|
|
6914
6964
|
let s3AccessKeyArg = s3AccessKey.asRubyArgument(name: "s3_access_key", type: nil)
|
|
6915
6965
|
let s3SecretAccessKeyArg = s3SecretAccessKey.asRubyArgument(name: "s3_secret_access_key", type: nil)
|
|
6966
|
+
let s3SessionTokenArg = s3SessionToken.asRubyArgument(name: "s3_session_token", type: nil)
|
|
6916
6967
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
|
6917
6968
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
|
6918
6969
|
let s3SkipEncryptionArg = s3SkipEncryption.asRubyArgument(name: "s3_skip_encryption", type: nil)
|
|
@@ -6969,6 +7020,7 @@ public func match(type: String = matchfile.type,
|
|
|
6969
7020
|
s3RegionArg,
|
|
6970
7021
|
s3AccessKeyArg,
|
|
6971
7022
|
s3SecretAccessKeyArg,
|
|
7023
|
+
s3SessionTokenArg,
|
|
6972
7024
|
s3BucketArg,
|
|
6973
7025
|
s3ObjectPrefixArg,
|
|
6974
7026
|
s3SkipEncryptionArg,
|
|
@@ -7036,6 +7088,7 @@ public func match(type: String = matchfile.type,
|
|
|
7036
7088
|
- s3Region: Name of the S3 region
|
|
7037
7089
|
- s3AccessKey: S3 access key
|
|
7038
7090
|
- s3SecretAccessKey: S3 secret access key
|
|
7091
|
+
- s3SessionToken: S3 session token
|
|
7039
7092
|
- s3Bucket: Name of the S3 bucket
|
|
7040
7093
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
|
7041
7094
|
- s3SkipEncryption: Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
|
|
@@ -7099,6 +7152,7 @@ public func matchNuke(type: String = "development",
|
|
|
7099
7152
|
s3Region: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7100
7153
|
s3AccessKey: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7101
7154
|
s3SecretAccessKey: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7155
|
+
s3SessionToken: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7102
7156
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7103
7157
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7104
7158
|
s3SkipEncryption: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -7156,6 +7210,7 @@ public func matchNuke(type: String = "development",
|
|
|
7156
7210
|
let s3RegionArg = s3Region.asRubyArgument(name: "s3_region", type: nil)
|
|
7157
7211
|
let s3AccessKeyArg = s3AccessKey.asRubyArgument(name: "s3_access_key", type: nil)
|
|
7158
7212
|
let s3SecretAccessKeyArg = s3SecretAccessKey.asRubyArgument(name: "s3_secret_access_key", type: nil)
|
|
7213
|
+
let s3SessionTokenArg = s3SessionToken.asRubyArgument(name: "s3_session_token", type: nil)
|
|
7159
7214
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
|
7160
7215
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
|
7161
7216
|
let s3SkipEncryptionArg = s3SkipEncryption.asRubyArgument(name: "s3_skip_encryption", type: nil)
|
|
@@ -7212,6 +7267,7 @@ public func matchNuke(type: String = "development",
|
|
|
7212
7267
|
s3RegionArg,
|
|
7213
7268
|
s3AccessKeyArg,
|
|
7214
7269
|
s3SecretAccessKeyArg,
|
|
7270
|
+
s3SessionTokenArg,
|
|
7215
7271
|
s3BucketArg,
|
|
7216
7272
|
s3ObjectPrefixArg,
|
|
7217
7273
|
s3SkipEncryptionArg,
|
|
@@ -7802,6 +7858,7 @@ public func pem(platform: String = "ios",
|
|
|
7802
7858
|
- teamName: The name of your App Store Connect team if you're in multiple teams
|
|
7803
7859
|
- devPortalTeamId: The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
|
|
7804
7860
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
7861
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
7805
7862
|
- waitProcessingInterval: Interval in seconds to wait for App Store Connect processing
|
|
7806
7863
|
- waitProcessingTimeoutDuration: Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will `force stop` to wait for App Store Connect processing and exit with exception
|
|
7807
7864
|
- waitForUploadedBuild: **DEPRECATED!** No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
|
|
@@ -7845,6 +7902,7 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
|
7845
7902
|
teamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7846
7903
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7847
7904
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7905
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
7848
7906
|
waitProcessingInterval: Int = 30,
|
|
7849
7907
|
waitProcessingTimeoutDuration: OptionalConfigValue<Int?> = .fastlaneDefault(nil),
|
|
7850
7908
|
waitForUploadedBuild: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -7885,6 +7943,7 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
|
7885
7943
|
let teamNameArg = teamName.asRubyArgument(name: "team_name", type: nil)
|
|
7886
7944
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
7887
7945
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
7946
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
7888
7947
|
let waitProcessingIntervalArg = RubyCommand.Argument(name: "wait_processing_interval", value: waitProcessingInterval, type: nil)
|
|
7889
7948
|
let waitProcessingTimeoutDurationArg = waitProcessingTimeoutDuration.asRubyArgument(name: "wait_processing_timeout_duration", type: nil)
|
|
7890
7949
|
let waitForUploadedBuildArg = waitForUploadedBuild.asRubyArgument(name: "wait_for_uploaded_build", type: nil)
|
|
@@ -7924,6 +7983,7 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
|
7924
7983
|
teamNameArg,
|
|
7925
7984
|
devPortalTeamIdArg,
|
|
7926
7985
|
itcProviderArg,
|
|
7986
|
+
providerPublicIdArg,
|
|
7927
7987
|
waitProcessingIntervalArg,
|
|
7928
7988
|
waitProcessingTimeoutDurationArg,
|
|
7929
7989
|
waitForUploadedBuildArg,
|
|
@@ -8683,6 +8743,7 @@ public func resetSimulatorContents(ios: OptionalConfigValue<[String]?> = .fastla
|
|
|
8683
8743
|
- bundleId: Set new bundle ID during resign (`CFBundleIdentifier`)
|
|
8684
8744
|
- useAppEntitlements: Extract app bundle codesigning entitlements and combine with entitlements from new provisioning profile
|
|
8685
8745
|
- keychainPath: Provide a path to a keychain file that should be used by `/usr/bin/codesign`
|
|
8746
|
+
- pagesize: Page size in bytes passed to `/usr/bin/codesign --pagesize` (must be a power of two)
|
|
8686
8747
|
*/
|
|
8687
8748
|
public func resign(ipa: String,
|
|
8688
8749
|
signingIdentity: String,
|
|
@@ -8694,7 +8755,8 @@ public func resign(ipa: String,
|
|
|
8694
8755
|
bundleVersion: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
8695
8756
|
bundleId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
8696
8757
|
useAppEntitlements: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
|
8697
|
-
keychainPath: OptionalConfigValue<String?> = .fastlaneDefault(nil)
|
|
8758
|
+
keychainPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
8759
|
+
pagesize: OptionalConfigValue<Int?> = .fastlaneDefault(nil))
|
|
8698
8760
|
{
|
|
8699
8761
|
let ipaArg = RubyCommand.Argument(name: "ipa", value: ipa, type: nil)
|
|
8700
8762
|
let signingIdentityArg = RubyCommand.Argument(name: "signing_identity", value: signingIdentity, type: nil)
|
|
@@ -8707,6 +8769,7 @@ public func resign(ipa: String,
|
|
|
8707
8769
|
let bundleIdArg = bundleId.asRubyArgument(name: "bundle_id", type: nil)
|
|
8708
8770
|
let useAppEntitlementsArg = useAppEntitlements.asRubyArgument(name: "use_app_entitlements", type: nil)
|
|
8709
8771
|
let keychainPathArg = keychainPath.asRubyArgument(name: "keychain_path", type: nil)
|
|
8772
|
+
let pagesizeArg = pagesize.asRubyArgument(name: "pagesize", type: nil)
|
|
8710
8773
|
let array: [RubyCommand.Argument?] = [ipaArg,
|
|
8711
8774
|
signingIdentityArg,
|
|
8712
8775
|
entitlementsArg,
|
|
@@ -8717,7 +8780,8 @@ public func resign(ipa: String,
|
|
|
8717
8780
|
bundleVersionArg,
|
|
8718
8781
|
bundleIdArg,
|
|
8719
8782
|
useAppEntitlementsArg,
|
|
8720
|
-
keychainPathArg
|
|
8783
|
+
keychainPathArg,
|
|
8784
|
+
pagesizeArg]
|
|
8721
8785
|
let args: [RubyCommand.Argument] = array
|
|
8722
8786
|
.filter { $0?.value != nil }
|
|
8723
8787
|
.compactMap { $0 }
|
|
@@ -11258,6 +11322,7 @@ public func supply(packageName: String,
|
|
|
11258
11322
|
- format: Format code when mode is :autocorrect
|
|
11259
11323
|
- noCache: Ignore the cache when mode is :autocorrect or :lint
|
|
11260
11324
|
- compilerLogPath: Compiler log path when mode is :analyze
|
|
11325
|
+
- progress: Show a live-updating progress bar instead of each file being processed
|
|
11261
11326
|
*/
|
|
11262
11327
|
public func swiftlint(mode: String = "lint",
|
|
11263
11328
|
path: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
@@ -11272,7 +11337,8 @@ public func swiftlint(mode: String = "lint",
|
|
|
11272
11337
|
executable: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11273
11338
|
format: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
11274
11339
|
noCache: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
11275
|
-
compilerLogPath: OptionalConfigValue<String?> = .fastlaneDefault(nil)
|
|
11340
|
+
compilerLogPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11341
|
+
progress: OptionalConfigValue<Bool> = .fastlaneDefault(false))
|
|
11276
11342
|
{
|
|
11277
11343
|
let modeArg = RubyCommand.Argument(name: "mode", value: mode, type: nil)
|
|
11278
11344
|
let pathArg = path.asRubyArgument(name: "path", type: nil)
|
|
@@ -11288,6 +11354,7 @@ public func swiftlint(mode: String = "lint",
|
|
|
11288
11354
|
let formatArg = format.asRubyArgument(name: "format", type: nil)
|
|
11289
11355
|
let noCacheArg = noCache.asRubyArgument(name: "no_cache", type: nil)
|
|
11290
11356
|
let compilerLogPathArg = compilerLogPath.asRubyArgument(name: "compiler_log_path", type: nil)
|
|
11357
|
+
let progressArg = progress.asRubyArgument(name: "progress", type: nil)
|
|
11291
11358
|
let array: [RubyCommand.Argument?] = [modeArg,
|
|
11292
11359
|
pathArg,
|
|
11293
11360
|
outputFileArg,
|
|
@@ -11301,7 +11368,8 @@ public func swiftlint(mode: String = "lint",
|
|
|
11301
11368
|
executableArg,
|
|
11302
11369
|
formatArg,
|
|
11303
11370
|
noCacheArg,
|
|
11304
|
-
compilerLogPathArg
|
|
11371
|
+
compilerLogPathArg,
|
|
11372
|
+
progressArg]
|
|
11305
11373
|
let args: [RubyCommand.Argument] = array
|
|
11306
11374
|
.filter { $0?.value != nil }
|
|
11307
11375
|
.compactMap { $0 }
|
|
@@ -11341,6 +11409,7 @@ public func swiftlint(mode: String = "lint",
|
|
|
11341
11409
|
- s3Region: Name of the S3 region
|
|
11342
11410
|
- s3AccessKey: S3 access key
|
|
11343
11411
|
- s3SecretAccessKey: S3 secret access key
|
|
11412
|
+
- s3SessionToken: S3 session token
|
|
11344
11413
|
- s3Bucket: Name of the S3 bucket
|
|
11345
11414
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
|
11346
11415
|
- s3SkipEncryption: Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
|
|
@@ -11400,6 +11469,7 @@ public func syncCodeSigning(type: String = "development",
|
|
|
11400
11469
|
s3Region: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11401
11470
|
s3AccessKey: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11402
11471
|
s3SecretAccessKey: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11472
|
+
s3SessionToken: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11403
11473
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11404
11474
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11405
11475
|
s3SkipEncryption: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -11457,6 +11527,7 @@ public func syncCodeSigning(type: String = "development",
|
|
|
11457
11527
|
let s3RegionArg = s3Region.asRubyArgument(name: "s3_region", type: nil)
|
|
11458
11528
|
let s3AccessKeyArg = s3AccessKey.asRubyArgument(name: "s3_access_key", type: nil)
|
|
11459
11529
|
let s3SecretAccessKeyArg = s3SecretAccessKey.asRubyArgument(name: "s3_secret_access_key", type: nil)
|
|
11530
|
+
let s3SessionTokenArg = s3SessionToken.asRubyArgument(name: "s3_session_token", type: nil)
|
|
11460
11531
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
|
11461
11532
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
|
11462
11533
|
let s3SkipEncryptionArg = s3SkipEncryption.asRubyArgument(name: "s3_skip_encryption", type: nil)
|
|
@@ -11513,6 +11584,7 @@ public func syncCodeSigning(type: String = "development",
|
|
|
11513
11584
|
s3RegionArg,
|
|
11514
11585
|
s3AccessKeyArg,
|
|
11515
11586
|
s3SecretAccessKeyArg,
|
|
11587
|
+
s3SessionTokenArg,
|
|
11516
11588
|
s3BucketArg,
|
|
11517
11589
|
s3ObjectPrefixArg,
|
|
11518
11590
|
s3SkipEncryptionArg,
|
|
@@ -11693,6 +11765,7 @@ public func testfairy(apiKey: String,
|
|
|
11693
11765
|
- teamName: The name of your App Store Connect team if you're in multiple teams
|
|
11694
11766
|
- devPortalTeamId: The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
|
|
11695
11767
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
11768
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
11696
11769
|
- waitProcessingInterval: Interval in seconds to wait for App Store Connect processing
|
|
11697
11770
|
- waitProcessingTimeoutDuration: Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will `force stop` to wait for App Store Connect processing and exit with exception
|
|
11698
11771
|
- waitForUploadedBuild: **DEPRECATED!** No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
|
|
@@ -11736,6 +11809,7 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
|
11736
11809
|
teamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11737
11810
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11738
11811
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11812
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
11739
11813
|
waitProcessingInterval: Int = 30,
|
|
11740
11814
|
waitProcessingTimeoutDuration: OptionalConfigValue<Int?> = .fastlaneDefault(nil),
|
|
11741
11815
|
waitForUploadedBuild: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -11776,6 +11850,7 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
|
11776
11850
|
let teamNameArg = teamName.asRubyArgument(name: "team_name", type: nil)
|
|
11777
11851
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
11778
11852
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
11853
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
11779
11854
|
let waitProcessingIntervalArg = RubyCommand.Argument(name: "wait_processing_interval", value: waitProcessingInterval, type: nil)
|
|
11780
11855
|
let waitProcessingTimeoutDurationArg = waitProcessingTimeoutDuration.asRubyArgument(name: "wait_processing_timeout_duration", type: nil)
|
|
11781
11856
|
let waitForUploadedBuildArg = waitForUploadedBuild.asRubyArgument(name: "wait_for_uploaded_build", type: nil)
|
|
@@ -11815,6 +11890,7 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
|
11815
11890
|
teamNameArg,
|
|
11816
11891
|
devPortalTeamIdArg,
|
|
11817
11892
|
itcProviderArg,
|
|
11893
|
+
providerPublicIdArg,
|
|
11818
11894
|
waitProcessingIntervalArg,
|
|
11819
11895
|
waitProcessingTimeoutDurationArg,
|
|
11820
11896
|
waitForUploadedBuildArg,
|
|
@@ -12583,6 +12659,9 @@ public func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/a
|
|
|
12583
12659
|
- useLiveVersion: Force usage of live version rather than edit version
|
|
12584
12660
|
- metadataPath: Path to the folder containing the metadata files
|
|
12585
12661
|
- screenshotsPath: Path to the folder containing the screenshots
|
|
12662
|
+
- appPreviewsPath: Path to the folder containing localized App Preview videos
|
|
12663
|
+
- previewFrameTimeCode: Time code for the App Preview still frame written as hour:minute:second:centisecond (e.g. 00:00:00:01)
|
|
12664
|
+
- overwritePreviewVideos: Clear all previously uploaded App Preview videos before uploading the new ones
|
|
12586
12665
|
- skipBinaryUpload: Skip uploading an ipa or pkg to App Store Connect
|
|
12587
12666
|
- skipScreenshots: Don't upload the screenshots
|
|
12588
12667
|
- skipMetadata: Don't upload the metadata (e.g. title, description). This will still upload screenshots
|
|
@@ -12607,6 +12686,7 @@ public func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/a
|
|
|
12607
12686
|
- devPortalTeamId: The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
|
|
12608
12687
|
- devPortalTeamName: The name of your Developer Portal team if you're in multiple teams
|
|
12609
12688
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
12689
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
12610
12690
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
|
12611
12691
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
|
12612
12692
|
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
|
@@ -12642,7 +12722,7 @@ public func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/a
|
|
|
12642
12722
|
If you don't want to verify an HTML preview for App Store builds, use the `:force` option.
|
|
12643
12723
|
This is useful when running _fastlane_ on your Continuous Integration server:
|
|
12644
12724
|
`_upload_to_app_store_(force: true)`
|
|
12645
|
-
If your account is on multiple teams and you need to tell the
|
|
12725
|
+
If your account is on multiple teams and you need to tell the transporter which provider to use, you can set `:itc_provider` or `:provider_public_id`.
|
|
12646
12726
|
*/
|
|
12647
12727
|
public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12648
12728
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
|
@@ -12657,6 +12737,9 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12657
12737
|
useLiveVersion: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
12658
12738
|
metadataPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12659
12739
|
screenshotsPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12740
|
+
appPreviewsPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12741
|
+
previewFrameTimeCode: String = "00:00:05:00",
|
|
12742
|
+
overwritePreviewVideos: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
12660
12743
|
skipBinaryUpload: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
12661
12744
|
skipScreenshots: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
12662
12745
|
skipMetadata: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -12681,6 +12764,7 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12681
12764
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12682
12765
|
devPortalTeamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12683
12766
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12767
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
12684
12768
|
runPrecheckBeforeSubmit: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
|
12685
12769
|
precheckDefaultRuleLevel: String = "warn",
|
|
12686
12770
|
individualMetadataItems: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
|
@@ -12724,6 +12808,9 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12724
12808
|
let useLiveVersionArg = useLiveVersion.asRubyArgument(name: "use_live_version", type: nil)
|
|
12725
12809
|
let metadataPathArg = metadataPath.asRubyArgument(name: "metadata_path", type: nil)
|
|
12726
12810
|
let screenshotsPathArg = screenshotsPath.asRubyArgument(name: "screenshots_path", type: nil)
|
|
12811
|
+
let appPreviewsPathArg = appPreviewsPath.asRubyArgument(name: "app_previews_path", type: nil)
|
|
12812
|
+
let previewFrameTimeCodeArg = RubyCommand.Argument(name: "preview_frame_time_code", value: previewFrameTimeCode, type: nil)
|
|
12813
|
+
let overwritePreviewVideosArg = overwritePreviewVideos.asRubyArgument(name: "overwrite_preview_videos", type: nil)
|
|
12727
12814
|
let skipBinaryUploadArg = skipBinaryUpload.asRubyArgument(name: "skip_binary_upload", type: nil)
|
|
12728
12815
|
let skipScreenshotsArg = skipScreenshots.asRubyArgument(name: "skip_screenshots", type: nil)
|
|
12729
12816
|
let skipMetadataArg = skipMetadata.asRubyArgument(name: "skip_metadata", type: nil)
|
|
@@ -12748,6 +12835,7 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12748
12835
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
12749
12836
|
let devPortalTeamNameArg = devPortalTeamName.asRubyArgument(name: "dev_portal_team_name", type: nil)
|
|
12750
12837
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
12838
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
12751
12839
|
let runPrecheckBeforeSubmitArg = runPrecheckBeforeSubmit.asRubyArgument(name: "run_precheck_before_submit", type: nil)
|
|
12752
12840
|
let precheckDefaultRuleLevelArg = RubyCommand.Argument(name: "precheck_default_rule_level", value: precheckDefaultRuleLevel, type: nil)
|
|
12753
12841
|
let individualMetadataItemsArg = individualMetadataItems.asRubyArgument(name: "individual_metadata_items", type: nil)
|
|
@@ -12790,6 +12878,9 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12790
12878
|
useLiveVersionArg,
|
|
12791
12879
|
metadataPathArg,
|
|
12792
12880
|
screenshotsPathArg,
|
|
12881
|
+
appPreviewsPathArg,
|
|
12882
|
+
previewFrameTimeCodeArg,
|
|
12883
|
+
overwritePreviewVideosArg,
|
|
12793
12884
|
skipBinaryUploadArg,
|
|
12794
12885
|
skipScreenshotsArg,
|
|
12795
12886
|
skipMetadataArg,
|
|
@@ -12814,6 +12905,7 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
|
12814
12905
|
devPortalTeamIdArg,
|
|
12815
12906
|
devPortalTeamNameArg,
|
|
12816
12907
|
itcProviderArg,
|
|
12908
|
+
providerPublicIdArg,
|
|
12817
12909
|
runPrecheckBeforeSubmitArg,
|
|
12818
12910
|
precheckDefaultRuleLevelArg,
|
|
12819
12911
|
individualMetadataItemsArg,
|
|
@@ -13116,6 +13208,7 @@ public func uploadToPlayStoreInternalAppSharing(packageName: String,
|
|
|
13116
13208
|
- teamName: The name of your App Store Connect team if you're in multiple teams
|
|
13117
13209
|
- devPortalTeamId: The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
|
|
13118
13210
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
|
13211
|
+
- providerPublicId: The provider public ID to be used with altool (--provider-public-id). This value will override the automatically detected provider value for altool uploads. Required after Xcode 26 when your account is associated with multiple providers and using username/app-password authentication
|
|
13119
13212
|
- waitProcessingInterval: Interval in seconds to wait for App Store Connect processing
|
|
13120
13213
|
- waitProcessingTimeoutDuration: Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will `force stop` to wait for App Store Connect processing and exit with exception
|
|
13121
13214
|
- waitForUploadedBuild: **DEPRECATED!** No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
|
|
@@ -13159,6 +13252,7 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
|
13159
13252
|
teamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
13160
13253
|
devPortalTeamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
13161
13254
|
itcProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
13255
|
+
providerPublicId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
13162
13256
|
waitProcessingInterval: Int = 30,
|
|
13163
13257
|
waitProcessingTimeoutDuration: OptionalConfigValue<Int?> = .fastlaneDefault(nil),
|
|
13164
13258
|
waitForUploadedBuild: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
|
@@ -13199,6 +13293,7 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
|
13199
13293
|
let teamNameArg = teamName.asRubyArgument(name: "team_name", type: nil)
|
|
13200
13294
|
let devPortalTeamIdArg = devPortalTeamId.asRubyArgument(name: "dev_portal_team_id", type: nil)
|
|
13201
13295
|
let itcProviderArg = itcProvider.asRubyArgument(name: "itc_provider", type: nil)
|
|
13296
|
+
let providerPublicIdArg = providerPublicId.asRubyArgument(name: "provider_public_id", type: nil)
|
|
13202
13297
|
let waitProcessingIntervalArg = RubyCommand.Argument(name: "wait_processing_interval", value: waitProcessingInterval, type: nil)
|
|
13203
13298
|
let waitProcessingTimeoutDurationArg = waitProcessingTimeoutDuration.asRubyArgument(name: "wait_processing_timeout_duration", type: nil)
|
|
13204
13299
|
let waitForUploadedBuildArg = waitForUploadedBuild.asRubyArgument(name: "wait_for_uploaded_build", type: nil)
|
|
@@ -13238,6 +13333,7 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
|
13238
13333
|
teamNameArg,
|
|
13239
13334
|
devPortalTeamIdArg,
|
|
13240
13335
|
itcProviderArg,
|
|
13336
|
+
providerPublicIdArg,
|
|
13241
13337
|
waitProcessingIntervalArg,
|
|
13242
13338
|
waitProcessingTimeoutDurationArg,
|
|
13243
13339
|
waitForUploadedBuildArg,
|
|
@@ -13880,4 +13976,4 @@ public let snapshotfile: Snapshotfile = .init()
|
|
|
13880
13976
|
|
|
13881
13977
|
// Please don't remove the lines below
|
|
13882
13978
|
// They are used to detect outdated files
|
|
13883
|
-
// FastlaneRunnerAPIVersion [0.9.
|
|
13979
|
+
// FastlaneRunnerAPIVersion [0.9.198]
|