fastlane 2.186.0 → 2.190.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +86 -86
  3. data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +1 -1
  4. data/fastlane/lib/fastlane/actions/appledoc.rb +45 -45
  5. data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +1 -2
  6. data/fastlane/lib/fastlane/actions/bundle_install.rb +13 -1
  7. data/fastlane/lib/fastlane/actions/clean_cocoapods_cache.rb +25 -1
  8. data/fastlane/lib/fastlane/actions/create_keychain.rb +5 -2
  9. data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
  10. data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +27 -28
  11. data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +2 -2
  12. data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
  13. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +2 -2
  14. data/fastlane/lib/fastlane/actions/gradle.rb +1 -1
  15. data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +3 -4
  16. data/fastlane/lib/fastlane/actions/lcov.rb +0 -4
  17. data/fastlane/lib/fastlane/actions/mailgun.rb +21 -27
  18. data/fastlane/lib/fastlane/actions/make_changelog_from_jenkins.rb +1 -1
  19. data/fastlane/lib/fastlane/actions/modify_services.rb +59 -24
  20. data/fastlane/lib/fastlane/actions/nexus_upload.rb +2 -2
  21. data/fastlane/lib/fastlane/actions/notarize.rb +1 -4
  22. data/fastlane/lib/fastlane/actions/number_of_commits.rb +1 -1
  23. data/fastlane/lib/fastlane/actions/oclint.rb +15 -14
  24. data/fastlane/lib/fastlane/actions/pod_push.rb +0 -2
  25. data/fastlane/lib/fastlane/actions/podio_item.rb +0 -7
  26. data/fastlane/lib/fastlane/actions/prompt.rb +3 -4
  27. data/fastlane/lib/fastlane/actions/push_git_tags.rb +1 -1
  28. data/fastlane/lib/fastlane/actions/puts.rb +1 -2
  29. data/fastlane/lib/fastlane/actions/register_devices.rb +0 -1
  30. data/fastlane/lib/fastlane/actions/reset_git_repo.rb +5 -8
  31. data/fastlane/lib/fastlane/actions/reset_simulator_contents.rb +0 -2
  32. data/fastlane/lib/fastlane/actions/resign.rb +2 -9
  33. data/fastlane/lib/fastlane/actions/rsync.rb +3 -6
  34. data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
  35. data/fastlane/lib/fastlane/actions/s3.rb +1 -1
  36. data/fastlane/lib/fastlane/actions/say.rb +2 -3
  37. data/fastlane/lib/fastlane/actions/scp.rb +4 -10
  38. data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
  39. data/fastlane/lib/fastlane/actions/set_changelog.rb +1 -1
  40. data/fastlane/lib/fastlane/actions/set_github_release.rb +2 -8
  41. data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +1 -1
  42. data/fastlane/lib/fastlane/actions/set_pod_key.rb +3 -4
  43. data/fastlane/lib/fastlane/actions/setup_ci.rb +1 -2
  44. data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
  45. data/fastlane/lib/fastlane/actions/setup_jenkins.rb +7 -12
  46. data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
  47. data/fastlane/lib/fastlane/actions/sh.rb +2 -4
  48. data/fastlane/lib/fastlane/actions/slack.rb +6 -8
  49. data/fastlane/lib/fastlane/actions/slather.rb +3 -19
  50. data/fastlane/lib/fastlane/actions/sonar.rb +12 -19
  51. data/fastlane/lib/fastlane/actions/sourcedocs.rb +62 -98
  52. data/fastlane/lib/fastlane/actions/splunkmint.rb +2 -2
  53. data/fastlane/lib/fastlane/actions/spm.rb +3 -3
  54. data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
  55. data/fastlane/lib/fastlane/actions/testfairy.rb +0 -1
  56. data/fastlane/lib/fastlane/actions/tryouts.rb +2 -3
  57. data/fastlane/lib/fastlane/actions/twitter.rb +0 -5
  58. data/fastlane/lib/fastlane/actions/unlock_keychain.rb +3 -3
  59. data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +1 -4
  60. data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +8 -15
  61. data/fastlane/lib/fastlane/actions/update_fastlane.rb +2 -2
  62. data/fastlane/lib/fastlane/actions/update_icloud_container_identifiers.rb +1 -4
  63. data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
  64. data/fastlane/lib/fastlane/actions/update_keychain_access_groups.rb +1 -4
  65. data/fastlane/lib/fastlane/actions/update_plist.rb +1 -1
  66. data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +2 -2
  67. data/fastlane/lib/fastlane/actions/update_urban_airship_configuration.rb +0 -1
  68. data/fastlane/lib/fastlane/actions/update_url_schemes.rb +15 -26
  69. data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +1 -2
  70. data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +3 -10
  71. data/fastlane/lib/fastlane/actions/validate_play_store_json_key.rb +40 -44
  72. data/fastlane/lib/fastlane/actions/version_get_podspec.rb +1 -2
  73. data/fastlane/lib/fastlane/actions/xcode_server_get_assets.rb +3 -3
  74. data/fastlane/lib/fastlane/actions/zip.rb +86 -22
  75. data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
  76. data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +1 -1
  77. data/fastlane/lib/fastlane/plugins/template/.circleci/config.yml +1 -1
  78. data/fastlane/lib/fastlane/plugins/template/.github/workflows/test.yml +1 -1
  79. data/fastlane/lib/fastlane/version.rb +1 -1
  80. data/fastlane/swift/Deliverfile.swift +1 -1
  81. data/fastlane/swift/DeliverfileProtocol.swift +1 -1
  82. data/fastlane/swift/Fastlane.swift +152 -102
  83. data/fastlane/swift/Gymfile.swift +1 -1
  84. data/fastlane/swift/GymfileProtocol.swift +1 -1
  85. data/fastlane/swift/Matchfile.swift +1 -1
  86. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  87. data/fastlane/swift/Precheckfile.swift +1 -1
  88. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  89. data/fastlane/swift/Scanfile.swift +1 -1
  90. data/fastlane/swift/ScanfileProtocol.swift +5 -1
  91. data/fastlane/swift/Screengrabfile.swift +1 -1
  92. data/fastlane/swift/ScreengrabfileProtocol.swift +4 -4
  93. data/fastlane/swift/Snapshotfile.swift +1 -1
  94. data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
  95. data/fastlane/swift/formatting/Brewfile.lock.json +19 -11
  96. data/fastlane_core/lib/fastlane_core/keychain_importer.rb +11 -4
  97. data/fastlane_core/lib/fastlane_core/ui/disable_colors.rb +1 -0
  98. data/pilot/lib/pilot.rb +0 -1
  99. data/precheck/lib/precheck/module.rb +2 -0
  100. data/precheck/lib/precheck/options.rb +3 -3
  101. data/produce/lib/produce/commands_generator.rb +99 -27
  102. data/produce/lib/produce/developer_center.rb +42 -4
  103. data/produce/lib/produce/options.rb +1 -1
  104. data/produce/lib/produce/service.rb +270 -179
  105. data/scan/lib/scan/detect_values.rb +22 -13
  106. data/scan/lib/scan/module.rb +1 -0
  107. data/scan/lib/scan/options.rb +12 -1
  108. data/scan/lib/scan/test_command_generator.rb +29 -6
  109. data/scan/lib/scan/xcpretty_reporter_options_generator.rb +1 -1
  110. data/screengrab/lib/screengrab/android_environment.rb +2 -52
  111. data/screengrab/lib/screengrab/dependency_checker.rb +0 -20
  112. data/screengrab/lib/screengrab/options.rb +5 -2
  113. data/screengrab/lib/screengrab/runner.rb +109 -107
  114. data/sigh/lib/sigh/options.rb +2 -1
  115. data/snapshot/lib/assets/SnapfileTemplate +2 -1
  116. data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
  117. data/snapshot/lib/assets/SnapshotHelper.swift +14 -10
  118. data/snapshot/lib/snapshot/reports_generator.rb +3 -1
  119. data/snapshot/lib/snapshot/test_command_generator.rb +16 -2
  120. data/spaceship/lib/spaceship/client.rb +19 -3
  121. data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +8 -0
  122. data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +58 -17
  123. data/spaceship/lib/spaceship/connect_api/models/user.rb +17 -3
  124. data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +26 -5
  125. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +41 -1
  126. data/spaceship/lib/spaceship/connect_api/testflight/client.rb +3 -0
  127. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +39 -0
  128. data/spaceship/lib/spaceship/connect_api/token.rb +2 -1
  129. data/spaceship/lib/spaceship/connect_api/tunes/client.rb +3 -0
  130. data/spaceship/lib/spaceship/connect_api/users/client.rb +3 -0
  131. data/spaceship/lib/spaceship/connect_api/users/users.rb +24 -2
  132. data/spaceship/lib/spaceship/tunes/tunes_client.rb +3 -0
  133. data/supply/lib/supply/client.rb +7 -1
  134. data/supply/lib/supply/options.rb +5 -0
  135. metadata +25 -31
  136. data/fastlane/lib/fastlane/.erb_template_helper.rb.swp +0 -0
  137. data/fastlane/lib/fastlane/helper/.git_helper.rb.swp +0 -0
  138. data/gym/lib/gym/generators/.package_command_generator_xcode7.rb.swp +0 -0
  139. data/pilot/lib/pilot/features.rb +0 -0
  140. data/spaceship/lib/spaceship/.DS_Store +0 -0
  141. data/spaceship/lib/spaceship/connect_api/models/.app_store_version_submission.rb.swp +0 -0
