fastlane 2.170.0 → 2.175.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 (134) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +74 -74
  3. data/cert/lib/cert/options.rb +2 -2
  4. data/deliver/lib/deliver/app_screenshot.rb +5 -7
  5. data/deliver/lib/deliver/app_screenshot_validator.rb +108 -0
  6. data/deliver/lib/deliver/commands_generator.rb +1 -1
  7. data/deliver/lib/deliver/loader.rb +13 -29
  8. data/deliver/lib/deliver/options.rb +2 -2
  9. data/deliver/lib/deliver/setup.rb +8 -3
  10. data/deliver/lib/deliver/upload_metadata.rb +2 -0
  11. data/deliver/lib/deliver/upload_screenshots.rb +2 -1
  12. data/fastlane/lib/fastlane/actions/adb.rb +1 -1
  13. data/fastlane/lib/fastlane/actions/add_git_tag.rb +12 -3
  14. data/fastlane/lib/fastlane/actions/app_store_build_number.rb +2 -2
  15. data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +1 -0
  16. data/fastlane/lib/fastlane/actions/appetize.rb +13 -1
  17. data/fastlane/lib/fastlane/actions/artifactory.rb +36 -3
  18. data/fastlane/lib/fastlane/actions/build_and_upload_to_appetize.rb +10 -2
  19. data/fastlane/lib/fastlane/actions/build_app.rb +3 -1
  20. data/fastlane/lib/fastlane/actions/carthage.rb +22 -0
  21. data/fastlane/lib/fastlane/actions/cocoapods.rb +15 -1
  22. data/fastlane/lib/fastlane/actions/create_pull_request.rb +16 -1
  23. data/fastlane/lib/fastlane/actions/create_xcframework.rb +118 -0
  24. data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +1 -1
  25. data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +1 -1
  26. data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +8 -2
  27. data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +5 -1
  28. data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +142 -0
  29. data/fastlane/lib/fastlane/actions/download_dsyms.rb +5 -16
  30. data/fastlane/lib/fastlane/actions/git_commit.rb +7 -3
  31. data/fastlane/lib/fastlane/actions/github_api.rb +14 -3
  32. data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +2 -2
  33. data/fastlane/lib/fastlane/actions/nexus_upload.rb +1 -0
  34. data/fastlane/lib/fastlane/actions/pod_push.rb +9 -0
  35. data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +9 -1
  36. data/fastlane/lib/fastlane/actions/register_device.rb +3 -3
  37. data/fastlane/lib/fastlane/actions/register_devices.rb +4 -3
  38. data/fastlane/lib/fastlane/actions/set_changelog.rb +2 -2
  39. data/fastlane/lib/fastlane/actions/set_github_release.rb +21 -8
  40. data/fastlane/lib/fastlane/actions/slack.rb +4 -5
  41. data/fastlane/lib/fastlane/actions/spm.rb +2 -2
  42. data/fastlane/lib/fastlane/actions/swiftlint.rb +4 -4
  43. data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +1 -1
  44. data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +4 -2
  45. data/fastlane/lib/fastlane/cli_tools_distributor.rb +3 -0
  46. data/fastlane/lib/fastlane/documentation/actions_list.rb +2 -2
  47. data/fastlane/lib/fastlane/helper/adb_helper.rb +1 -1
  48. data/fastlane/lib/fastlane/helper/gem_helper.rb +2 -2
  49. data/fastlane/lib/fastlane/version.rb +1 -1
  50. data/fastlane/swift/Actions.swift +1 -1
  51. data/fastlane/swift/Appfile.swift +1 -1
  52. data/fastlane/swift/ArgumentProcessor.swift +1 -1
  53. data/fastlane/swift/ControlCommand.swift +1 -1
  54. data/fastlane/swift/Deliverfile.swift +2 -2
  55. data/fastlane/swift/DeliverfileProtocol.swift +2 -2
  56. data/fastlane/swift/Fastlane.swift +213 -38
  57. data/fastlane/swift/Gymfile.swift +2 -2
  58. data/fastlane/swift/GymfileProtocol.swift +11 -3
  59. data/fastlane/swift/LaneFileProtocol.swift +1 -1
  60. data/fastlane/swift/MainProcess.swift +1 -1
  61. data/fastlane/swift/Matchfile.swift +2 -2
  62. data/fastlane/swift/MatchfileProtocol.swift +2 -2
  63. data/fastlane/swift/Plugins.swift +1 -1
  64. data/fastlane/swift/Precheckfile.swift +2 -2
  65. data/fastlane/swift/PrecheckfileProtocol.swift +6 -2
  66. data/fastlane/swift/RubyCommand.swift +1 -1
  67. data/fastlane/swift/RubyCommandable.swift +1 -1
  68. data/fastlane/swift/Runner.swift +2 -2
  69. data/fastlane/swift/RunnerArgument.swift +1 -1
  70. data/fastlane/swift/Scanfile.swift +2 -2
  71. data/fastlane/swift/ScanfileProtocol.swift +14 -2
  72. data/fastlane/swift/Screengrabfile.swift +2 -2
  73. data/fastlane/swift/ScreengrabfileProtocol.swift +2 -2
  74. data/fastlane/swift/Snapshotfile.swift +2 -2
  75. data/fastlane/swift/SnapshotfileProtocol.swift +15 -3
  76. data/fastlane/swift/SocketClient.swift +1 -1
  77. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  78. data/fastlane/swift/SocketResponse.swift +1 -1
  79. data/fastlane/swift/formatting/Brewfile.lock.json +20 -14
  80. data/fastlane/swift/main.swift +1 -1
  81. data/fastlane_core/lib/fastlane_core/command_executor.rb +3 -9
  82. data/fastlane_core/lib/fastlane_core/configuration/commander_generator.rb +1 -1
  83. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +23 -0
  84. data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +9 -5
  85. data/fastlane_core/lib/fastlane_core/helper.rb +28 -7
  86. data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +41 -16
  87. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +3 -4
  88. data/fastlane_core/lib/fastlane_core/keychain_importer.rb +1 -1
  89. data/fastlane_core/lib/fastlane_core/project.rb +41 -14
  90. data/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb +2 -2
  91. data/frameit/lib/frameit/device_types.rb +7 -1
  92. data/gym/lib/gym/error_handler.rb +8 -0
  93. data/gym/lib/gym/generators/build_command_generator.rb +3 -1
  94. data/gym/lib/gym/generators/package_command_generator_xcode7.rb +2 -2
  95. data/gym/lib/gym/options.rb +12 -2
  96. data/match/lib/match/encryption/openssl.rb +4 -2
  97. data/match/lib/match/nuke.rb +5 -0
  98. data/match/lib/match/options.rb +2 -2
  99. data/match/lib/match/storage/git_storage.rb +14 -10
  100. data/pilot/lib/pilot/options.rb +2 -2
  101. data/precheck/lib/precheck/options.rb +8 -3
  102. data/precheck/lib/precheck/rule_processor.rb +1 -1
  103. data/precheck/lib/precheck/runner.rb +1 -1
  104. data/scan/lib/scan/options.rb +15 -0
  105. data/scan/lib/scan/runner.rb +6 -1
  106. data/scan/lib/scan/slack_poster.rb +4 -1
  107. data/scan/lib/scan/test_command_generator.rb +3 -1
  108. data/screengrab/lib/screengrab/android_environment.rb +2 -2
  109. data/screengrab/lib/screengrab/runner.rb +2 -0
  110. data/sigh/lib/sigh/options.rb +2 -2
  111. data/sigh/lib/sigh/runner.rb +1 -1
  112. data/snapshot/lib/assets/SnapshotHelper.swift +1 -1
  113. data/snapshot/lib/snapshot/options.rb +17 -2
  114. data/snapshot/lib/snapshot/update.rb +1 -1
  115. data/spaceship/README.md +2 -2
  116. data/spaceship/lib/spaceship/client.rb +14 -1
  117. data/spaceship/lib/spaceship/connect_api/api_client.rb +17 -2
  118. data/spaceship/lib/spaceship/connect_api/models/app.rb +6 -0
  119. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +7 -1
  120. data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +9 -0
  121. data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +24 -0
  122. data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +26 -4
  123. data/spaceship/lib/spaceship/connect_api/models/device.rb +26 -0
  124. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +53 -0
  125. data/spaceship/lib/spaceship/connect_api/response.rb +3 -1
  126. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +12 -0
  127. data/spaceship/lib/spaceship/connect_api/token.rb +1 -1
  128. data/spaceship/lib/spaceship/playground.rb +2 -2
  129. data/spaceship/lib/spaceship/tunes/tunes_client.rb +2 -2
  130. data/spaceship/lib/spaceship/two_step_or_factor_client.rb +1 -0
  131. data/spaceship/lib/spaceship/upgrade_2fa_later_client.rb +91 -0
  132. metadata +51 -21
  133. data/fastlane/lib/fastlane/actions/.download_dsyms.rb.swp +0 -0
  134. data/spaceship/lib/spaceship/connect_api/models/.app_data_usage_data_protection.rb.swp +0 -0
@@ -1,5 +1,5 @@
1
1
  // DeliverfileProtocol.swift
2
- // Copyright (c) 2020 FastlaneTools
2
+ // Copyright (c) 2021 FastlaneTools
3
3
 
4
4
  public protocol DeliverfileProtocol: class {
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)
@@ -256,4 +256,4 @@ public extension DeliverfileProtocol {
256
256
 
257
257
  // Please don't remove the lines below
258
258
  // They are used to detect outdated files
259
- // FastlaneRunnerAPIVersion [0.9.53]
259
+ // FastlaneRunnerAPIVersion [0.9.58]
@@ -1,5 +1,5 @@
1
1
  // Fastlane.swift
2
- // Copyright (c) 2020 FastlaneTools
2
+ // Copyright (c) 2021 FastlaneTools
3
3
 
4
4
  import Foundation
5
5
  /**
@@ -8,7 +8,7 @@ import Foundation
8
8
  - parameters:
9
9
  - serial: Android serial of the device to use for this command
10
10
  - command: All commands you want to pass to the adb command, e.g. `kill-server`
11
- - adbPath: The path to your `adb` binary (can be left blank if the ANDROID_SDK_ROOT environment variable is set)
11
+ - adbPath: The path to your `adb` binary (can be left blank if the ANDROID_SDK_ROOT, ANDROID_HOME or ANDROID_SDK environment variable is set)
12
12
 
13
13
  - returns: The output of the adb command
14
14
 
@@ -54,6 +54,7 @@ public func addExtraPlatforms(platforms: [String] = []) {
54
54
  - parameters:
55
55
  - tag: Define your own tag text. This will replace all other parameters
56
56
  - grouping: Is used to keep your tags organised under one 'folder'
57
+ - includesLane: Whether the current lane should be included in the tag and message composition, e.g. '<grouping>/<lane>/<prefix><build_number><postfix>'
57
58
  - prefix: Anything you want to put in front of the version number (e.g. 'v')
58
59
  - postfix: Anything you want to put at the end of the version number (e.g. '-RC1')
59
60
  - buildNumber: The build number. Defaults to the result of increment_build_number if you're using it
@@ -62,10 +63,10 @@ public func addExtraPlatforms(platforms: [String] = []) {
62
63
  - force: Force adding the tag
63
64
  - sign: Make a GPG-signed tag, using the default e-mail address's key
64
65
 
65
- This will automatically tag your build with the following format: `<grouping>/<lane>/<prefix><build_number>`, where:|
66
+ This will automatically tag your build with the following format: `<grouping>/<lane>/<prefix><build_number><postfix>`, where:|
66
67
  |
67
68
  >- `grouping` is just to keep your tags organised under one 'folder', defaults to 'builds'|
68
- - `lane` is the name of the current fastlane lane|
69
+ - `lane` is the name of the current fastlane lane, if chosen to be included via 'includes_lane' option, which defaults to 'true'|
69
70
  - `prefix` is anything you want to stick in front of the version number, e.g. 'v'|
70
71
  - `postfix` is anything you want to stick at the end of the version number, e.g. '-RC1'|
71
72
  - `build_number` is the build number, which defaults to the value emitted by the `increment_build_number` action|
@@ -74,6 +75,7 @@ public func addExtraPlatforms(platforms: [String] = []) {
74
75
  */
75
76
  public func addGitTag(tag: String? = nil,
76
77
  grouping: String = "builds",
78
+ includesLane: Bool = true,
77
79
  prefix: String = "",
78
80
  postfix: String = "",
79
81
  buildNumber: Any? = nil,
@@ -84,6 +86,7 @@ public func addGitTag(tag: String? = nil,
84
86
  {
85
87
  let command = RubyCommand(commandID: "", methodName: "add_git_tag", className: nil, args: [RubyCommand.Argument(name: "tag", value: tag),
86
88
  RubyCommand.Argument(name: "grouping", value: grouping),
89
+ RubyCommand.Argument(name: "includes_lane", value: includesLane),
87
90
  RubyCommand.Argument(name: "prefix", value: prefix),
88
91
  RubyCommand.Argument(name: "postfix", value: postfix),
89
92
  RubyCommand.Argument(name: "build_number", value: buildNumber),
@@ -155,7 +158,7 @@ public func appStoreConnectApiKey(keyId: String,
155
158
  keyFilepath: String? = nil,
156
159
  keyContent: String? = nil,
157
160
  isKeyContentBase64: Bool = false,
158
- duration: Int? = nil,
161
+ duration: Int = 1200,
159
162
  inHouse: Bool? = nil)
160
163
  {
161
164
  let command = RubyCommand(commandID: "", methodName: "app_store_connect_api_key", className: nil, args: [RubyCommand.Argument(name: "key_id", value: keyId),
@@ -216,6 +219,7 @@ public func appaloosa(binary: String,
216
219
  - path: Path to zipped build on the local filesystem. Either this or `url` must be specified
217
220
  - publicKey: If not provided, a new app will be created. If provided, the existing build will be overwritten
218
221
  - note: Notes you wish to add to the uploaded app
222
+ - timeout: The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120
219
223
 
220
224
  If you provide a `public_key`, this will overwrite an existing application. If you want to have this build as a new app version, you shouldn't provide this value.
221
225
 
@@ -227,7 +231,8 @@ public func appetize(apiHost: String = "api.appetize.io",
227
231
  platform: String = "ios",
228
232
  path: String? = nil,
229
233
  publicKey: String? = nil,
230
- note: String? = nil)
234
+ note: String? = nil,
235
+ timeout: Int? = nil)
231
236
  {
232
237
  let command = RubyCommand(commandID: "", methodName: "appetize", className: nil, args: [RubyCommand.Argument(name: "api_host", value: apiHost),
233
238
  RubyCommand.Argument(name: "api_token", value: apiToken),
@@ -235,7 +240,8 @@ public func appetize(apiHost: String = "api.appetize.io",
235
240
  RubyCommand.Argument(name: "platform", value: platform),
236
241
  RubyCommand.Argument(name: "path", value: path),
237
242
  RubyCommand.Argument(name: "public_key", value: publicKey),
238
- RubyCommand.Argument(name: "note", value: note)])
243
+ RubyCommand.Argument(name: "note", value: note),
244
+ RubyCommand.Argument(name: "timeout", value: timeout)])
239
245
  _ = runner.executeCommand(command)
240
246
  }
241
247
 
@@ -697,6 +703,7 @@ public func apteligent(dsym: String? = nil,
697
703
  - endpoint: Artifactory endpoint
698
704
  - username: Artifactory username
699
705
  - password: Artifactory password
706
+ - apiKey: Artifactory API key
700
707
  - properties: Artifact properties hash
701
708
  - sslPemFile: Location of pem file to use for ssl verification
702
709
  - sslVerify: Verify SSL
@@ -705,13 +712,16 @@ public func apteligent(dsym: String? = nil,
705
712
  - proxyAddress: Proxy address
706
713
  - proxyPort: Proxy port
707
714
  - readTimeout: Read timeout
715
+
716
+ Connect to the artifactory server using either a username/password or an api_key
708
717
  */
709
718
  public func artifactory(file: String,
710
719
  repo: String,
711
720
  repoPath: String,
712
721
  endpoint: String,
713
- username: String,
714
- password: String,
722
+ username: String? = nil,
723
+ password: String? = nil,
724
+ apiKey: String? = nil,
715
725
  properties: [String: Any] = [:],
716
726
  sslPemFile: String? = nil,
717
727
  sslVerify: Bool = true,
@@ -727,6 +737,7 @@ public func artifactory(file: String,
727
737
  RubyCommand.Argument(name: "endpoint", value: endpoint),
728
738
  RubyCommand.Argument(name: "username", value: username),
729
739
  RubyCommand.Argument(name: "password", value: password),
740
+ RubyCommand.Argument(name: "api_key", value: apiKey),
730
741
  RubyCommand.Argument(name: "properties", value: properties),
731
742
  RubyCommand.Argument(name: "ssl_pem_file", value: sslPemFile),
732
743
  RubyCommand.Argument(name: "ssl_verify", value: sslVerify),
@@ -866,6 +877,7 @@ public func badge(dark: Any? = nil,
866
877
  - apiToken: Appetize.io API Token
867
878
  - publicKey: If not provided, a new app will be created. If provided, the existing build will be overwritten
868
879
  - note: Notes you wish to add to the uploaded app
880
+ - timeout: The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120
869
881
 
870
882
  This should be called from danger.
871
883
  More information in the [device_grid guide](https://github.com/fastlane/fastlane/blob/master/fastlane/lib/fastlane/actions/device_grid/README.md).
@@ -874,13 +886,15 @@ public func buildAndUploadToAppetize(xcodebuild: [String: Any] = [:],
874
886
  scheme: String? = nil,
875
887
  apiToken: String,
876
888
  publicKey: String? = nil,
877
- note: String? = nil)
889
+ note: String? = nil,
890
+ timeout: Int? = nil)
878
891
  {
879
892
  let command = RubyCommand(commandID: "", methodName: "build_and_upload_to_appetize", className: nil, args: [RubyCommand.Argument(name: "xcodebuild", value: xcodebuild),
880
893
  RubyCommand.Argument(name: "scheme", value: scheme),
881
894
  RubyCommand.Argument(name: "api_token", value: apiToken),
882
895
  RubyCommand.Argument(name: "public_key", value: publicKey),
883
- RubyCommand.Argument(name: "note", value: note)])
896
+ RubyCommand.Argument(name: "note", value: note),
897
+ RubyCommand.Argument(name: "timeout", value: timeout)])
884
898
  _ = runner.executeCommand(command)
885
899
  }
886
900
 
@@ -950,7 +964,7 @@ public func buildAndroidApp(task: String? = nil,
950
964
  - skipPackagePkg: Should we skip packaging the pkg?
951
965
  - includeSymbols: Should the ipa file include symbols?
952
966
  - includeBitcode: Should the ipa file include bitcode?
953
- - exportMethod: Method used to export the archive. Valid values are: app-store, ad-hoc, package, enterprise, development, developer-id
967
+ - exportMethod: Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
954
968
  - exportOptions: Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
955
969
  - exportXcargs: Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
956
970
  - skipBuildArchive: Export ipa from previously built xcarchive. Uses archive_path as source
@@ -981,6 +995,8 @@ public func buildAndroidApp(task: String? = nil,
981
995
  - xcprettyUtf: Have xcpretty use unicode encoding when reporting builds
982
996
  - skipProfileDetection: Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
983
997
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
998
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
999
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
984
1000
  - useSystemScm: Lets xcodebuild use system's scm configuration
985
1001
 
986
1002
  - returns: The absolute path to the generated ipa file
@@ -1031,6 +1047,8 @@ public func buildApp(workspace: String? = nil,
1031
1047
  xcprettyUtf: Bool? = nil,
1032
1048
  skipProfileDetection: Bool = false,
1033
1049
  clonedSourcePackagesPath: String? = nil,
1050
+ skipPackageDependenciesResolution: Bool = false,
1051
+ disablePackageAutomaticUpdates: Bool = false,
1034
1052
  useSystemScm: Bool = false)
1035
1053
  {
1036
1054
  let command = RubyCommand(commandID: "", methodName: "build_app", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
@@ -1077,6 +1095,8 @@ public func buildApp(workspace: String? = nil,
1077
1095
  RubyCommand.Argument(name: "xcpretty_utf", value: xcprettyUtf),
1078
1096
  RubyCommand.Argument(name: "skip_profile_detection", value: skipProfileDetection),
1079
1097
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
1098
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
1099
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
1080
1100
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
1081
1101
  _ = runner.executeCommand(command)
1082
1102
  }
@@ -1097,7 +1117,7 @@ public func buildApp(workspace: String? = nil,
1097
1117
  - skipPackageIpa: Should we skip packaging the ipa?
1098
1118
  - includeSymbols: Should the ipa file include symbols?
1099
1119
  - includeBitcode: Should the ipa file include bitcode?
1100
- - exportMethod: Method used to export the archive. Valid values are: app-store, ad-hoc, package, enterprise, development, developer-id
1120
+ - exportMethod: Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
1101
1121
  - exportOptions: Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
1102
1122
  - exportXcargs: Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
1103
1123
  - skipBuildArchive: Export ipa from previously built xcarchive. Uses archive_path as source
@@ -1126,6 +1146,8 @@ public func buildApp(workspace: String? = nil,
1126
1146
  - xcprettyUtf: Have xcpretty use unicode encoding when reporting builds
1127
1147
  - skipProfileDetection: Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
1128
1148
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
1149
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
1150
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
1129
1151
  - useSystemScm: Lets xcodebuild use system's scm configuration
1130
1152
 
1131
1153
  - returns: The absolute path to the generated ipa file
@@ -1173,6 +1195,8 @@ public func buildIosApp(workspace: String? = nil,
1173
1195
  xcprettyUtf: Bool? = nil,
1174
1196
  skipProfileDetection: Bool = false,
1175
1197
  clonedSourcePackagesPath: String? = nil,
1198
+ skipPackageDependenciesResolution: Bool = false,
1199
+ disablePackageAutomaticUpdates: Bool = false,
1176
1200
  useSystemScm: Bool = false)
1177
1201
  {
1178
1202
  let command = RubyCommand(commandID: "", methodName: "build_ios_app", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
@@ -1216,6 +1240,8 @@ public func buildIosApp(workspace: String? = nil,
1216
1240
  RubyCommand.Argument(name: "xcpretty_utf", value: xcprettyUtf),
1217
1241
  RubyCommand.Argument(name: "skip_profile_detection", value: skipProfileDetection),
1218
1242
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
1243
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
1244
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
1219
1245
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
1220
1246
  _ = runner.executeCommand(command)
1221
1247
  }
@@ -1236,7 +1262,7 @@ public func buildIosApp(workspace: String? = nil,
1236
1262
  - skipPackagePkg: Should we skip packaging the pkg?
1237
1263
  - includeSymbols: Should the ipa file include symbols?
1238
1264
  - includeBitcode: Should the ipa file include bitcode?
1239
- - exportMethod: Method used to export the archive. Valid values are: app-store, ad-hoc, package, enterprise, development, developer-id
1265
+ - exportMethod: Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
1240
1266
  - exportOptions: Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
1241
1267
  - exportXcargs: Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
1242
1268
  - skipBuildArchive: Export ipa from previously built xcarchive. Uses archive_path as source
@@ -1266,6 +1292,8 @@ public func buildIosApp(workspace: String? = nil,
1266
1292
  - xcprettyUtf: Have xcpretty use unicode encoding when reporting builds
1267
1293
  - skipProfileDetection: Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
1268
1294
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
1295
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
1296
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
1269
1297
  - useSystemScm: Lets xcodebuild use system's scm configuration
1270
1298
 
1271
1299
  - returns: The absolute path to the generated ipa file
@@ -1314,6 +1342,8 @@ public func buildMacApp(workspace: String? = nil,
1314
1342
  xcprettyUtf: Bool? = nil,
1315
1343
  skipProfileDetection: Bool = false,
1316
1344
  clonedSourcePackagesPath: String? = nil,
1345
+ skipPackageDependenciesResolution: Bool = false,
1346
+ disablePackageAutomaticUpdates: Bool = false,
1317
1347
  useSystemScm: Bool = false)
1318
1348
  {
1319
1349
  let command = RubyCommand(commandID: "", methodName: "build_mac_app", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
@@ -1358,6 +1388,8 @@ public func buildMacApp(workspace: String? = nil,
1358
1388
  RubyCommand.Argument(name: "xcpretty_utf", value: xcprettyUtf),
1359
1389
  RubyCommand.Argument(name: "skip_profile_detection", value: skipProfileDetection),
1360
1390
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
1391
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
1392
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
1361
1393
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
1362
1394
  _ = runner.executeCommand(command)
1363
1395
  }
@@ -1520,7 +1552,7 @@ public func captureAndroidScreenshots(androidHome: String? = nil,
1520
1552
  - reinstallApp: Enabling this option will automatically uninstall the application before running it
1521
1553
  - eraseSimulator: Enabling this option will automatically erase the simulator before running the application
1522
1554
  - headless: Enabling this option will prevent displaying the simulator window
1523
- - overrideStatusBar: Enabling this option wil automatically override the status bar to show 9:41 AM, full battery, and full reception
1555
+ - overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
1524
1556
  - localizeSimulator: Enabling this option will configure the Simulator's system language
1525
1557
  - darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
1526
1558
  - appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
@@ -1543,11 +1575,14 @@ public func captureAndroidScreenshots(androidHome: String? = nil,
1543
1575
  - concurrentSimulators: Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
1544
1576
  - disableSlideToType: Disable the simulator from showing the 'Slide to type' prompt
1545
1577
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
1578
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
1579
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
1546
1580
  - testplan: The testplan associated with the scheme that should be used for testing
1547
1581
  - onlyTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to run
1548
1582
  - skipTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to skip
1549
1583
  - disableXcpretty: Disable xcpretty formatting of build
1550
1584
  - suppressXcodeOutput: Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
1585
+ - useSystemScm: Lets xcodebuild use system's scm configuration
1551
1586
  */
1552
1587
  public func captureIosScreenshots(workspace: String? = nil,
1553
1588
  project: String? = nil,
@@ -1588,11 +1623,14 @@ public func captureIosScreenshots(workspace: String? = nil,
1588
1623
  concurrentSimulators: Bool = true,
1589
1624
  disableSlideToType: Bool = false,
1590
1625
  clonedSourcePackagesPath: String? = nil,
1626
+ skipPackageDependenciesResolution: Bool = false,
1627
+ disablePackageAutomaticUpdates: Bool = false,
1591
1628
  testplan: String? = nil,
1592
1629
  onlyTesting: Any? = nil,
1593
1630
  skipTesting: Any? = nil,
1594
1631
  disableXcpretty: Bool? = nil,
1595
- suppressXcodeOutput: Bool? = nil)
1632
+ suppressXcodeOutput: Bool? = nil,
1633
+ useSystemScm: Bool = false)
1596
1634
  {
1597
1635
  let command = RubyCommand(commandID: "", methodName: "capture_ios_screenshots", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
1598
1636
  RubyCommand.Argument(name: "project", value: project),
@@ -1633,11 +1671,14 @@ public func captureIosScreenshots(workspace: String? = nil,
1633
1671
  RubyCommand.Argument(name: "concurrent_simulators", value: concurrentSimulators),
1634
1672
  RubyCommand.Argument(name: "disable_slide_to_type", value: disableSlideToType),
1635
1673
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
1674
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
1675
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
1636
1676
  RubyCommand.Argument(name: "testplan", value: testplan),
1637
1677
  RubyCommand.Argument(name: "only_testing", value: onlyTesting),
1638
1678
  RubyCommand.Argument(name: "skip_testing", value: skipTesting),
1639
1679
  RubyCommand.Argument(name: "disable_xcpretty", value: disableXcpretty),
1640
- RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput)])
1680
+ RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput),
1681
+ RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
1641
1682
  _ = runner.executeCommand(command)
1642
1683
  }
1643
1684
 
@@ -1661,7 +1702,7 @@ public func captureIosScreenshots(workspace: String? = nil,
1661
1702
  - reinstallApp: Enabling this option will automatically uninstall the application before running it
1662
1703
  - eraseSimulator: Enabling this option will automatically erase the simulator before running the application
1663
1704
  - headless: Enabling this option will prevent displaying the simulator window
1664
- - overrideStatusBar: Enabling this option wil automatically override the status bar to show 9:41 AM, full battery, and full reception
1705
+ - overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
1665
1706
  - localizeSimulator: Enabling this option will configure the Simulator's system language
1666
1707
  - darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
1667
1708
  - appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
@@ -1684,11 +1725,14 @@ public func captureIosScreenshots(workspace: String? = nil,
1684
1725
  - concurrentSimulators: Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
1685
1726
  - disableSlideToType: Disable the simulator from showing the 'Slide to type' prompt
1686
1727
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
1728
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
1729
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
1687
1730
  - testplan: The testplan associated with the scheme that should be used for testing
1688
1731
  - onlyTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to run
1689
1732
  - skipTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to skip
1690
1733
  - disableXcpretty: Disable xcpretty formatting of build
1691
1734
  - suppressXcodeOutput: Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
1735
+ - useSystemScm: Lets xcodebuild use system's scm configuration
1692
1736
  */
1693
1737
  public func captureScreenshots(workspace: String? = nil,
1694
1738
  project: String? = nil,
@@ -1729,11 +1773,14 @@ public func captureScreenshots(workspace: String? = nil,
1729
1773
  concurrentSimulators: Bool = true,
1730
1774
  disableSlideToType: Bool = false,
1731
1775
  clonedSourcePackagesPath: String? = nil,
1776
+ skipPackageDependenciesResolution: Bool = false,
1777
+ disablePackageAutomaticUpdates: Bool = false,
1732
1778
  testplan: String? = nil,
1733
1779
  onlyTesting: Any? = nil,
1734
1780
  skipTesting: Any? = nil,
1735
1781
  disableXcpretty: Bool? = nil,
1736
- suppressXcodeOutput: Bool? = nil)
1782
+ suppressXcodeOutput: Bool? = nil,
1783
+ useSystemScm: Bool = false)
1737
1784
  {
1738
1785
  let command = RubyCommand(commandID: "", methodName: "capture_screenshots", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
1739
1786
  RubyCommand.Argument(name: "project", value: project),
@@ -1774,11 +1821,14 @@ public func captureScreenshots(workspace: String? = nil,
1774
1821
  RubyCommand.Argument(name: "concurrent_simulators", value: concurrentSimulators),
1775
1822
  RubyCommand.Argument(name: "disable_slide_to_type", value: disableSlideToType),
1776
1823
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
1824
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
1825
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
1777
1826
  RubyCommand.Argument(name: "testplan", value: testplan),
1778
1827
  RubyCommand.Argument(name: "only_testing", value: onlyTesting),
1779
1828
  RubyCommand.Argument(name: "skip_testing", value: skipTesting),
1780
1829
  RubyCommand.Argument(name: "disable_xcpretty", value: disableXcpretty),
1781
- RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput)])
1830
+ RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput),
1831
+ RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
1782
1832
  _ = runner.executeCommand(command)
1783
1833
  }
1784
1834
 
@@ -1806,6 +1856,8 @@ public func captureScreenshots(workspace: String? = nil,
1806
1856
  - projectDirectory: Define the directory containing the Carthage project
1807
1857
  - newResolver: Use new resolver when resolving dependency graph
1808
1858
  - logPath: Path to the xcode build output
1859
+ - useXcframeworks: Create xcframework bundles instead of one framework per platform (requires Xcode 12+)
1860
+ - archive: Archive built frameworks from the current project
1809
1861
  - executable: Path to the `carthage` executable on your machine
1810
1862
  */
1811
1863
  public func carthage(command: String = "bootstrap",
@@ -1828,6 +1880,8 @@ public func carthage(command: String = "bootstrap",
1828
1880
  projectDirectory: String? = nil,
1829
1881
  newResolver: Bool? = nil,
1830
1882
  logPath: String? = nil,
1883
+ useXcframeworks: Bool = false,
1884
+ archive: Bool = false,
1831
1885
  executable: String = "carthage")
1832
1886
  {
1833
1887
  let command = RubyCommand(commandID: "", methodName: "carthage", className: nil, args: [RubyCommand.Argument(name: "command", value: command),
@@ -1850,6 +1904,8 @@ public func carthage(command: String = "bootstrap",
1850
1904
  RubyCommand.Argument(name: "project_directory", value: projectDirectory),
1851
1905
  RubyCommand.Argument(name: "new_resolver", value: newResolver),
1852
1906
  RubyCommand.Argument(name: "log_path", value: logPath),
1907
+ RubyCommand.Argument(name: "use_xcframeworks", value: useXcframeworks),
1908
+ RubyCommand.Argument(name: "archive", value: archive),
1853
1909
  RubyCommand.Argument(name: "executable", value: executable)])
1854
1910
  _ = runner.executeCommand(command)
1855
1911
  }
@@ -1993,6 +2049,7 @@ public func chatwork(apiToken: String,
1993
2049
  - platform: The platform to use (optional)
1994
2050
  - defaultRuleLevel: The default rule level unless otherwise configured
1995
2051
  - includeInAppPurchases: Should check in-app purchases?
2052
+ - useLive: Should force check live app?
1996
2053
  - negativeAppleSentiment: mentioning  in a way that could be considered negative
1997
2054
  - placeholderText: using placeholder text (e.g.:"lorem ipsum", "text here", etc...)
1998
2055
  - otherPlatforms: mentioning other platforms, like Android or Blackberry
@@ -2017,6 +2074,7 @@ public func checkAppStoreMetadata(apiKeyPath: String? = nil,
2017
2074
  platform: String = "ios",
2018
2075
  defaultRuleLevel: Any = "error",
2019
2076
  includeInAppPurchases: Bool = true,
2077
+ useLive: Bool = false,
2020
2078
  negativeAppleSentiment: Any? = nil,
2021
2079
  placeholderText: Any? = nil,
2022
2080
  otherPlatforms: Any? = nil,
@@ -2037,6 +2095,7 @@ public func checkAppStoreMetadata(apiKeyPath: String? = nil,
2037
2095
  RubyCommand.Argument(name: "platform", value: platform),
2038
2096
  RubyCommand.Argument(name: "default_rule_level", value: defaultRuleLevel),
2039
2097
  RubyCommand.Argument(name: "include_in_app_purchases", value: includeInAppPurchases),
2098
+ RubyCommand.Argument(name: "use_live", value: useLive),
2040
2099
  RubyCommand.Argument(name: "negative_apple_sentiment", value: negativeAppleSentiment),
2041
2100
  RubyCommand.Argument(name: "placeholder_text", value: placeholderText),
2042
2101
  RubyCommand.Argument(name: "other_platforms", value: otherPlatforms),
@@ -2145,6 +2204,7 @@ public func clubmate() {
2145
2204
  - errorCallback: A callback invoked with the command output if there is a non-zero exit status
2146
2205
  - tryRepoUpdateOnError: Retry with --repo-update if action was finished with error
2147
2206
  - deployment: Disallow any changes to the Podfile or the Podfile.lock during installation
2207
+ - allowRoot: Allows CocoaPods to run as root
2148
2208
  - clean: **DEPRECATED!** (Option renamed as clean_install) Remove SCM directories
2149
2209
  - integrate: **DEPRECATED!** (Option removed from cocoapods) Integrate the Pods libraries into the Xcode project(s)
2150
2210
 
@@ -2160,6 +2220,7 @@ public func cocoapods(repoUpdate: Bool = false,
2160
2220
  errorCallback: ((String) -> Void)? = nil,
2161
2221
  tryRepoUpdateOnError: Bool = false,
2162
2222
  deployment: Bool = false,
2223
+ allowRoot: Bool = false,
2163
2224
  clean: Bool = true,
2164
2225
  integrate: Bool = true)
2165
2226
  {
@@ -2173,6 +2234,7 @@ public func cocoapods(repoUpdate: Bool = false,
2173
2234
  RubyCommand.Argument(name: "error_callback", value: errorCallback, type: .stringClosure),
2174
2235
  RubyCommand.Argument(name: "try_repo_update_on_error", value: tryRepoUpdateOnError),
2175
2236
  RubyCommand.Argument(name: "deployment", value: deployment),
2237
+ RubyCommand.Argument(name: "allow_root", value: allowRoot),
2176
2238
  RubyCommand.Argument(name: "clean", value: clean),
2177
2239
  RubyCommand.Argument(name: "integrate", value: integrate)])
2178
2240
  _ = runner.executeCommand(command)
@@ -2474,6 +2536,7 @@ public func createKeychain(name: String? = nil,
2474
2536
 
2475
2537
  - parameters:
2476
2538
  - apiToken: Personal API Token for GitHub - generate one at https://github.com/settings/tokens
2539
+ - apiBearer: Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
2477
2540
  - repo: The name of the repository you want to submit the pull request to
2478
2541
  - title: The title of the pull request
2479
2542
  - body: The contents of the pull request
@@ -2489,7 +2552,8 @@ public func createKeychain(name: String? = nil,
2489
2552
 
2490
2553
  - returns: The pull request URL when successful
2491
2554
  */
2492
- public func createPullRequest(apiToken: String,
2555
+ public func createPullRequest(apiToken: String? = nil,
2556
+ apiBearer: String? = nil,
2493
2557
  repo: String,
2494
2558
  title: String,
2495
2559
  body: String? = nil,
@@ -2504,6 +2568,7 @@ public func createPullRequest(apiToken: String,
2504
2568
  teamReviewers: [String]? = nil)
2505
2569
  {
2506
2570
  let command = RubyCommand(commandID: "", methodName: "create_pull_request", className: nil, args: [RubyCommand.Argument(name: "api_token", value: apiToken),
2571
+ RubyCommand.Argument(name: "api_bearer", value: apiBearer),
2507
2572
  RubyCommand.Argument(name: "repo", value: repo),
2508
2573
  RubyCommand.Argument(name: "title", value: title),
2509
2574
  RubyCommand.Argument(name: "body", value: body),
@@ -2519,6 +2584,42 @@ public func createPullRequest(apiToken: String,
2519
2584
  _ = runner.executeCommand(command)
2520
2585
  }
2521
2586
 
2587
+ /**
2588
+ Package multiple build configs of a library/framework into a single xcframework
2589
+
2590
+ - parameters:
2591
+ - frameworks: Frameworks to add to the target xcframework
2592
+ - libraries: Libraries to add to the target xcframework, with their corresponding headers
2593
+ - output: The path to write the xcframework to
2594
+ - allowInternalDistribution: Specifies that the created xcframework contains information not suitable for public distribution
2595
+
2596
+ Utility for packaging multiple build configurations of a given library
2597
+ or framework into a single xcframework.
2598
+
2599
+ If you want to package several frameworks just provide an array containing
2600
+ the list of frameworks to be packaged using the :frameworks parameter.
2601
+
2602
+ If you want to package several libraries with their corresponding headers
2603
+ provide a hash containing the library as the key and the directory containing
2604
+ its headers as the value (or an empty string if there are no headers associated
2605
+ with the provided library).
2606
+
2607
+ Finally specify the location of the xcframework to be generated using the :output
2608
+ parameter.
2609
+
2610
+ */
2611
+ public func createXcframework(frameworks: [String]? = nil,
2612
+ libraries: [String: Any]? = nil,
2613
+ output: String,
2614
+ allowInternalDistribution: Bool = false)
2615
+ {
2616
+ let command = RubyCommand(commandID: "", methodName: "create_xcframework", className: nil, args: [RubyCommand.Argument(name: "frameworks", value: frameworks),
2617
+ RubyCommand.Argument(name: "libraries", value: libraries),
2618
+ RubyCommand.Argument(name: "output", value: output),
2619
+ RubyCommand.Argument(name: "allow_internal_distribution", value: allowInternalDistribution)])
2620
+ _ = runner.executeCommand(command)
2621
+ }
2622
+
2522
2623
  /**
2523
2624
  Runs `danger` for the project
2524
2625
 
@@ -2864,6 +2965,32 @@ public func download(url: String) {
2864
2965
  _ = runner.executeCommand(command)
2865
2966
  }
2866
2967
 
2968
+ /**
2969
+ Download App Privacy Details from an app in App Store Connect
2970
+
2971
+ - parameters:
2972
+ - username: Your Apple ID Username for App Store Connect
2973
+ - appIdentifier: The bundle identifier of your app
2974
+ - teamId: The ID of your App Store Connect team if you're in multiple teams
2975
+ - teamName: The name of your App Store Connect team if you're in multiple teams
2976
+ - outputJsonPath: Path to the app usage data JSON file generated by interactive questions
2977
+
2978
+ Download App Privacy Details from an app in App Store Connect. For more detail information, view https://docs.fastlane.tools/uploading-app-privacy-details
2979
+ */
2980
+ public func downloadAppPrivacyDetailsFromAppStore(username: String,
2981
+ appIdentifier: String,
2982
+ teamId: Any? = nil,
2983
+ teamName: String? = nil,
2984
+ outputJsonPath: String = "./fastlane/app_privacy_details.json")
2985
+ {
2986
+ let command = RubyCommand(commandID: "", methodName: "download_app_privacy_details_from_app_store", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
2987
+ RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
2988
+ RubyCommand.Argument(name: "team_id", value: teamId),
2989
+ RubyCommand.Argument(name: "team_name", value: teamName),
2990
+ RubyCommand.Argument(name: "output_json_path", value: outputJsonPath)])
2991
+ _ = runner.executeCommand(command)
2992
+ }
2993
+
2867
2994
  /**
2868
2995
  Download dSYM files from App Store Connect for Bitcode apps
2869
2996
 
@@ -3718,10 +3845,10 @@ public func gitAdd(path: Any? = nil,
3718
3845
  Directly commit the given file with the given message
3719
3846
 
3720
3847
  - parameters:
3721
- - path: The file you want to commit
3848
+ - path: The file(s) or directory(ies) you want to commit. You can pass an array of multiple file-paths or fileglobs "*.txt" to commit all matching files. The files already staged but not specified and untracked files won't be committed
3722
3849
  - message: The commit message that should be used
3723
3850
  - skipGitHooks: Set to true to pass --no-verify to git
3724
- - allowNothingToCommit: Set to true to allow commit without any git changes
3851
+ - allowNothingToCommit: Set to true to allow commit without any git changes in the files you want to commit
3725
3852
  */
3726
3853
  public func gitCommit(path: Any,
3727
3854
  message: String,
@@ -3791,6 +3918,7 @@ public func gitTagExists(tag: String,
3791
3918
  - parameters:
3792
3919
  - serverUrl: The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
3793
3920
  - apiToken: Personal API Token for GitHub - generate one at https://github.com/settings/tokens
3921
+ - apiBearer: Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
3794
3922
  - httpMethod: The HTTP method. e.g. GET / POST
3795
3923
  - body: The request body in JSON or hash format
3796
3924
  - rawBody: The request body taken verbatim instead of as JSON, useful for file uploads
@@ -3807,7 +3935,8 @@ public func gitTagExists(tag: String,
3807
3935
  Documentation: [https://developer.github.com/v3](https://developer.github.com/v3).
3808
3936
  */
3809
3937
  public func githubApi(serverUrl: String = "https://api.github.com",
3810
- apiToken: String,
3938
+ apiToken: String? = nil,
3939
+ apiBearer: String? = nil,
3811
3940
  httpMethod: String = "GET",
3812
3941
  body: [String: Any] = [:],
3813
3942
  rawBody: String? = nil,
@@ -3819,6 +3948,7 @@ public func githubApi(serverUrl: String = "https://api.github.com",
3819
3948
  {
3820
3949
  let command = RubyCommand(commandID: "", methodName: "github_api", className: nil, args: [RubyCommand.Argument(name: "server_url", value: serverUrl),
3821
3950
  RubyCommand.Argument(name: "api_token", value: apiToken),
3951
+ RubyCommand.Argument(name: "api_bearer", value: apiBearer),
3822
3952
  RubyCommand.Argument(name: "http_method", value: httpMethod),
3823
3953
  RubyCommand.Argument(name: "body", value: body),
3824
3954
  RubyCommand.Argument(name: "raw_body", value: rawBody),
@@ -3970,7 +4100,7 @@ public func gradle(task: String? = nil,
3970
4100
  - skipPackagePkg: Should we skip packaging the pkg?
3971
4101
  - includeSymbols: Should the ipa file include symbols?
3972
4102
  - includeBitcode: Should the ipa file include bitcode?
3973
- - exportMethod: Method used to export the archive. Valid values are: app-store, ad-hoc, package, enterprise, development, developer-id
4103
+ - exportMethod: Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
3974
4104
  - exportOptions: Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
3975
4105
  - exportXcargs: Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
3976
4106
  - skipBuildArchive: Export ipa from previously built xcarchive. Uses archive_path as source
@@ -4001,6 +4131,8 @@ public func gradle(task: String? = nil,
4001
4131
  - xcprettyUtf: Have xcpretty use unicode encoding when reporting builds
4002
4132
  - skipProfileDetection: Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
4003
4133
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
4134
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
4135
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
4004
4136
  - useSystemScm: Lets xcodebuild use system's scm configuration
4005
4137
 
4006
4138
  - returns: The absolute path to the generated ipa file
@@ -4051,6 +4183,8 @@ public func gym(workspace: Any? = gymfile.workspace,
4051
4183
  xcprettyUtf: Bool? = gymfile.xcprettyUtf,
4052
4184
  skipProfileDetection: Bool = gymfile.skipProfileDetection,
4053
4185
  clonedSourcePackagesPath: Any? = gymfile.clonedSourcePackagesPath,
4186
+ skipPackageDependenciesResolution: Bool = gymfile.skipPackageDependenciesResolution,
4187
+ disablePackageAutomaticUpdates: Bool = gymfile.disablePackageAutomaticUpdates,
4054
4188
  useSystemScm: Bool = gymfile.useSystemScm)
4055
4189
  {
4056
4190
  let command = RubyCommand(commandID: "", methodName: "gym", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
@@ -4097,6 +4231,8 @@ public func gym(workspace: Any? = gymfile.workspace,
4097
4231
  RubyCommand.Argument(name: "xcpretty_utf", value: xcprettyUtf),
4098
4232
  RubyCommand.Argument(name: "skip_profile_detection", value: skipProfileDetection),
4099
4233
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
4234
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
4235
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
4100
4236
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
4101
4237
  _ = runner.executeCommand(command)
4102
4238
  }
@@ -5492,6 +5628,7 @@ public func podLibLint(useBundleExec: Bool = true,
5492
5628
  - swiftVersion: The SWIFT_VERSION that should be used to lint the spec. This takes precedence over a .swift-version file
5493
5629
  - skipImportValidation: Lint skips validating that the pod can be imported
5494
5630
  - skipTests: Lint skips building and running tests during validation
5631
+ - useJson: Convert the podspec to JSON before pushing it to the repo
5495
5632
  - verbose: Show more debugging information
5496
5633
  - useModularHeaders: Use modular headers option during validation
5497
5634
  - synchronous: If validation depends on other recently pushed pods, synchronize
@@ -5505,6 +5642,7 @@ public func podPush(useBundleExec: Bool = false,
5505
5642
  swiftVersion: String? = nil,
5506
5643
  skipImportValidation: Bool? = nil,
5507
5644
  skipTests: Bool? = nil,
5645
+ useJson: Bool? = nil,
5508
5646
  verbose: Bool = false,
5509
5647
  useModularHeaders: Bool? = nil,
5510
5648
  synchronous: Bool? = nil)
@@ -5518,6 +5656,7 @@ public func podPush(useBundleExec: Bool = false,
5518
5656
  RubyCommand.Argument(name: "swift_version", value: swiftVersion),
5519
5657
  RubyCommand.Argument(name: "skip_import_validation", value: skipImportValidation),
5520
5658
  RubyCommand.Argument(name: "skip_tests", value: skipTests),
5659
+ RubyCommand.Argument(name: "use_json", value: useJson),
5521
5660
  RubyCommand.Argument(name: "verbose", value: verbose),
5522
5661
  RubyCommand.Argument(name: "use_modular_headers", value: useModularHeaders),
5523
5662
  RubyCommand.Argument(name: "synchronous", value: synchronous)])
@@ -5571,6 +5710,7 @@ public func podioItem(clientId: String,
5571
5710
  - platform: The platform to use (optional)
5572
5711
  - defaultRuleLevel: The default rule level unless otherwise configured
5573
5712
  - includeInAppPurchases: Should check in-app purchases?
5713
+ - useLive: Should force check live app?
5574
5714
  - freeStuffInIap: using text indicating that your IAP is free
5575
5715
 
5576
5716
  - returns: true if precheck passes, else, false
@@ -5586,6 +5726,7 @@ public func precheck(apiKeyPath: Any? = precheckfile.apiKeyPath,
5586
5726
  platform: Any = precheckfile.platform,
5587
5727
  defaultRuleLevel: Any = precheckfile.defaultRuleLevel,
5588
5728
  includeInAppPurchases: Bool = precheckfile.includeInAppPurchases,
5729
+ useLive: Bool = precheckfile.useLive,
5589
5730
  freeStuffInIap: Any? = precheckfile.freeStuffInIap)
5590
5731
  {
5591
5732
  let command = RubyCommand(commandID: "", methodName: "precheck", className: nil, args: [RubyCommand.Argument(name: "api_key_path", value: apiKeyPath),
@@ -5597,6 +5738,7 @@ public func precheck(apiKeyPath: Any? = precheckfile.apiKeyPath,
5597
5738
  RubyCommand.Argument(name: "platform", value: platform),
5598
5739
  RubyCommand.Argument(name: "default_rule_level", value: defaultRuleLevel),
5599
5740
  RubyCommand.Argument(name: "include_in_app_purchases", value: includeInAppPurchases),
5741
+ RubyCommand.Argument(name: "use_live", value: useLive),
5600
5742
  RubyCommand.Argument(name: "free_stuff_in_iap", value: freeStuffInIap)])
5601
5743
  _ = runner.executeCommand(command)
5602
5744
  }
@@ -5741,6 +5883,7 @@ public func pushGitTags(force: Bool = false,
5741
5883
  - remote: The remote to push to
5742
5884
  - noVerify: Whether or not to use --no-verify
5743
5885
  - setUpstream: Whether or not to use --set-upstream
5886
+ - pushOptions: Array of strings to be passed using the '--push-option' option
5744
5887
 
5745
5888
  Lets you push your local commits to a remote git repo. Useful if you make local changes such as adding a version bump commit (using `commit_version_bump`) or a git tag (using 'add_git_tag') on a CI server, and you want to push those changes back to your canonical/main repo.
5746
5889
  If this is a new branch, use the `set_upstream` option to set the remote branch as upstream.
@@ -5752,7 +5895,8 @@ public func pushToGitRemote(localBranch: String? = nil,
5752
5895
  tags: Bool = true,
5753
5896
  remote: String = "origin",
5754
5897
  noVerify: Bool = false,
5755
- setUpstream: Bool = false)
5898
+ setUpstream: Bool = false,
5899
+ pushOptions: [String] = [])
5756
5900
  {
5757
5901
  let command = RubyCommand(commandID: "", methodName: "push_to_git_remote", className: nil, args: [RubyCommand.Argument(name: "local_branch", value: localBranch),
5758
5902
  RubyCommand.Argument(name: "remote_branch", value: remoteBranch),
@@ -5761,7 +5905,8 @@ public func pushToGitRemote(localBranch: String? = nil,
5761
5905
  RubyCommand.Argument(name: "tags", value: tags),
5762
5906
  RubyCommand.Argument(name: "remote", value: remote),
5763
5907
  RubyCommand.Argument(name: "no_verify", value: noVerify),
5764
- RubyCommand.Argument(name: "set_upstream", value: setUpstream)])
5908
+ RubyCommand.Argument(name: "set_upstream", value: setUpstream),
5909
+ RubyCommand.Argument(name: "push_options", value: pushOptions)])
5765
5910
  _ = runner.executeCommand(command)
5766
5911
  }
5767
5912
 
@@ -5860,7 +6005,7 @@ public func registerDevices(devices: [String: Any]? = nil,
5860
6005
  apiKey: [String: Any]? = nil,
5861
6006
  teamId: String? = nil,
5862
6007
  teamName: String? = nil,
5863
- username: String,
6008
+ username: String? = nil,
5864
6009
  platform: String = "ios")
5865
6010
  {
5866
6011
  let command = RubyCommand(commandID: "", methodName: "register_devices", className: nil, args: [RubyCommand.Argument(name: "devices", value: devices),
@@ -6091,11 +6236,14 @@ public func rubyVersion() {
6091
6236
  - slackIconUrl: Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
6092
6237
  - skipSlack: Don't publish to slack, even when an URL is given
6093
6238
  - slackOnlyOnFailure: Only post on Slack if the tests fail
6239
+ - slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
6094
6240
  - destination: Use only if you're a pro, use the other options instead
6095
6241
  - catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
6096
6242
  - customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
6097
6243
  - xcodebuildCommand: Allows for override of the default `xcodebuild` command
6098
6244
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
6245
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
6246
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
6099
6247
  - useSystemScm: Lets xcodebuild use system's scm configuration
6100
6248
  - failBuild: Should this step stop the build if the tests fail? Set this to false if you're using trainer
6101
6249
 
@@ -6159,11 +6307,14 @@ public func runTests(workspace: String? = nil,
6159
6307
  slackIconUrl: String = "https://fastlane.tools/assets/img/fastlane_icon.png",
6160
6308
  skipSlack: Bool = false,
6161
6309
  slackOnlyOnFailure: Bool = false,
6310
+ slackDefaultPayloads: [String]? = nil,
6162
6311
  destination: Any? = nil,
6163
6312
  catalystPlatform: String? = nil,
6164
6313
  customReportFileName: String? = nil,
6165
6314
  xcodebuildCommand: String = "env NSUnbufferedIO=YES xcodebuild",
6166
6315
  clonedSourcePackagesPath: String? = nil,
6316
+ skipPackageDependenciesResolution: Bool = false,
6317
+ disablePackageAutomaticUpdates: Bool = false,
6167
6318
  useSystemScm: Bool = false,
6168
6319
  failBuild: Bool = true)
6169
6320
  {
@@ -6225,11 +6376,14 @@ public func runTests(workspace: String? = nil,
6225
6376
  RubyCommand.Argument(name: "slack_icon_url", value: slackIconUrl),
6226
6377
  RubyCommand.Argument(name: "skip_slack", value: skipSlack),
6227
6378
  RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
6379
+ RubyCommand.Argument(name: "slack_default_payloads", value: slackDefaultPayloads),
6228
6380
  RubyCommand.Argument(name: "destination", value: destination),
6229
6381
  RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
6230
6382
  RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
6231
6383
  RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand),
6232
6384
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
6385
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
6386
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
6233
6387
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm),
6234
6388
  RubyCommand.Argument(name: "fail_build", value: failBuild)])
6235
6389
  _ = runner.executeCommand(command)
@@ -6373,11 +6527,14 @@ public func say(text: Any,
6373
6527
  - slackIconUrl: Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
6374
6528
  - skipSlack: Don't publish to slack, even when an URL is given
6375
6529
  - slackOnlyOnFailure: Only post on Slack if the tests fail
6530
+ - slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
6376
6531
  - destination: Use only if you're a pro, use the other options instead
6377
6532
  - catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
6378
6533
  - customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
6379
6534
  - xcodebuildCommand: Allows for override of the default `xcodebuild` command
6380
6535
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
6536
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
6537
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
6381
6538
  - useSystemScm: Lets xcodebuild use system's scm configuration
6382
6539
  - failBuild: Should this step stop the build if the tests fail? Set this to false if you're using trainer
6383
6540
 
@@ -6441,11 +6598,14 @@ public func scan(workspace: Any? = scanfile.workspace,
6441
6598
  slackIconUrl: Any = scanfile.slackIconUrl,
6442
6599
  skipSlack: Bool = scanfile.skipSlack,
6443
6600
  slackOnlyOnFailure: Bool = scanfile.slackOnlyOnFailure,
6601
+ slackDefaultPayloads: [String]? = scanfile.slackDefaultPayloads,
6444
6602
  destination: Any? = scanfile.destination,
6445
6603
  catalystPlatform: Any? = scanfile.catalystPlatform,
6446
6604
  customReportFileName: Any? = scanfile.customReportFileName,
6447
6605
  xcodebuildCommand: Any = scanfile.xcodebuildCommand,
6448
6606
  clonedSourcePackagesPath: Any? = scanfile.clonedSourcePackagesPath,
6607
+ skipPackageDependenciesResolution: Bool = scanfile.skipPackageDependenciesResolution,
6608
+ disablePackageAutomaticUpdates: Bool = scanfile.disablePackageAutomaticUpdates,
6449
6609
  useSystemScm: Bool = scanfile.useSystemScm,
6450
6610
  failBuild: Bool = scanfile.failBuild)
6451
6611
  {
@@ -6507,11 +6667,14 @@ public func scan(workspace: Any? = scanfile.workspace,
6507
6667
  RubyCommand.Argument(name: "slack_icon_url", value: slackIconUrl),
6508
6668
  RubyCommand.Argument(name: "skip_slack", value: skipSlack),
6509
6669
  RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
6670
+ RubyCommand.Argument(name: "slack_default_payloads", value: slackDefaultPayloads),
6510
6671
  RubyCommand.Argument(name: "destination", value: destination),
6511
6672
  RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
6512
6673
  RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
6513
6674
  RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand),
6514
6675
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
6676
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
6677
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
6515
6678
  RubyCommand.Argument(name: "use_system_scm", value: useSystemScm),
6516
6679
  RubyCommand.Argument(name: "fail_build", value: failBuild)])
6517
6680
  _ = runner.executeCommand(command)
@@ -6685,6 +6848,7 @@ public func setChangelog(apiKeyPath: String? = nil,
6685
6848
  - repositoryName: The path to your repo, e.g. 'fastlane/fastlane'
6686
6849
  - serverUrl: The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
6687
6850
  - apiToken: Personal API Token for GitHub - generate one at https://github.com/settings/tokens
6851
+ - apiBearer: Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
6688
6852
  - tagName: Pass in the tag name
6689
6853
  - name: Name of this release
6690
6854
  - commitish: Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually master)
@@ -6702,7 +6866,8 @@ public func setChangelog(apiKeyPath: String? = nil,
6702
6866
  */
6703
6867
  @discardableResult public func setGithubRelease(repositoryName: String,
6704
6868
  serverUrl: String = "https://api.github.com",
6705
- apiToken: String,
6869
+ apiToken: String? = nil,
6870
+ apiBearer: String? = nil,
6706
6871
  tagName: String,
6707
6872
  name: String? = nil,
6708
6873
  commitish: String? = nil,
@@ -6714,6 +6879,7 @@ public func setChangelog(apiKeyPath: String? = nil,
6714
6879
  let command = RubyCommand(commandID: "", methodName: "set_github_release", className: nil, args: [RubyCommand.Argument(name: "repository_name", value: repositoryName),
6715
6880
  RubyCommand.Argument(name: "server_url", value: serverUrl),
6716
6881
  RubyCommand.Argument(name: "api_token", value: apiToken),
6882
+ RubyCommand.Argument(name: "api_bearer", value: apiBearer),
6717
6883
  RubyCommand.Argument(name: "tag_name", value: tagName),
6718
6884
  RubyCommand.Argument(name: "name", value: name),
6719
6885
  RubyCommand.Argument(name: "commitish", value: commitish),
@@ -7004,7 +7170,7 @@ public func skipDocs() {
7004
7170
  - username: Overrides the webhook's username property if use_webhook_configured_username_and_icon is false
7005
7171
  - iconUrl: Overrides the webhook's image property if use_webhook_configured_username_and_icon is false
7006
7172
  - payload: Add additional information to this post. payload must be a hash containing any key with any value
7007
- - defaultPayloads: Remove some of the default payloads. More information about the available payloads on GitHub
7173
+ - defaultPayloads: Specifies default payloads to include. Pass an empty array to suppress all the default payloads
7008
7174
  - attachmentProperties: Merge additional properties in the slack attachment, see https://api.slack.com/docs/attachments
7009
7175
  - success: Was this build successful? (true/false)
7010
7176
  - failOnError: Should an error sending the slack notification cause a failure? (true/false)
@@ -7020,7 +7186,7 @@ public func slack(message: String? = nil,
7020
7186
  username: String = "fastlane",
7021
7187
  iconUrl: String = "https://fastlane.tools/assets/img/fastlane_icon.png",
7022
7188
  payload: [String: Any] = [:],
7023
- defaultPayloads: [String]? = nil,
7189
+ defaultPayloads: [String] = ["lane", "test_result", "git_branch", "git_author", "last_git_commit", "last_git_commit_hash"],
7024
7190
  attachmentProperties: [String: Any] = [:],
7025
7191
  success: Bool = true,
7026
7192
  failOnError: Bool = true,
@@ -7206,7 +7372,7 @@ public func slather(buildDirectory: String? = nil,
7206
7372
  - reinstallApp: Enabling this option will automatically uninstall the application before running it
7207
7373
  - eraseSimulator: Enabling this option will automatically erase the simulator before running the application
7208
7374
  - headless: Enabling this option will prevent displaying the simulator window
7209
- - overrideStatusBar: Enabling this option wil automatically override the status bar to show 9:41 AM, full battery, and full reception
7375
+ - overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
7210
7376
  - localizeSimulator: Enabling this option will configure the Simulator's system language
7211
7377
  - darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
7212
7378
  - appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
@@ -7229,11 +7395,14 @@ public func slather(buildDirectory: String? = nil,
7229
7395
  - concurrentSimulators: Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
7230
7396
  - disableSlideToType: Disable the simulator from showing the 'Slide to type' prompt
7231
7397
  - clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
7398
+ - skipPackageDependenciesResolution: Skips resolution of Swift Package Manager dependencies
7399
+ - disablePackageAutomaticUpdates: Prevents packages from automatically being resolved to versions other than those recorded in the `Package.resolved` file
7232
7400
  - testplan: The testplan associated with the scheme that should be used for testing
7233
7401
  - onlyTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to run
7234
7402
  - skipTesting: Array of strings matching Test Bundle/Test Suite/Test Cases to skip
7235
7403
  - disableXcpretty: Disable xcpretty formatting of build
7236
7404
  - suppressXcodeOutput: Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
7405
+ - useSystemScm: Lets xcodebuild use system's scm configuration
7237
7406
  */
7238
7407
  public func snapshot(workspace: Any? = snapshotfile.workspace,
7239
7408
  project: Any? = snapshotfile.project,
@@ -7274,11 +7443,14 @@ public func snapshot(workspace: Any? = snapshotfile.workspace,
7274
7443
  concurrentSimulators: Bool = snapshotfile.concurrentSimulators,
7275
7444
  disableSlideToType: Bool = snapshotfile.disableSlideToType,
7276
7445
  clonedSourcePackagesPath: Any? = snapshotfile.clonedSourcePackagesPath,
7446
+ skipPackageDependenciesResolution: Bool = snapshotfile.skipPackageDependenciesResolution,
7447
+ disablePackageAutomaticUpdates: Bool = snapshotfile.disablePackageAutomaticUpdates,
7277
7448
  testplan: Any? = snapshotfile.testplan,
7278
7449
  onlyTesting: Any? = snapshotfile.onlyTesting,
7279
7450
  skipTesting: Any? = snapshotfile.skipTesting,
7280
7451
  disableXcpretty: Bool? = snapshotfile.disableXcpretty,
7281
- suppressXcodeOutput: Bool? = snapshotfile.suppressXcodeOutput)
7452
+ suppressXcodeOutput: Bool? = snapshotfile.suppressXcodeOutput,
7453
+ useSystemScm: Bool = snapshotfile.useSystemScm)
7282
7454
  {
7283
7455
  let command = RubyCommand(commandID: "", methodName: "snapshot", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
7284
7456
  RubyCommand.Argument(name: "project", value: project),
@@ -7319,11 +7491,14 @@ public func snapshot(workspace: Any? = snapshotfile.workspace,
7319
7491
  RubyCommand.Argument(name: "concurrent_simulators", value: concurrentSimulators),
7320
7492
  RubyCommand.Argument(name: "disable_slide_to_type", value: disableSlideToType),
7321
7493
  RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
7494
+ RubyCommand.Argument(name: "skip_package_dependencies_resolution", value: skipPackageDependenciesResolution),
7495
+ RubyCommand.Argument(name: "disable_package_automatic_updates", value: disablePackageAutomaticUpdates),
7322
7496
  RubyCommand.Argument(name: "testplan", value: testplan),
7323
7497
  RubyCommand.Argument(name: "only_testing", value: onlyTesting),
7324
7498
  RubyCommand.Argument(name: "skip_testing", value: skipTesting),
7325
7499
  RubyCommand.Argument(name: "disable_xcpretty", value: disableXcpretty),
7326
- RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput)])
7500
+ RubyCommand.Argument(name: "suppress_xcode_output", value: suppressXcodeOutput),
7501
+ RubyCommand.Argument(name: "use_system_scm", value: useSystemScm)])
7327
7502
  _ = runner.executeCommand(command)
7328
7503
  }
7329
7504
 
@@ -7466,7 +7641,7 @@ public func splunkmint(dsym: String? = nil,
7466
7641
 
7467
7642
  - parameters:
7468
7643
  - command: The swift command (one of: build, test, clean, reset, update, resolve, generate-xcodeproj, init)
7469
- - enableCodeCoverage: Enables code coverage for the generated Xcode project when using the generate-xcodeproj command
7644
+ - enableCodeCoverage: Enables code coverage for the generated Xcode project when using the 'generate-xcodeproj' and the 'test' command
7470
7645
  - buildPath: Specify build/cache directory [default: ./.build]
7471
7646
  - packagePath: Change working directory before any other operation
7472
7647
  - xcconfig: Use xcconfig file to override swift package generate-xcodeproj defaults
@@ -7660,7 +7835,7 @@ public func supply(packageName: String,
7660
7835
  - files: List of files to process
7661
7836
  - ignoreExitStatus: Ignore the exit status of the SwiftLint command, so that serious violations don't fail the build (true/false)
7662
7837
  - raiseIfSwiftlintError: Raises an error if swiftlint fails, so you can fail CI/CD jobs if necessary (true/false)
7663
- - reporter: Choose output reporter. Available: xcode, json, csv, checkstyle, junit, html, emoji, sonarqube, markdown, github-actions-logging
7838
+ - reporter: Choose output reporter. Available: xcode, json, csv, checkstyle, codeclimate, junit, html, emoji, sonarqube, markdown, github-actions-logging
7664
7839
  - quiet: Don't print status logs like 'Linting <file>' & 'Done linting'
7665
7840
  - executable: Path to the `swiftlint` executable on your machine
7666
7841
  - format: Format code when mode is :autocorrect
@@ -8163,7 +8338,7 @@ public func updateAppIdentifier(xcodeproj: String,
8163
8338
  - useAutomaticSigning: Defines if project should use automatic signing
8164
8339
  - teamId: Team ID, is used when upgrading project
8165
8340
  - targets: Specify targets you want to toggle the signing mech. (default to all targets)
8166
- - buildConfigurations: Specify build_configurations you want to toggle the signing mech. (default to all targets)
8341
+ - buildConfigurations: Specify build_configurations you want to toggle the signing mech. (default to all configurations)
8167
8342
  - codeSignIdentity: Code signing identity type (iPhone Developer, iPhone Distribution)
8168
8343
  - profileName: Provisioning profile name to use for code signing
8169
8344
  - profileUuid: Provisioning profile UUID to use for code signing
@@ -9470,4 +9645,4 @@ public let snapshotfile = Snapshotfile()
9470
9645
 
9471
9646
  // Please don't remove the lines below
9472
9647
  // They are used to detect outdated files
9473
- // FastlaneRunnerAPIVersion [0.9.106]
9648
+ // FastlaneRunnerAPIVersion [0.9.111]