@@ -17,4 +17,4 @@ public class Gymfile: GymfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -196,4 +196,4 @@ public extension GymfileProtocol {
196
196
 
197
197
  // Please don't remove the lines below
198
198
  // They are used to detect outdated files
199
- // FastlaneRunnerAPIVersion [0.9.77]
199
+ // FastlaneRunnerAPIVersion [0.9.81]
@@ -17,4 +17,4 @@ public class Matchfile: MatchfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -184,4 +184,4 @@ public extension MatchfileProtocol {
184
184
 
185
185
  // Please don't remove the lines below
186
186
  // They are used to detect outdated files
187
- // FastlaneRunnerAPIVersion [0.9.71]
187
+ // FastlaneRunnerAPIVersion [0.9.75]
@@ -17,4 +17,4 @@ public class Precheckfile: PrecheckfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -52,4 +52,4 @@ public extension PrecheckfileProtocol {
52
52
 
53
53
  // Please don't remove the lines below
54
54
  // They are used to detect outdated files
55
- // FastlaneRunnerAPIVersion [0.9.70]
55
+ // FastlaneRunnerAPIVersion [0.9.74]
@@ -17,4 +17,4 @@ public class Scanfile: ScanfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -8,6 +8,9 @@ public protocol ScanfileProtocol: class {
8
8
  /// Path to the project file
9
9
  var project: String? { get }
10
10
 
11
+ /// Path to the Swift Package
12
+ var packagePath: String? { get }
13
+
11
14
  /// The project's scheme. Make sure it's marked as `Shared`
12
15
  var scheme: String? { get }
13
16
 
@@ -219,6 +222,7 @@ public protocol ScanfileProtocol: class {
219
222
  public extension ScanfileProtocol {
220
223
  var workspace: String? { return nil }
221
224
  var project: String? { return nil }
225
+ var packagePath: String? { return nil }
222
226
  var scheme: String? { return nil }
223
227
  var device: String? { return nil }
224
228
  var devices: [String]? { return nil }
@@ -292,4 +296,4 @@ public extension ScanfileProtocol {
292
296
 
293
297
  // Please don't remove the lines below
294
298
  // They are used to detect outdated files
295
- // FastlaneRunnerAPIVersion [0.9.82]
299
+ // FastlaneRunnerAPIVersion [0.9.86]
@@ -17,4 +17,4 @@ public class Screengrabfile: ScreengrabfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -5,7 +5,7 @@ public protocol ScreengrabfileProtocol: class {
5
5
  /// Path to the root of your Android SDK installation, e.g. ~/tools/android-sdk-macosx
6
6
  var androidHome: String? { get }
7
7
 
8
- /// The Android build tools version to use, e.g. '23.0.2'
8
+ /// **DEPRECATED!** The Android build tools version to use, e.g. '23.0.2'
9
9
  var buildToolsVersion: String? { get }
10
10
 
11
11
  /// A list of locales which should be used
@@ -38,10 +38,10 @@ public protocol ScreengrabfileProtocol: class {
38
38
  /// The fully qualified class name of your test instrumentation runner
39
39
  var testInstrumentationRunner: String { get }
40
40
 
41
- /// Return the device to this locale after running tests
41
+ /// **DEPRECATED!** Return the device to this locale after running tests
42
42
  var endingLocale: String { get }
43
43
 
44
- /// Restarts the adb daemon using `adb root` to allow access to screenshots directories on device. Use if getting 'Permission denied' errors
44
+ /// **DEPRECATED!** Restarts the adb daemon using `adb root` to allow access to screenshots directories on device. Use if getting 'Permission denied' errors
45
45
  var useAdbRoot: Bool { get }
46
46
 
47
47
  /// The path to the APK for the app under test
@@ -96,4 +96,4 @@ public extension ScreengrabfileProtocol {
96
96
 
97
97
  // Please don't remove the lines below
98
98
  // They are used to detect outdated files
99
- // FastlaneRunnerAPIVersion [0.9.72]
99
+ // FastlaneRunnerAPIVersion [0.9.76]
@@ -17,4 +17,4 @@ public class Snapshotfile: SnapshotfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.186.0
20
+ // Generated with fastlane 2.190.0
@@ -200,4 +200,4 @@ public extension SnapshotfileProtocol {
200
200
 
201
201
  // Please don't remove the lines below
202
202
  // They are used to detect outdated files
203
- // FastlaneRunnerAPIVersion [0.9.66]
203
+ // FastlaneRunnerAPIVersion [0.9.70]
@@ -2,30 +2,30 @@
2
2
  "entries": {
3
3
  "brew": {
4
4
  "swiftformat": {
5
- "version": "0.48.5",
5
+ "version": "0.48.11",
6
6
  "bottle": {
7
7
  "rebuild": 0,
8
8
  "root_url": "https://ghcr.io/v2/homebrew/core",
9
9
  "files": {
10
10
  "arm64_big_sur": {
11
11
  "cellar": ":any_skip_relocation",
12
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:7619ac8360774b9854b838912b43b8d7be9dfd39a2cf4bdd24afbc2007cd6bd8",
13
- "sha256": "7619ac8360774b9854b838912b43b8d7be9dfd39a2cf4bdd24afbc2007cd6bd8"
12
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:e0a851cfa2ff5d04f0fc98a9e624d1411f1b5b1e55e3cbc0901f4913c02e716a",
13
+ "sha256": "e0a851cfa2ff5d04f0fc98a9e624d1411f1b5b1e55e3cbc0901f4913c02e716a"
14
14
  },
15
15
  "big_sur": {
16
16
  "cellar": ":any_skip_relocation",
17
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:c50e89c6fd21e817cdf5f1b1d0a51c25553e0d5bcb396fe18e6404f4ad31c2b8",
18
- "sha256": "c50e89c6fd21e817cdf5f1b1d0a51c25553e0d5bcb396fe18e6404f4ad31c2b8"
17
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:a5327283fe32b2ef2c6f264e14c966a9a60cb291415d3d05ed659c92a93c4987",
18
+ "sha256": "a5327283fe32b2ef2c6f264e14c966a9a60cb291415d3d05ed659c92a93c4987"
19
19
  },
20
20
  "catalina": {
21
21
  "cellar": ":any_skip_relocation",
22
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:41d5ecd73bba3c90c8770d33dc86fb0a07f9fb23034d1b07517e7dd9431e8280",
23
- "sha256": "41d5ecd73bba3c90c8770d33dc86fb0a07f9fb23034d1b07517e7dd9431e8280"
22
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:ba95e49ecc71bb19734698dee565e3b0ced6470729206cb434675cfa051f2755",
23
+ "sha256": "ba95e49ecc71bb19734698dee565e3b0ced6470729206cb434675cfa051f2755"
24
24
  },
25
25
  "mojave": {
26
26
  "cellar": ":any_skip_relocation",
27
- "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:369cb9a0eca80fc8fd0ae5a1dcf6dad9aea366d3325e196276b05b9abb392357",
28
- "sha256": "369cb9a0eca80fc8fd0ae5a1dcf6dad9aea366d3325e196276b05b9abb392357"
27
+ "url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:c7e00eae9d46dddf040999f0f2832d08110f093c7a403aaaaaa18d8830213967",
28
+ "sha256": "c7e00eae9d46dddf040999f0f2832d08110f093c7a403aaaaaa18d8830213967"
29
29
  }
30
30
  }
31
31
  }
@@ -35,9 +35,9 @@
35
35
  "system": {
36
36
  "macos": {
37
37
  "catalina": {
38
- "HOMEBREW_VERSION": "3.2.0-18-g4f33c2c",
38
+ "HOMEBREW_VERSION": "3.2.0-77-gd305f72",
39
39
  "HOMEBREW_PREFIX": "/usr/local",
40
- "Homebrew/homebrew-core": "b7aeea4e146fc17d70862def113e90ee3153d514",
40
+ "Homebrew/homebrew-core": "0b13b342053d414d1b241c2c7a446b74d79cc90e",
41
41
  "CLT": "11.0.0.33.12",
42
42
  "Xcode": "12.4",
43
43
  "macOS": "10.15.7"
@@ -49,6 +49,14 @@
49
49
  "CLT": "11.0.28.3",
50
50
  "Xcode": "12.0",
51
51
  "macOS": "11.0"
52
+ },
53
+ "monterey": {
54
+ "HOMEBREW_VERSION": "3.2.5-35-g4b6b3c2",
55
+ "HOMEBREW_PREFIX": "/usr/local",
56
+ "Homebrew/homebrew-core": "8482b78bceae40d19a8fc427b9935ce8f177b9b6",
57
+ "CLT": "13.0.0.0.1.1626155413",
58
+ "Xcode": "13.0",
59
+ "macOS": "12.0"
52
60
  }
53
61
  }
54
62
  }
@@ -7,14 +7,17 @@ module FastlaneCore
7
7
  def self.import_file(path, keychain_path, keychain_password: nil, certificate_password: "", skip_set_partition_list: false, output: FastlaneCore::Globals.verbose?)
8
8
  UI.user_error!("Could not find file '#{path}'") unless File.exist?(path)
9
9
 
10
+ password_part = " -P #{certificate_password.shellescape}"
11
+
10
12
  command = "security import #{path.shellescape} -k '#{keychain_path.shellescape}'"
11
- command << " -P #{certificate_password.shellescape}"
13
+ command << password_part
12
14
  command << " -T /usr/bin/codesign" # to not be asked for permission when running a tool like `gym` (before Sierra)
13
15
  command << " -T /usr/bin/security"
14
16
  command << " -T /usr/bin/productbuild" # to not be asked for permission when using an installer cert for macOS
15
17
  command << " 1> /dev/null" unless output
16
18
 
17
- UI.command(command) if output
19
+ sensitive_command = command.gsub(password_part, " -P ********")
20
+ UI.command(sensitive_command) if output
18
21
  Open3.popen3(command) do |stdin, stdout, stderr, thrd|
19
22
  UI.command_output(stdout.read.to_s) if output
20
23
 
@@ -38,17 +41,21 @@ module FastlaneCore
38
41
  # When security supports partition lists, also add the partition IDs
39
42
  # See https://openradar.appspot.com/28524119
40
43
  if Helper.backticks('security -h | grep set-key-partition-list', print: false).length > 0
44
+ password_part = " -k #{keychain_password.to_s.shellescape}"
45
+
41
46
  command = "security set-key-partition-list"
42
47
  command << " -S apple-tool:,apple:,codesign:"
43
48
  command << " -s" # This is a needed in Catalina to prevent "security: SecKeychainItemCopyAccess: A missing value was detected."
44
- command << " -k #{keychain_password.to_s.shellescape}"
49
+ command << password_part
45
50
  command << " #{keychain_path.shellescape}"
46
51
  command << " 1> /dev/null" # always disable stdout. This can be very verbose, and leak potentially sensitive info
47
52
 
48
53
  # Showing loading indicator as this can take some time if a lot of keys installed
49
54
  Helper.show_loading_indicator("Setting key partition list... (this can take a minute if there are a lot of keys installed)")
50
55
 
51
- UI.command(command) if output
56
+ # Strip keychain password from command output
57
+ sensitive_command = command.gsub(password_part, " -k ********")
58
+ UI.command(sensitive_command) if output
52
59
  Open3.popen3(command) do |stdin, stdout, stderr, thrd|
53
60
  unless thrd.value.success?
54
61
  err = stderr.read.to_s.strip
@@ -10,6 +10,7 @@ class String
10
10
  end
11
11
  end
12
12
  Colored::EXTRAS.keys.each do |extra|
13
+ next if extra == 'clear'
13
14
  define_method(extra) do
14
15
  self # do nothing with the string, but return it
15
16
  end
data/pilot/lib/pilot.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'pilot/features'
2
1
  require "pilot/options"
3
2
  require "pilot/manager"
4
3
  require "pilot/build_manager"
@@ -1,5 +1,6 @@
1
1
  require 'fastlane_core/helper'
2
2
  require 'fastlane_core/ui/ui'
3
+ require 'fastlane/boolean'
3
4
 
4
5
  module Precheck
5
6
  # Use this to just setup the configuration attribute and set it later somewhere else
@@ -13,6 +14,7 @@ module Precheck
13
14
 
14
15
  Helper = FastlaneCore::Helper # you gotta love Ruby: Helper.* should use the Helper class contained in FastlaneCore
15
16
  UI = FastlaneCore::UI
17
+ Boolean = Fastlane::Boolean
16
18
  ROOT = Pathname.new(File.expand_path('../../..', __FILE__))
17
19
 
18
20
  ENV['APP_IDENTIFIER'] ||= ENV["PRECHECK_APP_IDENTIFIER"]
@@ -90,19 +90,19 @@ module Precheck
90
90
  short_option: "-r",
91
91
  env_name: "PRECHECK_DEFAULT_RULE_LEVEL",
92
92
  description: "The default rule level unless otherwise configured",
93
- is_string: false,
93
+ type: Symbol,
94
94
  default_value: RULE_LEVELS[:error]),
95
95
  FastlaneCore::ConfigItem.new(key: :include_in_app_purchases,
96
96
  short_option: "-i",
97
97
  env_name: "PRECHECK_INCLUDE_IN_APP_PURCHASES",
98
98
  description: "Should check in-app purchases?",
99
- is_string: false,
99
+ type: Boolean,
100
100
  optional: true,
101
101
  default_value: true),
102
102
  FastlaneCore::ConfigItem.new(key: :use_live,
103
103
  env_name: "PRECHECK_USE_LIVE",
104
104
  description: "Should force check live app?",
105
- is_string: false,
105
+ type: Boolean,
106
106
  default_value: false)
107
107
  ] + rules
108
108
  end
@@ -47,29 +47,65 @@ module Produce
47
47
  c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
48
48
  c.example('Enable HealthKit, HomeKit and Passbook', 'fastlane produce enable_services -a com.example.app --healthkit --homekit --passbook')
49
49
 
50
- c.option('--access-wifi', 'Enable Access WiFi')
51
- c.option('--app-group', 'Enable App Groups')
50
+ c.option('--access-wifi', 'Enable Access Wifi')
51
+ c.option('--app-attest', 'Enable App Attest')
52
+ c.option('--app-group', 'Enable App Group')
52
53
  c.option('--apple-pay', 'Enable Apple Pay')
53
- c.option('--auto-fill-credential', 'Enable AutoFill Credential')
54
54
  c.option('--associated-domains', 'Enable Associated Domains')
55
+ c.option('--auto-fill-credential', 'Enable Auto Fill Credential')
56
+ c.option('--class-kit', 'Enable Class Kit')
57
+ c.option('--icloud STRING', String, 'Enable iCloud, suitable values are "xcode5_compatible" and "xcode6_compatible"')
58
+ c.option('--custom-network-protocol', 'Enable Custom Network Protocol')
55
59
  c.option('--data-protection STRING', String, 'Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"')
56
- c.option('--game-center', 'Enable Game Center')
57
- c.option('--healthkit', 'Enable HealthKit')
58
- c.option('--homekit', 'Enable HomeKit')
60
+ c.option('--family-controls', 'Enable Family Controls')
61
+ c.option('--file-provider-testing-mode', 'Enable File Provider Testing Mode')
62
+ c.option('--fonts', 'Enable Fonts')
63
+ c.option('--extended-virtual-address-space', 'Enable Extended Virtual Address Space')
64
+ c.option('--game-center STRING', String, 'Enable Game Center, suitable values are "ios" and "macos"')
65
+ c.option('--health-kit', 'Enable Health Kit')
66
+ c.option('--hls-interstitial-preview', 'Enable Hls Interstitial Preview')
67
+ c.option('--home-kit', 'Enable Home Kit')
59
68
  c.option('--hotspot', 'Enable Hotspot')
60
- c.option('--icloud STRING', String, 'Enable iCloud, suitable values are "legacy" and "cloudkit"')
61
- c.option('--in-app-purchase', 'Enable In-App Purchase')
62
- c.option('--inter-app-audio', 'Enable Inter-App-Audio')
69
+ c.option('--in-app-purchase', 'Enable In App Purchase')
70
+ c.option('--inter-app-audio', 'Enable Inter App Audio')
71
+ c.option('--low-latency-hls', 'Enable Low Latency Hls')
72
+ c.option('--managed-associated-domains', 'Enable Managed Associated Domains')
73
+ c.option('--maps', 'Enable Maps')
63
74
  c.option('--multipath', 'Enable Multipath')
64
- c.option('--network-extension', 'Enable Network Extensions')
75
+ c.option('--network-extension', 'Enable Network Extension')
65
76
  c.option('--nfc-tag-reading', 'Enable NFC Tag Reading')
66
77
  c.option('--personal-vpn', 'Enable Personal VPN')
67
78
  c.option('--passbook', 'Enable Passbook (deprecated)')
68
- c.option('--push-notification', 'Enable Push notification (only enables the service, does not configure certificates)')
69
- c.option('--sirikit', 'Enable SiriKit')
70
- c.option('--vpn-conf', 'Enable VPN Configuration (deprecated)')
79
+ c.option('--push-notification', 'Enable Push Notification')
80
+ c.option('--sign-in-with-apple', 'Enable Sign In With Apple')
81
+ c.option('--siri-kit', 'Enable Siri Kit')
82
+ c.option('--system-extension', 'Enable System Extension')
83
+ c.option('--user-management', 'Enable User Management')
84
+ c.option('--vpn-configuration', 'Enable Vpn Configuration (deprecated)')
71
85
  c.option('--wallet', 'Enable Wallet')
72
- c.option('--wireless-conf', 'Enable Wireless Accessory Configuration')
86
+ c.option('--wireless-accessory', 'Enable Wireless Accessory')
87
+ c.option('--car-play-audio-app', 'Enable Car Play Audio App')
88
+ c.option('--car-play-messaging-app', 'Enable Car Play Messaging App')
89
+ c.option('--car-play-navigation-app', 'Enable Car Play Navigation App')
90
+ c.option('--car-play-voip-calling-app', 'Enable Car Play Voip Calling App')
91
+ c.option('--critical-alerts', 'Enable Critical Alerts')
92
+ c.option('--hotspot-helper', 'Enable Hotspot Helper')
93
+ c.option('--driver-kit', 'Enable DriverKit')
94
+ c.option('--driver-kit-endpoint-security', 'Enable DriverKit Endpoint Security')
95
+ c.option('--driver-kit-family-hid-device', 'Enable DriverKit Family HID Device')
96
+ c.option('--driver-kit-family-networking', 'Enable DriverKit Family Networking')
97
+ c.option('--driver-kit-family-serial', 'Enable DriverKit Family Serial')
98
+ c.option('--driver-kit-hid-event-service', 'Enable DriverKit HID EventService')
99
+ c.option('--driver-kit-transport-hid', 'Enable DriverKit Transport HID')
100
+ c.option('--multitasking-camera-access', 'Enable Multitasking Camera Access')
101
+ c.option('--sf-universal-link-api', 'Enable SFUniversalLink API')
102
+ c.option('--vp9-decoder', 'Enable VP9 Decoder')
103
+ c.option('--music-kit', 'Enable MusicKit')
104
+ c.option('--shazam-kit', 'Enable ShazamKit')
105
+ c.option('--communication-notifications', 'Enable Communication Notifications')
106
+ c.option('--group-activities', 'Enable Group Activities')
107
+ c.option('--health-kit-estimate-recalibration', 'Enable HealthKit Estimate Recalibration')
108
+ c.option('--time-sensitive-notifications', 'Enable Time Sensitive Notifications')
73
109
 
74
110
  FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
75
111
 
@@ -88,29 +124,65 @@ module Produce
88
124
  c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
89
125
  c.example('Disable HealthKit', 'fastlane produce disable_services -a com.example.app --healthkit')
90
126
 
91
- c.option('--access-wifi', 'Disable Access WiFi')
92
- c.option('--app-group', 'Disable App Groups')
127
+ c.option('--access-wifi', 'Disable Access Wifi')
128
+ c.option('--app-attest', 'Disable App Attest')
129
+ c.option('--app-group', 'Disable App Group')
93
130
  c.option('--apple-pay', 'Disable Apple Pay')
94
- c.option('--auto-fill-credential', 'Disable AutoFill Credential')
95
131
  c.option('--associated-domains', 'Disable Associated Domains')
132
+ c.option('--auto-fill-credential', 'Disable Auto Fill Credential')
133
+ c.option('--class-kit', 'Disable Class Kit')
134
+ c.option('--icloud', 'Disable iCloud')
135
+ c.option('--custom-network-protocol', 'Disable Custom Network Protocol')
96
136
  c.option('--data-protection', 'Disable Data Protection')
137
+ c.option('--extended-virtual-address-space', 'Disable Extended Virtual Address Space')
138
+ c.option('--family-controls', 'Disable Family Controls')
139
+ c.option('--file-provider-testing-mode', 'Disable File Provider Testing Mode')
140
+ c.option('--fonts', 'Disable Fonts')
97
141
  c.option('--game-center', 'Disable Game Center')
98
- c.option('--healthkit', 'Disable HealthKit')
99
- c.option('--homekit', 'Disable HomeKit')
142
+ c.option('--health-kit', 'Disable Health Kit')
143
+ c.option('--hls-interstitial-preview', 'Disable Hls Interstitial Preview')
144
+ c.option('--home-kit', 'Disable Home Kit')
100
145
  c.option('--hotspot', 'Disable Hotspot')
101
- c.option('--icloud', 'Disable iCloud')
102
- c.option('--in-app-purchase', 'Disable In-App Purchase')
103
- c.option('--inter-app-audio', 'Disable Inter-App-Audio')
146
+ c.option('--in-app-purchase', 'Disable In App Purchase')
147
+ c.option('--inter-app-audio', 'Disable Inter App Audio')
148
+ c.option('--low-latency-hls', 'Disable Low Latency Hls')
149
+ c.option('--managed-associated-domains', 'Disable Managed Associated Domains')
150
+ c.option('--maps', 'Disable Maps')
104
151
  c.option('--multipath', 'Disable Multipath')
105
- c.option('--network-extension', 'Disable Network Extensions')
152
+ c.option('--network-extension', 'Disable Network Extension')
106
153
  c.option('--nfc-tag-reading', 'Disable NFC Tag Reading')
107
154
  c.option('--personal-vpn', 'Disable Personal VPN')
108
155
  c.option('--passbook', 'Disable Passbook (deprecated)')
109
- c.option('--push-notification', 'Disable Push notifications')
110
- c.option('--sirikit', 'Disable SiriKit')
111
- c.option('--vpn-conf', 'Disable VPN Configuration (deprecated)')
156
+ c.option('--push-notification', 'Disable Push Notification')
157
+ c.option('--sign-in-with-apple', 'Disable Sign In With Apple')
158
+ c.option('--siri-kit', 'Disable Siri Kit')
159
+ c.option('--system-extension', 'Disable System Extension')
160
+ c.option('--user-management', 'Disable User Management')
161
+ c.option('--vpn-configuration', 'Disable Vpn Configuration (deprecated)')
112
162
  c.option('--wallet', 'Disable Wallet')
113
- c.option('--wireless-conf', 'Disable Wireless Accessory Configuration')
163
+ c.option('--wireless-accessory', 'Disable Wireless Accessory')
164
+ c.option('--car-play-audio-app', 'Disable Car Play Audio App')
165
+ c.option('--car-play-messaging-app', 'Disable Car Play Messaging App')
166
+ c.option('--car-play-navigation-app', 'Disable Car Play Navigation App')
167
+ c.option('--car-play-voip-calling-app', 'Disable Car Play Voip Calling App')
168
+ c.option('--critical-alerts', 'Disable Critical Alerts')
169
+ c.option('--hotspot-helper', 'Disable Hotspot Helper')
170
+ c.option('--driver-kit', 'Disable DriverKit')
171
+ c.option('--driver-kit-endpoint-security', 'Disable DriverKit Endpoint Security')
172
+ c.option('--driver-kit-family-hid-device', 'Disable DriverKit Family HID Device')
173
+ c.option('--driver-kit-family-networking', 'Disable DriverKit Family Networking')
174
+ c.option('--driver-kit-family-serial', 'Disable DriverKit Family Serial')
175
+ c.option('--driver-kit-hid-event-service', 'Disable DriverKit HID EventService')
176
+ c.option('--driver-kit-transport-hid', 'Disable DriverKit Transport HID')
177
+ c.option('--multitasking-camera-access', 'Disable Multitasking Camera Access')
178
+ c.option('--sf-universal-link-api', 'Disable SFUniversalLink API')
179
+ c.option('--vp9-decoder', 'Disable VP9 Decoder')
180
+ c.option('--music-kit', 'Disable MusicKit')
181
+ c.option('--shazam-kit', 'Disable ShazamKit')
182
+ c.option('--communication-notifications', 'Disable Communication Notifications')
183
+ c.option('--group-activities', 'Disable Group Activities')
184
+ c.option('--health-kit-estimate-recalibration', 'Disable HealthKit Estimate Recalibration')
185
+ c.option('--time-sensitive-notifications', 'Disable Time Sensitive Notifications')
114
186
 
115
187
  FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
116
188