fastlane 2.128.1 → 2.129.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +74 -74
  3. data/deliver/lib/deliver/submit_for_review.rb +1 -1
  4. data/fastlane/lib/fastlane/actions/appetize_viewing_url_generator.rb +1 -1
  5. data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +1 -1
  6. data/fastlane/lib/fastlane/actions/commit_github_file.rb +1 -1
  7. data/fastlane/lib/fastlane/actions/get_version_number.rb +18 -2
  8. data/fastlane/lib/fastlane/actions/github_api.rb +1 -1
  9. data/fastlane/lib/fastlane/actions/gradle.rb +26 -7
  10. data/fastlane/lib/fastlane/actions/import_from_git.rb +1 -1
  11. data/fastlane/lib/fastlane/actions/pod_push.rb +20 -10
  12. data/fastlane/lib/fastlane/actions/puts.rb +1 -1
  13. data/fastlane/lib/fastlane/actions/sonar.rb +18 -0
  14. data/fastlane/lib/fastlane/actions/update_fastlane.rb +1 -1
  15. data/fastlane/lib/fastlane/commands_generator.rb +1 -1
  16. data/fastlane/lib/fastlane/helper/adb_helper.rb +5 -0
  17. data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +11 -5
  18. data/fastlane/lib/fastlane/swift_fastlane_api_generator.rb +4 -0
  19. data/fastlane/lib/fastlane/swift_fastlane_function.rb +11 -7
  20. data/fastlane/lib/fastlane/version.rb +1 -1
  21. data/fastlane/swift/Deliverfile.swift +1 -1
  22. data/fastlane/swift/Fastlane.swift +290 -284
  23. data/fastlane/swift/Gymfile.swift +1 -1
  24. data/fastlane/swift/GymfileProtocol.swift +3 -3
  25. data/fastlane/swift/Matchfile.swift +1 -1
  26. data/fastlane/swift/Precheckfile.swift +1 -1
  27. data/fastlane/swift/Scanfile.swift +1 -1
  28. data/fastlane/swift/ScanfileProtocol.swift +3 -3
  29. data/fastlane/swift/Screengrabfile.swift +1 -1
  30. data/fastlane/swift/Snapshotfile.swift +1 -1
  31. data/fastlane_core/lib/fastlane_core/analytics/analytics_event_builder.rb +1 -1
  32. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +1 -1
  33. data/frameit/lib/frameit/editor.rb +1 -1
  34. data/gym/lib/gym/options.rb +1 -1
  35. data/match/lib/match/nuke.rb +1 -1
  36. data/match/lib/match/runner.rb +2 -2
  37. data/match/lib/match/storage/interface.rb +1 -1
  38. data/scan/lib/scan/options.rb +1 -1
  39. data/scan/lib/scan/runner.rb +1 -1
  40. data/snapshot/lib/assets/SnapshotHelper.swift +3 -3
  41. data/spaceship/lib/spaceship/connect_api/models/beta_tester_metric.rb +1 -0
  42. data/spaceship/lib/spaceship/du/du_client.rb +4 -0
  43. data/spaceship/lib/spaceship/portal/certificate.rb +15 -1
  44. data/spaceship/lib/spaceship/spaceauth_runner.rb +1 -1
  45. data/spaceship/lib/spaceship/test_flight/tester.rb +1 -1
  46. data/spaceship/lib/spaceship/tunes/build_details.rb +160 -18
  47. data/spaceship/lib/spaceship/tunes/display_family.rb +3 -3
  48. data/spaceship/lib/spaceship/tunes/iap.rb +2 -0
  49. data/spaceship/lib/spaceship/tunes/iap_detail.rb +17 -0
  50. data/spaceship/lib/spaceship/tunes/tunes_client.rb +37 -1
  51. data/supply/lib/supply/client.rb +1 -1
  52. metadata +17 -18
@@ -21,6 +21,9 @@ module Fastlane
21
21
  sonar_scanner_args << "-Dsonar.login=\"#{params[:sonar_login]}\"" if params[:sonar_login]
22
22
  sonar_scanner_args << "-Dsonar.host.url=\"#{params[:sonar_url]}\"" if params[:sonar_url]
23
23
  sonar_scanner_args << "-Dsonar.branch.name=\"#{params[:branch_name]}\"" if params[:branch_name]
24
+ sonar_scanner_args << "-Dsonar.pullrequest.branch=\"#{params[:pull_request_branch]}\"" if params[:pull_request_branch]
25
+ sonar_scanner_args << "-Dsonar.pullrequest.base=\"#{params[:pull_request_base]}\"" if params[:pull_request_base]
26
+ sonar_scanner_args << "-Dsonar.pullrequest.key=\"#{params[:pull_request_key]}\"" if params[:pull_request_key]
24
27
  sonar_scanner_args << params[:sonar_runner_args] if params[:sonar_runner_args]
25
28
 
26
29
  command = [
@@ -103,6 +106,21 @@ module Fastlane
103
106
  env_name: "FL_SONAR_RUNNER_BRANCH_NAME",
104
107
  description: "Pass the branch name which is getting scanned",
105
108
  optional: true,
109
+ is_string: true),
110
+ FastlaneCore::ConfigItem.new(key: :pull_request_branch,
111
+ env_name: "FL_SONAR_RUNNER_PULL_REQUEST_BRANCH",
112
+ description: "The name of the branch that contains the changes to be merged",
113
+ optional: true,
114
+ is_string: true),
115
+ FastlaneCore::ConfigItem.new(key: :pull_request_base,
116
+ env_name: "FL_SONAR_RUNNER_PULL_REQUEST_BASE",
117
+ description: "The long-lived branch into which the PR will be merged",
118
+ optional: true,
119
+ is_string: true),
120
+ FastlaneCore::ConfigItem.new(key: :pull_request_key,
121
+ env_name: "FL_SONAR_RUNNER_PULL_REQUEST_KEY",
122
+ description: "Unique identifier of your PR. Must correspond to the key of the PR in GitHub or TFS",
123
+ optional: true,
106
124
  is_string: true)
107
125
  ]
108
126
  end
@@ -31,7 +31,7 @@ module Fastlane
31
31
  UI.important("It seems that your Gem directory is not writable by your current user.")
32
32
  UI.important("fastlane would need sudo rights to update itself, however, running 'sudo fastlane' is not recommended.")
33
33
  UI.important("If you still want to use this action, please read the documentation on how to set this up:")
34
- UI.important("https://docs.fastlane.tools/actions/#update_fastlane")
34
+ UI.important("https://docs.fastlane.tools/actions/update_fastlane/")
35
35
  return
36
36
  end
37
37
 
@@ -43,7 +43,7 @@ module Fastlane
43
43
  Fastlane::PluginUpdateManager.show_update_status
44
44
  if FastlaneCore::Globals.capture_output?
45
45
  if $stdout.respond_to?(:string)
46
- # Sometimes you can get NoMethodError: undefined method `string' for #<IO:<STDOUT>> when runing with FastlaneRunner (swift)
46
+ # Sometimes you can get NoMethodError: undefined method `string' for #<IO:<STDOUT>> when running with FastlaneRunner (swift)
47
47
  FastlaneCore::Globals.captured_output = Helper.strip_ansi_colors($stdout.string)
48
48
  end
49
49
  $stdout = STDOUT
@@ -31,6 +31,11 @@ module Fastlane
31
31
  end
32
32
 
33
33
  def device_avalaible?(serial)
34
+ UI.deprecated("Please use `device_available?` instead... This will be removed in a future version of fastlane")
35
+ device_available?(serial)
36
+ end
37
+
38
+ def device_available?(serial)
34
39
  load_all_devices
35
40
  return devices.map(&:serial).include?(serial)
36
41
  end
@@ -7,7 +7,7 @@ module Fastlane
7
7
  def discover_crashlytics_path(params)
8
8
  path = params[:crashlytics_path]
9
9
 
10
- # Finding submit binary inside of given Crashlytics path (for backwards compatability)
10
+ # Finding submit binary inside of given Crashlytics path (for backwards compatibility)
11
11
  if path
12
12
  if File.basename(path) != "submit"
13
13
  path = Dir[File.join(path, '**', 'submit')].last
@@ -86,7 +86,6 @@ module Fastlane
86
86
  containing = File.join(File.expand_path("~/Library"), "CrashlyticsAndroid")
87
87
  zip_path = File.join(containing, "crashlytics-devtools.zip")
88
88
  jar_path = File.join(containing, "crashlytics-devtools.jar")
89
- return jar_path if File.exist?(jar_path)
90
89
 
91
90
  url = "https://ssl-download-crashlytics-com.s3.amazonaws.com/android/ant/crashlytics.zip"
92
91
  require 'net/http'
@@ -94,19 +93,26 @@ module Fastlane
94
93
  FileUtils.mkdir_p(containing)
95
94
 
96
95
  begin
97
- UI.important("Downloading Crashlytics Support Library - this might take a minute...")
98
-
99
96
  # Work around ruby defect, where HTTP#get_response and HTTP#post_form don't use ENV proxy settings
100
97
  # https://bugs.ruby-lang.org/issues/12724
101
98
  uri = URI(url)
102
99
  http_conn = Net::HTTP.new(uri.host, uri.port)
103
100
  http_conn.use_ssl = true
101
+ result = http_conn.request_head(uri.path)
102
+
103
+ # ETag is returned with quotes, which net/http does not handle. Clean that up
104
+ etag = result['ETag'] && result['ETag'].tr('"', '')
105
+
106
+ # This is a no-op if the current version on disk matches the file on S3
107
+ return jar_path if File.exist?(zip_path) && etag == Digest::MD5.file(zip_path).hexdigest
108
+
109
+ UI.important("Downloading Crashlytics Support Library - this might take a minute...")
104
110
  result = http_conn.request_get(uri.path)
105
111
  UI.error!("#{result.message} (#{result.code})") unless result.kind_of?(Net::HTTPSuccess)
106
112
  File.write(zip_path, result.body)
107
113
 
108
114
  # Now unzip the file
109
- Action.sh("unzip '#{zip_path}' -d '#{containing}'")
115
+ Action.sh("unzip -o '#{zip_path}' -d '#{containing}'")
110
116
 
111
117
  UI.user_error!("Couldn't find 'crashlytics-devtools.jar'") unless File.exist?(jar_path)
112
118
 
@@ -337,6 +337,7 @@ func parseInt(fromString: String, function: String = #function) -> Int {
337
337
  key_default_values = []
338
338
  key_optionality_values = []
339
339
  key_type_overrides = []
340
+ key_is_strings = []
340
341
 
341
342
  if options.kind_of?(Array)
342
343
  options.each do |current|
@@ -350,6 +351,7 @@ func parseInt(fromString: String, function: String = #function) -> Int {
350
351
  key_default_values << current.code_gen_default_value
351
352
  key_optionality_values << current.optional
352
353
  key_type_overrides << current.data_type
354
+ key_is_strings << current.is_string
353
355
  end
354
356
  end
355
357
  action_return_type = action.return_type
@@ -362,6 +364,7 @@ func parseInt(fromString: String, function: String = #function) -> Int {
362
364
  key_default_values: key_default_values,
363
365
  key_optionality_values: key_optionality_values,
364
366
  key_type_overrides: key_type_overrides,
367
+ key_is_strings: key_is_strings,
365
368
  return_type: action_return_type
366
369
  )
367
370
  generated_protocol_file_path = generate_tool_protocol(tool_swift_function: tool_swift_function)
@@ -375,6 +378,7 @@ func parseInt(fromString: String, function: String = #function) -> Int {
375
378
  key_default_values: key_default_values,
376
379
  key_optionality_values: key_optionality_values,
377
380
  key_type_overrides: key_type_overrides,
381
+ key_is_strings: key_is_strings,
378
382
  return_type: action_return_type
379
383
  )
380
384
  end
@@ -7,15 +7,17 @@ module Fastlane
7
7
  attr_accessor :param_default_values
8
8
  attr_accessor :param_optionality_values
9
9
  attr_accessor :param_type_overrides
10
+ attr_accessor :param_is_strings
10
11
  attr_accessor :reserved_words
11
12
  attr_accessor :default_values_to_ignore
12
13
 
13
- def initialize(action_name: nil, keys: nil, key_descriptions: nil, key_default_values: nil, key_optionality_values: nil, key_type_overrides: nil, return_type: nil)
14
+ def initialize(action_name: nil, keys: nil, key_descriptions: nil, key_default_values: nil, key_optionality_values: nil, key_type_overrides: nil, key_is_strings: nil, return_type: nil)
14
15
  @function_name = action_name
15
16
  @param_names = keys
16
17
  @param_descriptions = key_descriptions
17
18
  @param_default_values = key_default_values
18
19
  @param_optionality_values = key_optionality_values
20
+ @param_is_strings = key_is_strings
19
21
  @return_type = return_type
20
22
  @param_type_overrides = key_type_overrides
21
23
 
@@ -91,11 +93,13 @@ module Fastlane
91
93
  return default_value
92
94
  end
93
95
 
94
- def get_type(param: nil, default_value: nil, optional: nil, param_type_override: nil)
96
+ def get_type(param: nil, default_value: nil, optional: nil, param_type_override: nil, is_string: true)
95
97
  unless param_type_override.nil?
96
98
  type = determine_type_from_override(type_override: param_type_override)
97
99
  end
98
- type ||= "String"
100
+
101
+ # defaulting type to Any if is_string is false so users are allowed to input all allowed types
102
+ type ||= is_string ? "String" : "Any"
99
103
 
100
104
  optional_specifier = ""
101
105
  # if we are optional and don't have a default value, we'll need to use ?
@@ -121,8 +125,8 @@ module Fastlane
121
125
  return ""
122
126
  end
123
127
 
124
- param_names_and_types = @param_names.zip(param_default_values, param_optionality_values, param_type_overrides).map do |param, default_value, optional, param_type_override|
125
- type = get_type(param: param, default_value: default_value, optional: optional, param_type_override: param_type_override)
128
+ param_names_and_types = @param_names.zip(param_default_values, param_optionality_values, param_type_overrides, param_is_strings).map do |param, default_value, optional, param_type_override, is_string|
129
+ type = get_type(param: param, default_value: default_value, optional: optional, param_type_override: param_type_override, is_string: is_string)
126
130
 
127
131
  unless default_value.nil?
128
132
  if type == "[String : Any]"
@@ -304,8 +308,8 @@ module Fastlane
304
308
  return ""
305
309
  end
306
310
 
307
- param_names_and_types = @param_names.zip(param_default_values, param_optionality_values, param_type_overrides).map do |param, default_value, optional, param_type_override|
308
- type = get_type(param: param, default_value: default_value, optional: optional, param_type_override: param_type_override)
311
+ param_names_and_types = @param_names.zip(param_default_values, param_optionality_values, param_type_overrides).map do |param, default_value, optional, param_type_override, is_string|
312
+ type = get_type(param: param, default_value: default_value, optional: optional, param_type_override: param_type_override, is_string: is_string)
309
313
 
310
314
  param = camel_case_lower(string: param)
311
315
  param = sanitize_reserved_word(word: param)
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.128.1'.freeze
2
+ VERSION = '2.129.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
4
4
  MINIMUM_XCODE_RELEASE = "7.0".freeze
5
5
  RUBOCOP_REQUIREMENT = '0.49.1'.freeze
@@ -18,4 +18,4 @@ class Deliverfile: DeliverfileProtocol {
18
18
 
19
19
 
20
20
 
21
- // Generated with fastlane 2.128.1
21
+ // Generated with fastlane 2.129.0
@@ -19,7 +19,7 @@ func addGitTag(tag: String? = nil,
19
19
  grouping: String = "builds",
20
20
  `prefix`: String = "",
21
21
  `postfix`: String = "",
22
- buildNumber: String,
22
+ buildNumber: Any,
23
23
  message: String? = nil,
24
24
  commit: String? = nil,
25
25
  force: Bool = false,
@@ -35,10 +35,10 @@ func addGitTag(tag: String? = nil,
35
35
  RubyCommand.Argument(name: "sign", value: sign)])
36
36
  _ = runner.executeCommand(command)
37
37
  }
38
- func appStoreBuildNumber(initialBuildNumber: String,
38
+ func appStoreBuildNumber(initialBuildNumber: Any,
39
39
  appIdentifier: String,
40
40
  username: String,
41
- teamId: String? = nil,
41
+ teamId: Any? = nil,
42
42
  live: Bool = true,
43
43
  version: String? = nil,
44
44
  platform: String = "ios",
@@ -131,13 +131,13 @@ func appium(platform: String,
131
131
  RubyCommand.Argument(name: "appium_lib", value: appiumLib)])
132
132
  _ = runner.executeCommand(command)
133
133
  }
134
- func appledoc(input: String,
134
+ func appledoc(input: Any,
135
135
  output: String? = nil,
136
136
  templates: String? = nil,
137
137
  docsetInstallPath: String? = nil,
138
138
  include: String? = nil,
139
- ignore: String? = nil,
140
- excludeOutput: String? = nil,
139
+ ignore: Any? = nil,
140
+ excludeOutput: Any? = nil,
141
141
  indexDesc: String? = nil,
142
142
  projectName: String,
143
143
  projectVersion: String? = nil,
@@ -174,8 +174,8 @@ func appledoc(input: String,
174
174
  exitThreshold: Int = 2,
175
175
  docsSectionTitle: String? = nil,
176
176
  warnings: String? = nil,
177
- logformat: String? = nil,
178
- verbose: String? = nil) {
177
+ logformat: Any? = nil,
178
+ verbose: Any? = nil) {
179
179
  let command = RubyCommand(commandID: "", methodName: "appledoc", className: nil, args: [RubyCommand.Argument(name: "input", value: input),
180
180
  RubyCommand.Argument(name: "output", value: output),
181
181
  RubyCommand.Argument(name: "templates", value: templates),
@@ -243,19 +243,19 @@ func appstore(username: String,
243
243
  submitForReview: Bool = false,
244
244
  rejectIfPossible: Bool = false,
245
245
  automaticRelease: Bool = false,
246
- autoReleaseDate: String? = nil,
246
+ autoReleaseDate: Any? = nil,
247
247
  phasedRelease: Bool = false,
248
248
  resetRatings: Bool = false,
249
- priceTier: String? = nil,
249
+ priceTier: Any? = nil,
250
250
  appRatingConfigPath: String? = nil,
251
- submissionInformation: String? = nil,
252
- teamId: String? = nil,
251
+ submissionInformation: Any? = nil,
252
+ teamId: Any? = nil,
253
253
  teamName: String? = nil,
254
254
  devPortalTeamId: String? = nil,
255
255
  devPortalTeamName: String? = nil,
256
256
  itcProvider: String? = nil,
257
257
  runPrecheckBeforeSubmit: Bool = true,
258
- precheckDefaultRuleLevel: String = "warn",
258
+ precheckDefaultRuleLevel: Any = "warn",
259
259
  individualMetadataItems: [String] = [],
260
260
  appIcon: String? = nil,
261
261
  appleWatchAppIcon: String? = nil,
@@ -269,20 +269,20 @@ func appstore(username: String,
269
269
  tradeRepresentativeContactInformation: [String : Any]? = nil,
270
270
  appReviewInformation: [String : Any]? = nil,
271
271
  appReviewAttachmentFile: String? = nil,
272
- description: String? = nil,
273
- name: String? = nil,
272
+ description: Any? = nil,
273
+ name: Any? = nil,
274
274
  subtitle: [String : Any]? = nil,
275
275
  keywords: [String : Any]? = nil,
276
276
  promotionalText: [String : Any]? = nil,
277
- releaseNotes: String? = nil,
278
- privacyUrl: String? = nil,
279
- appleTvPrivacyPolicy: String? = nil,
280
- supportUrl: String? = nil,
281
- marketingUrl: String? = nil,
277
+ releaseNotes: Any? = nil,
278
+ privacyUrl: Any? = nil,
279
+ appleTvPrivacyPolicy: Any? = nil,
280
+ supportUrl: Any? = nil,
281
+ marketingUrl: Any? = nil,
282
282
  languages: [String]? = nil,
283
283
  ignoreLanguageDirectoryValidation: Bool = false,
284
284
  precheckIncludeInAppPurchases: Bool = true,
285
- app: String) {
285
+ app: Any) {
286
286
  let command = RubyCommand(commandID: "", methodName: "appstore", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
287
287
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
288
288
  RubyCommand.Argument(name: "app_version", value: appVersion),
@@ -417,17 +417,17 @@ func backupXcarchive(xcarchive: String,
417
417
  RubyCommand.Argument(name: "versioned", value: versioned)])
418
418
  _ = runner.executeCommand(command)
419
419
  }
420
- func badge(dark: String? = nil,
420
+ func badge(dark: Any? = nil,
421
421
  custom: String? = nil,
422
- noBadge: String? = nil,
422
+ noBadge: Any? = nil,
423
423
  shield: String? = nil,
424
- alpha: String? = nil,
424
+ alpha: Any? = nil,
425
425
  path: String = ".",
426
- shieldIoTimeout: String? = nil,
426
+ shieldIoTimeout: Any? = nil,
427
427
  glob: String? = nil,
428
- alphaChannel: String? = nil,
428
+ alphaChannel: Any? = nil,
429
429
  shieldGravity: String? = nil,
430
- shieldNoResize: String? = nil) {
430
+ shieldNoResize: Any? = nil) {
431
431
  let command = RubyCommand(commandID: "", methodName: "badge", className: nil, args: [RubyCommand.Argument(name: "dark", value: dark),
432
432
  RubyCommand.Argument(name: "custom", value: custom),
433
433
  RubyCommand.Argument(name: "no_badge", value: noBadge),
@@ -459,8 +459,8 @@ func buildAndroidApp(task: String,
459
459
  flags: String? = nil,
460
460
  projectDir: String = ".",
461
461
  gradlePath: String? = nil,
462
- properties: String? = nil,
463
- systemProperties: String? = nil,
462
+ properties: Any? = nil,
463
+ systemProperties: Any? = nil,
464
464
  serial: String = "",
465
465
  printCommand: Bool = true,
466
466
  printCommandOutput: Bool = true) {
@@ -501,20 +501,20 @@ func buildApp(workspace: String? = nil,
501
501
  resultBundlePath: String? = nil,
502
502
  buildlogPath: String = "~/Library/Logs/gym",
503
503
  sdk: String? = nil,
504
- toolchain: String? = nil,
504
+ toolchain: Any? = nil,
505
505
  destination: String? = nil,
506
506
  exportTeamId: String? = nil,
507
507
  xcargs: String? = nil,
508
508
  xcconfig: String? = nil,
509
- suppressXcodeOutput: String? = nil,
510
- disableXcpretty: String? = nil,
511
- xcprettyTestFormat: String? = nil,
509
+ suppressXcodeOutput: Bool? = nil,
510
+ disableXcpretty: Any? = nil,
511
+ xcprettyTestFormat: Any? = nil,
512
512
  xcprettyFormatter: String? = nil,
513
513
  xcprettyReportJunit: String? = nil,
514
514
  xcprettyReportHtml: String? = nil,
515
515
  xcprettyReportJson: String? = nil,
516
- analyzeBuildTime: String? = nil,
517
- xcprettyUtf: String? = nil,
516
+ analyzeBuildTime: Any? = nil,
517
+ xcprettyUtf: Any? = nil,
518
518
  skipProfileDetection: Bool = false) {
519
519
  let command = RubyCommand(commandID: "", methodName: "build_app", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
520
520
  RubyCommand.Argument(name: "project", value: project),
@@ -581,20 +581,20 @@ func buildIosApp(workspace: String? = nil,
581
581
  resultBundlePath: String? = nil,
582
582
  buildlogPath: String = "~/Library/Logs/gym",
583
583
  sdk: String? = nil,
584
- toolchain: String? = nil,
584
+ toolchain: Any? = nil,
585
585
  destination: String? = nil,
586
586
  exportTeamId: String? = nil,
587
587
  xcargs: String? = nil,
588
588
  xcconfig: String? = nil,
589
- suppressXcodeOutput: String? = nil,
590
- disableXcpretty: String? = nil,
591
- xcprettyTestFormat: String? = nil,
589
+ suppressXcodeOutput: Bool? = nil,
590
+ disableXcpretty: Any? = nil,
591
+ xcprettyTestFormat: Any? = nil,
592
592
  xcprettyFormatter: String? = nil,
593
593
  xcprettyReportJunit: String? = nil,
594
594
  xcprettyReportHtml: String? = nil,
595
595
  xcprettyReportJson: String? = nil,
596
- analyzeBuildTime: String? = nil,
597
- xcprettyUtf: String? = nil,
596
+ analyzeBuildTime: Any? = nil,
597
+ xcprettyUtf: Any? = nil,
598
598
  skipProfileDetection: Bool = false) {
599
599
  let command = RubyCommand(commandID: "", methodName: "build_ios_app", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
600
600
  RubyCommand.Argument(name: "project", value: project),
@@ -746,7 +746,7 @@ func captureIosScreenshots(workspace: String? = nil,
746
746
  derivedDataPath: String? = nil,
747
747
  resultBundle: Bool = false,
748
748
  testTargetName: String? = nil,
749
- namespaceLogFiles: String? = nil,
749
+ namespaceLogFiles: Any? = nil,
750
750
  concurrentSimulators: Bool = true) {
751
751
  let command = RubyCommand(commandID: "", methodName: "capture_ios_screenshots", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
752
752
  RubyCommand.Argument(name: "project", value: project),
@@ -814,7 +814,7 @@ func captureScreenshots(workspace: String? = nil,
814
814
  derivedDataPath: String? = nil,
815
815
  resultBundle: Bool = false,
816
816
  testTargetName: String? = nil,
817
- namespaceLogFiles: String? = nil,
817
+ namespaceLogFiles: Any? = nil,
818
818
  concurrentSimulators: Bool = true) {
819
819
  let command = RubyCommand(commandID: "", methodName: "capture_screenshots", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
820
820
  RubyCommand.Argument(name: "project", value: project),
@@ -900,7 +900,7 @@ func cert(development: Bool = false,
900
900
  outputPath: String = ".",
901
901
  keychainPath: String,
902
902
  keychainPassword: String? = nil,
903
- platform: String = "ios") {
903
+ platform: Any = "ios") {
904
904
  let command = RubyCommand(commandID: "", methodName: "cert", className: nil, args: [RubyCommand.Argument(name: "development", value: development),
905
905
  RubyCommand.Argument(name: "force", value: force),
906
906
  RubyCommand.Argument(name: "username", value: username),
@@ -913,7 +913,7 @@ func cert(development: Bool = false,
913
913
  RubyCommand.Argument(name: "platform", value: platform)])
914
914
  _ = runner.executeCommand(command)
915
915
  }
916
- @discardableResult func changelogFromGitCommits(between: String? = nil,
916
+ @discardableResult func changelogFromGitCommits(between: Any? = nil,
917
917
  commitsCount: Int? = nil,
918
918
  path: String = "./",
919
919
  pretty: String = "%B",
@@ -939,7 +939,7 @@ func cert(development: Bool = false,
939
939
  }
940
940
  func chatwork(apiToken: String,
941
941
  message: String,
942
- roomid: String,
942
+ roomid: Any,
943
943
  success: Bool = true) {
944
944
  let command = RubyCommand(commandID: "", methodName: "chatwork", className: nil, args: [RubyCommand.Argument(name: "api_token", value: apiToken),
945
945
  RubyCommand.Argument(name: "message", value: message),
@@ -951,18 +951,18 @@ func checkAppStoreMetadata(appIdentifier: String,
951
951
  username: String,
952
952
  teamId: String? = nil,
953
953
  teamName: String? = nil,
954
- defaultRuleLevel: String = "error",
954
+ defaultRuleLevel: Any = "error",
955
955
  includeInAppPurchases: Bool = true,
956
- negativeAppleSentiment: String? = nil,
957
- placeholderText: String? = nil,
958
- otherPlatforms: String? = nil,
959
- futureFunctionality: String? = nil,
960
- testWords: String? = nil,
961
- curseWords: String? = nil,
962
- freeStuffInIap: String? = nil,
963
- customText: String? = nil,
964
- copyrightDate: String? = nil,
965
- unreachableUrls: String? = nil) {
956
+ negativeAppleSentiment: Any? = nil,
957
+ placeholderText: Any? = nil,
958
+ otherPlatforms: Any? = nil,
959
+ futureFunctionality: Any? = nil,
960
+ testWords: Any? = nil,
961
+ curseWords: Any? = nil,
962
+ freeStuffInIap: Any? = nil,
963
+ customText: Any? = nil,
964
+ copyrightDate: Any? = nil,
965
+ unreachableUrls: Any? = nil) {
966
966
  let command = RubyCommand(commandID: "", methodName: "check_app_store_metadata", className: nil, args: [RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
967
967
  RubyCommand.Argument(name: "username", value: username),
968
968
  RubyCommand.Argument(name: "team_id", value: teamId),
@@ -1019,7 +1019,7 @@ func cocoapods(repoUpdate: Bool = false,
1019
1019
  ansi: Bool = true,
1020
1020
  useBundleExec: Bool = true,
1021
1021
  podfile: String? = nil,
1022
- errorCallback: String? = nil,
1022
+ errorCallback: Any? = nil,
1023
1023
  tryRepoUpdateOnError: Bool = false,
1024
1024
  clean: Bool = true,
1025
1025
  integrate: Bool = true) {
@@ -1055,7 +1055,7 @@ func commitVersionBump(message: String? = nil,
1055
1055
  xcodeproj: String? = nil,
1056
1056
  force: Bool = false,
1057
1057
  settings: Bool = false,
1058
- ignore: String? = nil,
1058
+ ignore: Any? = nil,
1059
1059
  include: [String] = [],
1060
1060
  noVerify: Bool = false) {
1061
1061
  let command = RubyCommand(commandID: "", methodName: "commit_version_bump", className: nil, args: [RubyCommand.Argument(name: "message", value: message),
@@ -1068,7 +1068,7 @@ func commitVersionBump(message: String? = nil,
1068
1068
  _ = runner.executeCommand(command)
1069
1069
  }
1070
1070
  func copyArtifacts(keepOriginal: Bool = true,
1071
- targetPath: String = "artifacts",
1071
+ targetPath: Any = "artifacts",
1072
1072
  artifacts: [String] = [],
1073
1073
  failOnMissing: Bool = false) {
1074
1074
  let command = RubyCommand(commandID: "", methodName: "copy_artifacts", className: nil, args: [RubyCommand.Argument(name: "keep_original", value: keepOriginal),
@@ -1084,8 +1084,8 @@ func crashlytics(ipaPath: String? = nil,
1084
1084
  buildSecret: String,
1085
1085
  notesPath: String? = nil,
1086
1086
  notes: String? = nil,
1087
- groups: String? = nil,
1088
- emails: String? = nil,
1087
+ groups: Any? = nil,
1088
+ emails: Any? = nil,
1089
1089
  notifications: Bool = true,
1090
1090
  debug: Bool = false) {
1091
1091
  let command = RubyCommand(commandID: "", methodName: "crashlytics", className: nil, args: [RubyCommand.Argument(name: "ipa_path", value: ipaPath),
@@ -1135,7 +1135,7 @@ func createAppOnline(username: String,
1135
1135
  skipDevcenter: Bool = false,
1136
1136
  teamId: String? = nil,
1137
1137
  teamName: String? = nil,
1138
- itcTeamId: String? = nil,
1138
+ itcTeamId: Any? = nil,
1139
1139
  itcTeamName: String? = nil) {
1140
1140
  let command = RubyCommand(commandID: "", methodName: "create_app_online", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
1141
1141
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
@@ -1235,17 +1235,17 @@ func deleteKeychain(name: String? = nil,
1235
1235
  RubyCommand.Argument(name: "keychain_path", value: keychainPath)])
1236
1236
  _ = runner.executeCommand(command)
1237
1237
  }
1238
- func deliver(username: String = deliverfile.username,
1239
- appIdentifier: String? = deliverfile.appIdentifier,
1240
- appVersion: String? = deliverfile.appVersion,
1241
- ipa: String? = deliverfile.ipa,
1242
- pkg: String? = deliverfile.pkg,
1243
- buildNumber: String? = deliverfile.buildNumber,
1244
- platform: String = deliverfile.platform,
1238
+ func deliver(username: Any = deliverfile.username,
1239
+ appIdentifier: Any? = deliverfile.appIdentifier,
1240
+ appVersion: Any? = deliverfile.appVersion,
1241
+ ipa: Any? = deliverfile.ipa,
1242
+ pkg: Any? = deliverfile.pkg,
1243
+ buildNumber: Any? = deliverfile.buildNumber,
1244
+ platform: Any = deliverfile.platform,
1245
1245
  editLive: Bool = deliverfile.editLive,
1246
1246
  useLiveVersion: Bool = deliverfile.useLiveVersion,
1247
- metadataPath: String? = deliverfile.metadataPath,
1248
- screenshotsPath: String? = deliverfile.screenshotsPath,
1247
+ metadataPath: Any? = deliverfile.metadataPath,
1248
+ screenshotsPath: Any? = deliverfile.screenshotsPath,
1249
1249
  skipBinaryUpload: Bool = deliverfile.skipBinaryUpload,
1250
1250
  skipScreenshots: Bool = deliverfile.skipScreenshots,
1251
1251
  skipMetadata: Bool = deliverfile.skipMetadata,
@@ -1255,46 +1255,46 @@ func deliver(username: String = deliverfile.username,
1255
1255
  submitForReview: Bool = deliverfile.submitForReview,
1256
1256
  rejectIfPossible: Bool = deliverfile.rejectIfPossible,
1257
1257
  automaticRelease: Bool = deliverfile.automaticRelease,
1258
- autoReleaseDate: String? = deliverfile.autoReleaseDate,
1258
+ autoReleaseDate: Any? = deliverfile.autoReleaseDate,
1259
1259
  phasedRelease: Bool = deliverfile.phasedRelease,
1260
1260
  resetRatings: Bool = deliverfile.resetRatings,
1261
- priceTier: String? = deliverfile.priceTier,
1262
- appRatingConfigPath: String? = deliverfile.appRatingConfigPath,
1263
- submissionInformation: String? = deliverfile.submissionInformation,
1264
- teamId: String? = deliverfile.teamId,
1265
- teamName: String? = deliverfile.teamName,
1266
- devPortalTeamId: String? = deliverfile.devPortalTeamId,
1267
- devPortalTeamName: String? = deliverfile.devPortalTeamName,
1268
- itcProvider: String? = deliverfile.itcProvider,
1261
+ priceTier: Any? = deliverfile.priceTier,
1262
+ appRatingConfigPath: Any? = deliverfile.appRatingConfigPath,
1263
+ submissionInformation: Any? = deliverfile.submissionInformation,
1264
+ teamId: Any? = deliverfile.teamId,
1265
+ teamName: Any? = deliverfile.teamName,
1266
+ devPortalTeamId: Any? = deliverfile.devPortalTeamId,
1267
+ devPortalTeamName: Any? = deliverfile.devPortalTeamName,
1268
+ itcProvider: Any? = deliverfile.itcProvider,
1269
1269
  runPrecheckBeforeSubmit: Bool = deliverfile.runPrecheckBeforeSubmit,
1270
- precheckDefaultRuleLevel: String = deliverfile.precheckDefaultRuleLevel,
1270
+ precheckDefaultRuleLevel: Any = deliverfile.precheckDefaultRuleLevel,
1271
1271
  individualMetadataItems: [String] = deliverfile.individualMetadataItems,
1272
- appIcon: String? = deliverfile.appIcon,
1273
- appleWatchAppIcon: String? = deliverfile.appleWatchAppIcon,
1274
- copyright: String? = deliverfile.copyright,
1275
- primaryCategory: String? = deliverfile.primaryCategory,
1276
- secondaryCategory: String? = deliverfile.secondaryCategory,
1277
- primaryFirstSubCategory: String? = deliverfile.primaryFirstSubCategory,
1278
- primarySecondSubCategory: String? = deliverfile.primarySecondSubCategory,
1279
- secondaryFirstSubCategory: String? = deliverfile.secondaryFirstSubCategory,
1280
- secondarySecondSubCategory: String? = deliverfile.secondarySecondSubCategory,
1272
+ appIcon: Any? = deliverfile.appIcon,
1273
+ appleWatchAppIcon: Any? = deliverfile.appleWatchAppIcon,
1274
+ copyright: Any? = deliverfile.copyright,
1275
+ primaryCategory: Any? = deliverfile.primaryCategory,
1276
+ secondaryCategory: Any? = deliverfile.secondaryCategory,
1277
+ primaryFirstSubCategory: Any? = deliverfile.primaryFirstSubCategory,
1278
+ primarySecondSubCategory: Any? = deliverfile.primarySecondSubCategory,
1279
+ secondaryFirstSubCategory: Any? = deliverfile.secondaryFirstSubCategory,
1280
+ secondarySecondSubCategory: Any? = deliverfile.secondarySecondSubCategory,
1281
1281
  tradeRepresentativeContactInformation: [String : Any]? = deliverfile.tradeRepresentativeContactInformation,
1282
1282
  appReviewInformation: [String : Any]? = deliverfile.appReviewInformation,
1283
- appReviewAttachmentFile: String? = deliverfile.appReviewAttachmentFile,
1284
- description: String? = deliverfile.description,
1285
- name: String? = deliverfile.name,
1283
+ appReviewAttachmentFile: Any? = deliverfile.appReviewAttachmentFile,
1284
+ description: Any? = deliverfile.description,
1285
+ name: Any? = deliverfile.name,
1286
1286
  subtitle: [String : Any]? = deliverfile.subtitle,
1287
1287
  keywords: [String : Any]? = deliverfile.keywords,
1288
1288
  promotionalText: [String : Any]? = deliverfile.promotionalText,
1289
- releaseNotes: String? = deliverfile.releaseNotes,
1290
- privacyUrl: String? = deliverfile.privacyUrl,
1291
- appleTvPrivacyPolicy: String? = deliverfile.appleTvPrivacyPolicy,
1292
- supportUrl: String? = deliverfile.supportUrl,
1293
- marketingUrl: String? = deliverfile.marketingUrl,
1289
+ releaseNotes: Any? = deliverfile.releaseNotes,
1290
+ privacyUrl: Any? = deliverfile.privacyUrl,
1291
+ appleTvPrivacyPolicy: Any? = deliverfile.appleTvPrivacyPolicy,
1292
+ supportUrl: Any? = deliverfile.supportUrl,
1293
+ marketingUrl: Any? = deliverfile.marketingUrl,
1294
1294
  languages: [String]? = deliverfile.languages,
1295
1295
  ignoreLanguageDirectoryValidation: Bool = deliverfile.ignoreLanguageDirectoryValidation,
1296
1296
  precheckIncludeInAppPurchases: Bool = deliverfile.precheckIncludeInAppPurchases,
1297
- app: String = deliverfile.app) {
1297
+ app: Any = deliverfile.app) {
1298
1298
  let command = RubyCommand(commandID: "", methodName: "deliver", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
1299
1299
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
1300
1300
  RubyCommand.Argument(name: "app_version", value: appVersion),
@@ -1387,7 +1387,7 @@ func download(url: String) {
1387
1387
  }
1388
1388
  func downloadDsyms(username: String,
1389
1389
  appIdentifier: String,
1390
- teamId: String? = nil,
1390
+ teamId: Any? = nil,
1391
1391
  teamName: String? = nil,
1392
1392
  platform: String = "ios",
1393
1393
  version: String? = nil,
@@ -1452,7 +1452,7 @@ func ensureGitStatusClean(showUncommittedChanges: Bool = false,
1452
1452
  func ensureNoDebugCode(text: String,
1453
1453
  path: String = ".",
1454
1454
  `extension`: String? = nil,
1455
- extensions: String? = nil,
1455
+ extensions: Any? = nil,
1456
1456
  exclude: String? = nil,
1457
1457
  excludeDirs: [String]? = nil) {
1458
1458
  let command = RubyCommand(commandID: "", methodName: "ensure_no_debug_code", className: nil, args: [RubyCommand.Argument(name: "text", value: text),
@@ -1570,7 +1570,7 @@ func getCertificates(development: Bool = false,
1570
1570
  outputPath: String = ".",
1571
1571
  keychainPath: String,
1572
1572
  keychainPassword: String? = nil,
1573
- platform: String = "ios") {
1573
+ platform: Any = "ios") {
1574
1574
  let command = RubyCommand(commandID: "", methodName: "get_certificates", className: nil, args: [RubyCommand.Argument(name: "development", value: development),
1575
1575
  RubyCommand.Argument(name: "force", value: force),
1576
1576
  RubyCommand.Argument(name: "username", value: username),
@@ -1628,7 +1628,7 @@ func getProvisioningProfile(adhoc: Bool = false,
1628
1628
  filename: String? = nil,
1629
1629
  skipFetchProfiles: Bool = false,
1630
1630
  skipCertificateVerification: Bool = false,
1631
- platform: String = "ios",
1631
+ platform: Any = "ios",
1632
1632
  readonly: Bool = false,
1633
1633
  templateName: String? = nil) {
1634
1634
  let command = RubyCommand(commandID: "", methodName: "get_provisioning_profile", className: nil, args: [RubyCommand.Argument(name: "adhoc", value: adhoc),
@@ -1666,7 +1666,7 @@ func getPushCertificate(development: Bool = false,
1666
1666
  p12Password: String,
1667
1667
  pemName: String? = nil,
1668
1668
  outputPath: String = ".",
1669
- newProfile: String? = nil) {
1669
+ newProfile: Any? = nil) {
1670
1670
  let command = RubyCommand(commandID: "", methodName: "get_push_certificate", className: nil, args: [RubyCommand.Argument(name: "development", value: development),
1671
1671
  RubyCommand.Argument(name: "website_push", value: websitePush),
1672
1672
  RubyCommand.Argument(name: "generate_p12", value: generateP12),
@@ -1691,7 +1691,7 @@ func getPushCertificate(development: Bool = false,
1691
1691
  RubyCommand.Argument(name: "configuration", value: configuration)])
1692
1692
  return runner.executeCommand(command)
1693
1693
  }
1694
- func gitAdd(path: String? = nil,
1694
+ func gitAdd(path: Any? = nil,
1695
1695
  shellEscape: Bool = true,
1696
1696
  pathspec: String? = nil) {
1697
1697
  let command = RubyCommand(commandID: "", methodName: "git_add", className: nil, args: [RubyCommand.Argument(name: "path", value: path),
@@ -1703,7 +1703,7 @@ func gitAdd(path: String? = nil,
1703
1703
  let command = RubyCommand(commandID: "", methodName: "git_branch", className: nil, args: [])
1704
1704
  return runner.executeCommand(command)
1705
1705
  }
1706
- func gitCommit(path: String,
1706
+ func gitCommit(path: Any,
1707
1707
  message: String,
1708
1708
  skipGitHooks: Bool? = nil,
1709
1709
  allowNothingToCommit: Bool? = nil) {
@@ -1777,8 +1777,8 @@ func gradle(task: String,
1777
1777
  flags: String? = nil,
1778
1778
  projectDir: String = ".",
1779
1779
  gradlePath: String? = nil,
1780
- properties: String? = nil,
1781
- systemProperties: String? = nil,
1780
+ properties: Any? = nil,
1781
+ systemProperties: Any? = nil,
1782
1782
  serial: String = "",
1783
1783
  printCommand: Bool = true,
1784
1784
  printCommandOutput: Bool = true) {
@@ -1795,44 +1795,44 @@ func gradle(task: String,
1795
1795
  RubyCommand.Argument(name: "print_command_output", value: printCommandOutput)])
1796
1796
  _ = runner.executeCommand(command)
1797
1797
  }
1798
- func gym(workspace: String? = gymfile.workspace,
1799
- project: String? = gymfile.project,
1800
- scheme: String? = gymfile.scheme,
1798
+ func gym(workspace: Any? = gymfile.workspace,
1799
+ project: Any? = gymfile.project,
1800
+ scheme: Any? = gymfile.scheme,
1801
1801
  clean: Bool = gymfile.clean,
1802
- outputDirectory: String = gymfile.outputDirectory,
1803
- outputName: String? = gymfile.outputName,
1804
- configuration: String? = gymfile.configuration,
1802
+ outputDirectory: Any = gymfile.outputDirectory,
1803
+ outputName: Any? = gymfile.outputName,
1804
+ configuration: Any? = gymfile.configuration,
1805
1805
  silent: Bool = gymfile.silent,
1806
- codesigningIdentity: String? = gymfile.codesigningIdentity,
1806
+ codesigningIdentity: Any? = gymfile.codesigningIdentity,
1807
1807
  skipPackageIpa: Bool = gymfile.skipPackageIpa,
1808
1808
  includeSymbols: Bool? = gymfile.includeSymbols,
1809
1809
  includeBitcode: Bool? = gymfile.includeBitcode,
1810
- exportMethod: String? = gymfile.exportMethod,
1810
+ exportMethod: Any? = gymfile.exportMethod,
1811
1811
  exportOptions: [String : Any]? = gymfile.exportOptions,
1812
- exportXcargs: String? = gymfile.exportXcargs,
1812
+ exportXcargs: Any? = gymfile.exportXcargs,
1813
1813
  skipBuildArchive: Bool? = gymfile.skipBuildArchive,
1814
1814
  skipArchive: Bool? = gymfile.skipArchive,
1815
- buildPath: String? = gymfile.buildPath,
1816
- archivePath: String? = gymfile.archivePath,
1817
- derivedDataPath: String? = gymfile.derivedDataPath,
1815
+ buildPath: Any? = gymfile.buildPath,
1816
+ archivePath: Any? = gymfile.archivePath,
1817
+ derivedDataPath: Any? = gymfile.derivedDataPath,
1818
1818
  resultBundle: Bool = gymfile.resultBundle,
1819
- resultBundlePath: String? = gymfile.resultBundlePath,
1820
- buildlogPath: String = gymfile.buildlogPath,
1821
- sdk: String? = gymfile.sdk,
1822
- toolchain: String? = gymfile.toolchain,
1823
- destination: String? = gymfile.destination,
1824
- exportTeamId: String? = gymfile.exportTeamId,
1825
- xcargs: String? = gymfile.xcargs,
1826
- xcconfig: String? = gymfile.xcconfig,
1827
- suppressXcodeOutput: String? = gymfile.suppressXcodeOutput,
1828
- disableXcpretty: String? = gymfile.disableXcpretty,
1829
- xcprettyTestFormat: String? = gymfile.xcprettyTestFormat,
1830
- xcprettyFormatter: String? = gymfile.xcprettyFormatter,
1831
- xcprettyReportJunit: String? = gymfile.xcprettyReportJunit,
1832
- xcprettyReportHtml: String? = gymfile.xcprettyReportHtml,
1833
- xcprettyReportJson: String? = gymfile.xcprettyReportJson,
1834
- analyzeBuildTime: String? = gymfile.analyzeBuildTime,
1835
- xcprettyUtf: String? = gymfile.xcprettyUtf,
1819
+ resultBundlePath: Any? = gymfile.resultBundlePath,
1820
+ buildlogPath: Any = gymfile.buildlogPath,
1821
+ sdk: Any? = gymfile.sdk,
1822
+ toolchain: Any? = gymfile.toolchain,
1823
+ destination: Any? = gymfile.destination,
1824
+ exportTeamId: Any? = gymfile.exportTeamId,
1825
+ xcargs: Any? = gymfile.xcargs,
1826
+ xcconfig: Any? = gymfile.xcconfig,
1827
+ suppressXcodeOutput: Bool? = gymfile.suppressXcodeOutput,
1828
+ disableXcpretty: Any? = gymfile.disableXcpretty,
1829
+ xcprettyTestFormat: Any? = gymfile.xcprettyTestFormat,
1830
+ xcprettyFormatter: Any? = gymfile.xcprettyFormatter,
1831
+ xcprettyReportJunit: Any? = gymfile.xcprettyReportJunit,
1832
+ xcprettyReportHtml: Any? = gymfile.xcprettyReportHtml,
1833
+ xcprettyReportJson: Any? = gymfile.xcprettyReportJson,
1834
+ analyzeBuildTime: Any? = gymfile.analyzeBuildTime,
1835
+ xcprettyUtf: Any? = gymfile.xcprettyUtf,
1836
1836
  skipProfileDetection: Bool = gymfile.skipProfileDetection) {
1837
1837
  let command = RubyCommand(commandID: "", methodName: "gym", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
1838
1838
  RubyCommand.Argument(name: "project", value: project),
@@ -2007,7 +2007,7 @@ func importCertificate(certificatePath: String,
2007
2007
  RubyCommand.Argument(name: "log_output", value: logOutput)])
2008
2008
  _ = runner.executeCommand(command)
2009
2009
  }
2010
- @discardableResult func incrementBuildNumber(buildNumber: String? = nil,
2010
+ @discardableResult func incrementBuildNumber(buildNumber: Any? = nil,
2011
2011
  xcodeproj: String? = nil) -> String {
2012
2012
  let command = RubyCommand(commandID: "", methodName: "increment_build_number", className: nil, args: [RubyCommand.Argument(name: "build_number", value: buildNumber),
2013
2013
  RubyCommand.Argument(name: "xcodeproj", value: xcodeproj)])
@@ -2023,7 +2023,7 @@ func importCertificate(certificatePath: String,
2023
2023
  }
2024
2024
  func installOnDevice(extra: String? = nil,
2025
2025
  deviceId: String? = nil,
2026
- skipWifi: String? = nil,
2026
+ skipWifi: Any? = nil,
2027
2027
  ipa: String? = nil) {
2028
2028
  let command = RubyCommand(commandID: "", methodName: "install_on_device", className: nil, args: [RubyCommand.Argument(name: "extra", value: extra),
2029
2029
  RubyCommand.Argument(name: "device_id", value: deviceId),
@@ -2057,8 +2057,8 @@ func ipa(workspace: String? = nil,
2057
2057
  project: String? = nil,
2058
2058
  configuration: String? = nil,
2059
2059
  scheme: String? = nil,
2060
- clean: String? = nil,
2061
- archive: String? = nil,
2060
+ clean: Any? = nil,
2061
+ archive: Any? = nil,
2062
2062
  destination: String? = nil,
2063
2063
  embed: String? = nil,
2064
2064
  identity: String? = nil,
@@ -2121,7 +2121,7 @@ func jira(url: String,
2121
2121
  version: String? = nil,
2122
2122
  platform: String = "ios",
2123
2123
  initialBuildNumber: Int = 1,
2124
- teamId: String? = nil,
2124
+ teamId: Any? = nil,
2125
2125
  teamName: String? = nil) -> Int {
2126
2126
  let command = RubyCommand(commandID: "", methodName: "latest_testflight_build_number", className: nil, args: [RubyCommand.Argument(name: "live", value: live),
2127
2127
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
@@ -2157,7 +2157,7 @@ func mailgun(mailgunSandboxDomain: String? = nil,
2157
2157
  ciBuildLink: String? = nil,
2158
2158
  templatePath: String? = nil,
2159
2159
  replyTo: String? = nil,
2160
- attachment: String? = nil,
2160
+ attachment: Any? = nil,
2161
2161
  customPlaceholders: [String : Any] = [:]) {
2162
2162
  let command = RubyCommand(commandID: "", methodName: "mailgun", className: nil, args: [RubyCommand.Argument(name: "mailgun_sandbox_domain", value: mailgunSandboxDomain),
2163
2163
  RubyCommand.Argument(name: "mailgun_sandbox_postmaster", value: mailgunSandboxPostmaster),
@@ -2183,31 +2183,31 @@ func makeChangelogFromJenkins(fallbackChangelog: String = "",
2183
2183
  RubyCommand.Argument(name: "include_commit_body", value: includeCommitBody)])
2184
2184
  _ = runner.executeCommand(command)
2185
2185
  }
2186
- func match(type: String = matchfile.type,
2186
+ func match(type: Any = matchfile.type,
2187
2187
  readonly: Bool = matchfile.readonly,
2188
2188
  appIdentifier: [String] = matchfile.appIdentifier,
2189
- username: String = matchfile.username,
2190
- teamId: String? = matchfile.teamId,
2191
- teamName: String? = matchfile.teamName,
2192
- storageMode: String = matchfile.storageMode,
2193
- gitUrl: String = matchfile.gitUrl,
2194
- gitBranch: String = matchfile.gitBranch,
2195
- gitFullName: String? = matchfile.gitFullName,
2196
- gitUserEmail: String? = matchfile.gitUserEmail,
2189
+ username: Any = matchfile.username,
2190
+ teamId: Any? = matchfile.teamId,
2191
+ teamName: Any? = matchfile.teamName,
2192
+ storageMode: Any = matchfile.storageMode,
2193
+ gitUrl: Any = matchfile.gitUrl,
2194
+ gitBranch: Any = matchfile.gitBranch,
2195
+ gitFullName: Any? = matchfile.gitFullName,
2196
+ gitUserEmail: Any? = matchfile.gitUserEmail,
2197
2197
  shallowClone: Bool = matchfile.shallowClone,
2198
2198
  cloneBranchDirectly: Bool = matchfile.cloneBranchDirectly,
2199
- googleCloudBucketName: String? = matchfile.googleCloudBucketName,
2200
- googleCloudKeysFile: String? = matchfile.googleCloudKeysFile,
2201
- googleCloudProjectId: String? = matchfile.googleCloudProjectId,
2202
- keychainName: String = matchfile.keychainName,
2203
- keychainPassword: String? = matchfile.keychainPassword,
2199
+ googleCloudBucketName: Any? = matchfile.googleCloudBucketName,
2200
+ googleCloudKeysFile: Any? = matchfile.googleCloudKeysFile,
2201
+ googleCloudProjectId: Any? = matchfile.googleCloudProjectId,
2202
+ keychainName: Any = matchfile.keychainName,
2203
+ keychainPassword: Any? = matchfile.keychainPassword,
2204
2204
  force: Bool = matchfile.force,
2205
2205
  forceForNewDevices: Bool = matchfile.forceForNewDevices,
2206
2206
  skipConfirmation: Bool = matchfile.skipConfirmation,
2207
2207
  skipDocs: Bool = matchfile.skipDocs,
2208
- platform: String = matchfile.platform,
2209
- templateName: String? = matchfile.templateName,
2210
- outputPath: String? = matchfile.outputPath,
2208
+ platform: Any = matchfile.platform,
2209
+ templateName: Any? = matchfile.templateName,
2210
+ outputPath: Any? = matchfile.outputPath,
2211
2211
  verbose: Bool = matchfile.verbose) {
2212
2212
  let command = RubyCommand(commandID: "", methodName: "match", className: nil, args: [RubyCommand.Argument(name: "type", value: type),
2213
2213
  RubyCommand.Argument(name: "readonly", value: readonly),
@@ -2313,25 +2313,25 @@ func notify() {
2313
2313
  let command = RubyCommand(commandID: "", methodName: "notify", className: nil, args: [])
2314
2314
  _ = runner.executeCommand(command)
2315
2315
  }
2316
- @discardableResult func numberOfCommits(all: String? = nil) -> Int {
2316
+ @discardableResult func numberOfCommits(all: Any? = nil) -> Int {
2317
2317
  let command = RubyCommand(commandID: "", methodName: "number_of_commits", className: nil, args: [RubyCommand.Argument(name: "all", value: all)])
2318
2318
  return parseInt(fromString: runner.executeCommand(command))
2319
2319
  }
2320
2320
  func oclint(oclintPath: String = "oclint",
2321
2321
  compileCommands: String = "compile_commands.json",
2322
- selectReqex: String? = nil,
2323
- selectRegex: String? = nil,
2324
- excludeRegex: String? = nil,
2322
+ selectReqex: Any? = nil,
2323
+ selectRegex: Any? = nil,
2324
+ excludeRegex: Any? = nil,
2325
2325
  reportType: String = "html",
2326
2326
  reportPath: String? = nil,
2327
2327
  listEnabledRules: Bool = false,
2328
2328
  rc: String? = nil,
2329
- thresholds: String? = nil,
2330
- enableRules: String? = nil,
2331
- disableRules: String? = nil,
2332
- maxPriority1: String? = nil,
2333
- maxPriority2: String? = nil,
2334
- maxPriority3: String? = nil,
2329
+ thresholds: Any? = nil,
2330
+ enableRules: Any? = nil,
2331
+ disableRules: Any? = nil,
2332
+ maxPriority1: Any? = nil,
2333
+ maxPriority2: Any? = nil,
2334
+ maxPriority3: Any? = nil,
2335
2335
  enableClangStaticAnalyzer: Bool = false,
2336
2336
  enableGlobalAnalysis: Bool = false,
2337
2337
  allowDuplicatedViolations: Bool = false,
@@ -2394,7 +2394,7 @@ func pem(development: Bool = false,
2394
2394
  p12Password: String,
2395
2395
  pemName: String? = nil,
2396
2396
  outputPath: String = ".",
2397
- newProfile: String? = nil) {
2397
+ newProfile: Any? = nil) {
2398
2398
  let command = RubyCommand(commandID: "", methodName: "pem", className: nil, args: [RubyCommand.Argument(name: "development", value: development),
2399
2399
  RubyCommand.Argument(name: "website_push", value: websitePush),
2400
2400
  RubyCommand.Argument(name: "generate_p12", value: generateP12),
@@ -2434,7 +2434,7 @@ func pilot(username: String,
2434
2434
  email: String? = nil,
2435
2435
  testersFilePath: String = "./testers.csv",
2436
2436
  groups: [String]? = nil,
2437
- teamId: String? = nil,
2437
+ teamId: Any? = nil,
2438
2438
  teamName: String? = nil,
2439
2439
  devPortalTeamId: String? = nil,
2440
2440
  itcProvider: String? = nil,
@@ -2559,13 +2559,13 @@ func podioItem(clientId: String,
2559
2559
  RubyCommand.Argument(name: "other_fields", value: otherFields)])
2560
2560
  _ = runner.executeCommand(command)
2561
2561
  }
2562
- func precheck(appIdentifier: String = precheckfile.appIdentifier,
2563
- username: String = precheckfile.username,
2564
- teamId: String? = precheckfile.teamId,
2565
- teamName: String? = precheckfile.teamName,
2566
- defaultRuleLevel: String = precheckfile.defaultRuleLevel,
2562
+ func precheck(appIdentifier: Any = precheckfile.appIdentifier,
2563
+ username: Any = precheckfile.username,
2564
+ teamId: Any? = precheckfile.teamId,
2565
+ teamName: Any? = precheckfile.teamName,
2566
+ defaultRuleLevel: Any = precheckfile.defaultRuleLevel,
2567
2567
  includeInAppPurchases: Bool = precheckfile.includeInAppPurchases,
2568
- freeStuffInIap: String? = precheckfile.freeStuffInIap) {
2568
+ freeStuffInIap: Any? = precheckfile.freeStuffInIap) {
2569
2569
  let command = RubyCommand(commandID: "", methodName: "precheck", className: nil, args: [RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
2570
2570
  RubyCommand.Argument(name: "username", value: username),
2571
2571
  RubyCommand.Argument(name: "team_id", value: teamId),
@@ -2595,7 +2595,7 @@ func produce(username: String,
2595
2595
  skipDevcenter: Bool = false,
2596
2596
  teamId: String? = nil,
2597
2597
  teamName: String? = nil,
2598
- itcTeamId: String? = nil,
2598
+ itcTeamId: Any? = nil,
2599
2599
  itcTeamName: String? = nil) {
2600
2600
  let command = RubyCommand(commandID: "", methodName: "produce", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
2601
2601
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
@@ -2693,11 +2693,11 @@ func registerDevices(devices: [String : Any]? = nil,
2693
2693
  RubyCommand.Argument(name: "platform", value: platform)])
2694
2694
  _ = runner.executeCommand(command)
2695
2695
  }
2696
- func resetGitRepo(files: String? = nil,
2696
+ func resetGitRepo(files: Any? = nil,
2697
2697
  force: Bool = false,
2698
2698
  skipClean: Bool = false,
2699
2699
  disregardGitignore: Bool = true,
2700
- exclude: String? = nil) {
2700
+ exclude: Any? = nil) {
2701
2701
  let command = RubyCommand(commandID: "", methodName: "reset_git_repo", className: nil, args: [RubyCommand.Argument(name: "files", value: files),
2702
2702
  RubyCommand.Argument(name: "force", value: force),
2703
2703
  RubyCommand.Argument(name: "skip_clean", value: skipClean),
@@ -2714,13 +2714,13 @@ func resetSimulatorContents(ios: [String]? = nil,
2714
2714
  func resign(ipa: String,
2715
2715
  signingIdentity: String,
2716
2716
  entitlements: String? = nil,
2717
- provisioningProfile: String,
2717
+ provisioningProfile: Any,
2718
2718
  version: String? = nil,
2719
2719
  displayName: String? = nil,
2720
2720
  shortVersion: String? = nil,
2721
2721
  bundleVersion: String? = nil,
2722
2722
  bundleId: String? = nil,
2723
- useAppEntitlements: String? = nil,
2723
+ useAppEntitlements: Any? = nil,
2724
2724
  keychainPath: String? = nil) {
2725
2725
  let command = RubyCommand(commandID: "", methodName: "resign", className: nil, args: [RubyCommand.Argument(name: "ipa", value: ipa),
2726
2726
  RubyCommand.Argument(name: "signing_identity", value: signingIdentity),
@@ -2774,10 +2774,10 @@ func runTests(workspace: String? = nil,
2774
2774
  prelaunchSimulator: Bool? = nil,
2775
2775
  reinstallApp: Bool = false,
2776
2776
  appIdentifier: String? = nil,
2777
- onlyTesting: String? = nil,
2778
- skipTesting: String? = nil,
2777
+ onlyTesting: Any? = nil,
2778
+ skipTesting: Any? = nil,
2779
2779
  xctestrun: String? = nil,
2780
- toolchain: String? = nil,
2780
+ toolchain: Any? = nil,
2781
2781
  clean: Bool = false,
2782
2782
  codeCoverage: Bool? = nil,
2783
2783
  addressSanitizer: Bool? = nil,
@@ -2789,7 +2789,7 @@ func runTests(workspace: String? = nil,
2789
2789
  outputFiles: String? = nil,
2790
2790
  buildlogPath: String = "~/Library/Logs/scan",
2791
2791
  includeSimulatorLogs: Bool = false,
2792
- suppressXcodeOutput: String? = nil,
2792
+ suppressXcodeOutput: Bool? = nil,
2793
2793
  formatter: String? = nil,
2794
2794
  xcprettyArgs: String? = nil,
2795
2795
  derivedDataPath: String? = nil,
@@ -2813,7 +2813,7 @@ func runTests(workspace: String? = nil,
2813
2813
  slackIconUrl: String = "https://s3-eu-west-1.amazonaws.com/fastlane.tools/fastlane.png",
2814
2814
  skipSlack: Bool = false,
2815
2815
  slackOnlyOnFailure: Bool = false,
2816
- destination: String? = nil,
2816
+ destination: Any? = nil,
2817
2817
  customReportFileName: String? = nil,
2818
2818
  xcodebuildCommand: String = "env NSUnbufferedIO=YES xcodebuild",
2819
2819
  failBuild: Bool = true) {
@@ -2907,42 +2907,42 @@ func s3(ipa: String? = nil,
2907
2907
  RubyCommand.Argument(name: "acl", value: acl)])
2908
2908
  _ = runner.executeCommand(command)
2909
2909
  }
2910
- func say(text: String,
2910
+ func say(text: Any,
2911
2911
  mute: Bool = false) {
2912
2912
  let command = RubyCommand(commandID: "", methodName: "say", className: nil, args: [RubyCommand.Argument(name: "text", value: text),
2913
2913
  RubyCommand.Argument(name: "mute", value: mute)])
2914
2914
  _ = runner.executeCommand(command)
2915
2915
  }
2916
- func scan(workspace: String? = scanfile.workspace,
2917
- project: String? = scanfile.project,
2918
- scheme: String? = scanfile.scheme,
2919
- device: String? = scanfile.device,
2916
+ func scan(workspace: Any? = scanfile.workspace,
2917
+ project: Any? = scanfile.project,
2918
+ scheme: Any? = scanfile.scheme,
2919
+ device: Any? = scanfile.device,
2920
2920
  devices: [String]? = scanfile.devices,
2921
2921
  skipDetectDevices: Bool = scanfile.skipDetectDevices,
2922
2922
  forceQuitSimulator: Bool = scanfile.forceQuitSimulator,
2923
2923
  resetSimulator: Bool = scanfile.resetSimulator,
2924
2924
  prelaunchSimulator: Bool? = scanfile.prelaunchSimulator,
2925
2925
  reinstallApp: Bool = scanfile.reinstallApp,
2926
- appIdentifier: String? = scanfile.appIdentifier,
2927
- onlyTesting: String? = scanfile.onlyTesting,
2928
- skipTesting: String? = scanfile.skipTesting,
2929
- xctestrun: String? = scanfile.xctestrun,
2930
- toolchain: String? = scanfile.toolchain,
2926
+ appIdentifier: Any? = scanfile.appIdentifier,
2927
+ onlyTesting: Any? = scanfile.onlyTesting,
2928
+ skipTesting: Any? = scanfile.skipTesting,
2929
+ xctestrun: Any? = scanfile.xctestrun,
2930
+ toolchain: Any? = scanfile.toolchain,
2931
2931
  clean: Bool = scanfile.clean,
2932
2932
  codeCoverage: Bool? = scanfile.codeCoverage,
2933
2933
  addressSanitizer: Bool? = scanfile.addressSanitizer,
2934
2934
  threadSanitizer: Bool? = scanfile.threadSanitizer,
2935
2935
  openReport: Bool = scanfile.openReport,
2936
- outputDirectory: String = scanfile.outputDirectory,
2937
- outputStyle: String? = scanfile.outputStyle,
2938
- outputTypes: String = scanfile.outputTypes,
2939
- outputFiles: String? = scanfile.outputFiles,
2940
- buildlogPath: String = scanfile.buildlogPath,
2936
+ outputDirectory: Any = scanfile.outputDirectory,
2937
+ outputStyle: Any? = scanfile.outputStyle,
2938
+ outputTypes: Any = scanfile.outputTypes,
2939
+ outputFiles: Any? = scanfile.outputFiles,
2940
+ buildlogPath: Any = scanfile.buildlogPath,
2941
2941
  includeSimulatorLogs: Bool = scanfile.includeSimulatorLogs,
2942
- suppressXcodeOutput: String? = scanfile.suppressXcodeOutput,
2943
- formatter: String? = scanfile.formatter,
2944
- xcprettyArgs: String? = scanfile.xcprettyArgs,
2945
- derivedDataPath: String? = scanfile.derivedDataPath,
2942
+ suppressXcodeOutput: Bool? = scanfile.suppressXcodeOutput,
2943
+ formatter: Any? = scanfile.formatter,
2944
+ xcprettyArgs: Any? = scanfile.xcprettyArgs,
2945
+ derivedDataPath: Any? = scanfile.derivedDataPath,
2946
2946
  shouldZipBuildProducts: Bool = scanfile.shouldZipBuildProducts,
2947
2947
  resultBundle: Bool = scanfile.resultBundle,
2948
2948
  useClangReportName: Bool = scanfile.useClangReportName,
@@ -2951,21 +2951,21 @@ func scan(workspace: String? = scanfile.workspace,
2951
2951
  skipBuild: Bool = scanfile.skipBuild,
2952
2952
  testWithoutBuilding: Bool? = scanfile.testWithoutBuilding,
2953
2953
  buildForTesting: Bool? = scanfile.buildForTesting,
2954
- sdk: String? = scanfile.sdk,
2955
- configuration: String? = scanfile.configuration,
2956
- xcargs: String? = scanfile.xcargs,
2957
- xcconfig: String? = scanfile.xcconfig,
2958
- slackUrl: String? = scanfile.slackUrl,
2959
- slackChannel: String? = scanfile.slackChannel,
2960
- slackMessage: String? = scanfile.slackMessage,
2954
+ sdk: Any? = scanfile.sdk,
2955
+ configuration: Any? = scanfile.configuration,
2956
+ xcargs: Any? = scanfile.xcargs,
2957
+ xcconfig: Any? = scanfile.xcconfig,
2958
+ slackUrl: Any? = scanfile.slackUrl,
2959
+ slackChannel: Any? = scanfile.slackChannel,
2960
+ slackMessage: Any? = scanfile.slackMessage,
2961
2961
  slackUseWebhookConfiguredUsernameAndIcon: Bool = scanfile.slackUseWebhookConfiguredUsernameAndIcon,
2962
- slackUsername: String = scanfile.slackUsername,
2963
- slackIconUrl: String = scanfile.slackIconUrl,
2962
+ slackUsername: Any = scanfile.slackUsername,
2963
+ slackIconUrl: Any = scanfile.slackIconUrl,
2964
2964
  skipSlack: Bool = scanfile.skipSlack,
2965
2965
  slackOnlyOnFailure: Bool = scanfile.slackOnlyOnFailure,
2966
- destination: String? = scanfile.destination,
2967
- customReportFileName: String? = scanfile.customReportFileName,
2968
- xcodebuildCommand: String = scanfile.xcodebuildCommand,
2966
+ destination: Any? = scanfile.destination,
2967
+ customReportFileName: Any? = scanfile.customReportFileName,
2968
+ xcodebuildCommand: Any = scanfile.xcodebuildCommand,
2969
2969
  failBuild: Bool = scanfile.failBuild) {
2970
2970
  let command = RubyCommand(commandID: "", methodName: "scan", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
2971
2971
  RubyCommand.Argument(name: "project", value: project),
@@ -3037,23 +3037,23 @@ func scp(username: String,
3037
3037
  RubyCommand.Argument(name: "download", value: download)])
3038
3038
  _ = runner.executeCommand(command)
3039
3039
  }
3040
- func screengrab(androidHome: String? = screengrabfile.androidHome,
3041
- buildToolsVersion: String? = screengrabfile.buildToolsVersion,
3040
+ func screengrab(androidHome: Any? = screengrabfile.androidHome,
3041
+ buildToolsVersion: Any? = screengrabfile.buildToolsVersion,
3042
3042
  locales: [String] = screengrabfile.locales,
3043
3043
  clearPreviousScreenshots: Bool = screengrabfile.clearPreviousScreenshots,
3044
- outputDirectory: String = screengrabfile.outputDirectory,
3044
+ outputDirectory: Any = screengrabfile.outputDirectory,
3045
3045
  skipOpenSummary: Bool = screengrabfile.skipOpenSummary,
3046
- appPackageName: String = screengrabfile.appPackageName,
3047
- testsPackageName: String? = screengrabfile.testsPackageName,
3046
+ appPackageName: Any = screengrabfile.appPackageName,
3047
+ testsPackageName: Any? = screengrabfile.testsPackageName,
3048
3048
  useTestsInPackages: [String]? = screengrabfile.useTestsInPackages,
3049
3049
  useTestsInClasses: [String]? = screengrabfile.useTestsInClasses,
3050
3050
  launchArguments: [String]? = screengrabfile.launchArguments,
3051
- testInstrumentationRunner: String = screengrabfile.testInstrumentationRunner,
3052
- endingLocale: String = screengrabfile.endingLocale,
3053
- appApkPath: String? = screengrabfile.appApkPath,
3054
- testsApkPath: String? = screengrabfile.testsApkPath,
3055
- specificDevice: String? = screengrabfile.specificDevice,
3056
- deviceType: String = screengrabfile.deviceType,
3051
+ testInstrumentationRunner: Any = screengrabfile.testInstrumentationRunner,
3052
+ endingLocale: Any = screengrabfile.endingLocale,
3053
+ appApkPath: Any? = screengrabfile.appApkPath,
3054
+ testsApkPath: Any? = screengrabfile.testsApkPath,
3055
+ specificDevice: Any? = screengrabfile.specificDevice,
3056
+ deviceType: Any = screengrabfile.deviceType,
3057
3057
  exitOnTestFailure: Bool = screengrabfile.exitOnTestFailure,
3058
3058
  reinstallApp: Bool = screengrabfile.reinstallApp) {
3059
3059
  let command = RubyCommand(commandID: "", methodName: "screengrab", className: nil, args: [RubyCommand.Argument(name: "android_home", value: androidHome),
@@ -3087,7 +3087,7 @@ func setChangelog(appIdentifier: String,
3087
3087
  username: String,
3088
3088
  version: String? = nil,
3089
3089
  changelog: String? = nil,
3090
- teamId: String? = nil,
3090
+ teamId: Any? = nil,
3091
3091
  teamName: String? = nil,
3092
3092
  platform: String = "ios") {
3093
3093
  let command = RubyCommand(commandID: "", methodName: "set_changelog", className: nil, args: [RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
@@ -3123,7 +3123,7 @@ func setChangelog(appIdentifier: String,
3123
3123
  }
3124
3124
  func setInfoPlistValue(key: String,
3125
3125
  subkey: String? = nil,
3126
- value: String,
3126
+ value: Any,
3127
3127
  path: String,
3128
3128
  outputFileName: String? = nil) {
3129
3129
  let command = RubyCommand(commandID: "", methodName: "set_info_plist_value", className: nil, args: [RubyCommand.Argument(name: "key", value: key),
@@ -3155,7 +3155,7 @@ func setupCircleCi(force: Bool = false) {
3155
3155
  }
3156
3156
  func setupJenkins(force: Bool = false,
3157
3157
  unlockKeychain: Bool = true,
3158
- addKeychainToSearchList: String = "replace",
3158
+ addKeychainToSearchList: Any = "replace",
3159
3159
  setDefaultKeychain: Bool = true,
3160
3160
  keychainPath: String? = nil,
3161
3161
  keychainPassword: String,
@@ -3183,7 +3183,7 @@ func setupTravis(force: Bool = false) {
3183
3183
  }
3184
3184
  @discardableResult func sh(command: String,
3185
3185
  log: Bool = true,
3186
- errorCallback: String? = nil) -> String {
3186
+ errorCallback: Any? = nil) -> String {
3187
3187
  let command = RubyCommand(commandID: "", methodName: "sh", className: nil, args: [RubyCommand.Argument(name: "command", value: command),
3188
3188
  RubyCommand.Argument(name: "log", value: log),
3189
3189
  RubyCommand.Argument(name: "error_callback", value: errorCallback)])
@@ -3206,7 +3206,7 @@ func sigh(adhoc: Bool = false,
3206
3206
  filename: String? = nil,
3207
3207
  skipFetchProfiles: Bool = false,
3208
3208
  skipCertificateVerification: Bool = false,
3209
- platform: String = "ios",
3209
+ platform: Any = "ios",
3210
3210
  readonly: Bool = false,
3211
3211
  templateName: String? = nil) {
3212
3212
  let command = RubyCommand(commandID: "", methodName: "sigh", className: nil, args: [RubyCommand.Argument(name: "adhoc", value: adhoc),
@@ -3297,12 +3297,12 @@ func slather(buildDirectory: String? = nil,
3297
3297
  simpleOutput: Bool? = nil,
3298
3298
  gutterJson: Bool? = nil,
3299
3299
  coberturaXml: Bool? = nil,
3300
- llvmCov: String? = nil,
3300
+ llvmCov: Any? = nil,
3301
3301
  html: Bool? = nil,
3302
3302
  show: Bool = false,
3303
3303
  sourceDirectory: String? = nil,
3304
3304
  outputDirectory: String? = nil,
3305
- ignore: String? = nil,
3305
+ ignore: Any? = nil,
3306
3306
  verbose: Bool? = nil,
3307
3307
  useBundleExec: Bool = false,
3308
3308
  binaryBasename: Bool = false,
@@ -3341,38 +3341,38 @@ func slather(buildDirectory: String? = nil,
3341
3341
  RubyCommand.Argument(name: "decimals", value: decimals)])
3342
3342
  _ = runner.executeCommand(command)
3343
3343
  }
3344
- func snapshot(workspace: String? = snapshotfile.workspace,
3345
- project: String? = snapshotfile.project,
3346
- xcargs: String? = snapshotfile.xcargs,
3347
- xcconfig: String? = snapshotfile.xcconfig,
3344
+ func snapshot(workspace: Any? = snapshotfile.workspace,
3345
+ project: Any? = snapshotfile.project,
3346
+ xcargs: Any? = snapshotfile.xcargs,
3347
+ xcconfig: Any? = snapshotfile.xcconfig,
3348
3348
  devices: [String]? = snapshotfile.devices,
3349
3349
  languages: [String] = snapshotfile.languages,
3350
3350
  launchArguments: [String] = snapshotfile.launchArguments,
3351
- outputDirectory: String = snapshotfile.outputDirectory,
3351
+ outputDirectory: Any = snapshotfile.outputDirectory,
3352
3352
  outputSimulatorLogs: Bool = snapshotfile.outputSimulatorLogs,
3353
- iosVersion: String? = snapshotfile.iosVersion,
3353
+ iosVersion: Any? = snapshotfile.iosVersion,
3354
3354
  skipOpenSummary: Bool = snapshotfile.skipOpenSummary,
3355
3355
  skipHelperVersionCheck: Bool = snapshotfile.skipHelperVersionCheck,
3356
3356
  clearPreviousScreenshots: Bool = snapshotfile.clearPreviousScreenshots,
3357
3357
  reinstallApp: Bool = snapshotfile.reinstallApp,
3358
3358
  eraseSimulator: Bool = snapshotfile.eraseSimulator,
3359
3359
  localizeSimulator: Bool = snapshotfile.localizeSimulator,
3360
- appIdentifier: String? = snapshotfile.appIdentifier,
3360
+ appIdentifier: Any? = snapshotfile.appIdentifier,
3361
3361
  addPhotos: [String]? = snapshotfile.addPhotos,
3362
3362
  addVideos: [String]? = snapshotfile.addVideos,
3363
- buildlogPath: String = snapshotfile.buildlogPath,
3363
+ buildlogPath: Any = snapshotfile.buildlogPath,
3364
3364
  clean: Bool = snapshotfile.clean,
3365
3365
  testWithoutBuilding: Bool? = snapshotfile.testWithoutBuilding,
3366
- configuration: String? = snapshotfile.configuration,
3367
- xcprettyArgs: String? = snapshotfile.xcprettyArgs,
3368
- sdk: String? = snapshotfile.sdk,
3369
- scheme: String? = snapshotfile.scheme,
3366
+ configuration: Any? = snapshotfile.configuration,
3367
+ xcprettyArgs: Any? = snapshotfile.xcprettyArgs,
3368
+ sdk: Any? = snapshotfile.sdk,
3369
+ scheme: Any? = snapshotfile.scheme,
3370
3370
  numberOfRetries: Int = snapshotfile.numberOfRetries,
3371
3371
  stopAfterFirstError: Bool = snapshotfile.stopAfterFirstError,
3372
- derivedDataPath: String? = snapshotfile.derivedDataPath,
3372
+ derivedDataPath: Any? = snapshotfile.derivedDataPath,
3373
3373
  resultBundle: Bool = snapshotfile.resultBundle,
3374
- testTargetName: String? = snapshotfile.testTargetName,
3375
- namespaceLogFiles: String? = snapshotfile.namespaceLogFiles,
3374
+ testTargetName: Any? = snapshotfile.testTargetName,
3375
+ namespaceLogFiles: Any? = snapshotfile.namespaceLogFiles,
3376
3376
  concurrentSimulators: Bool = snapshotfile.concurrentSimulators) {
3377
3377
  let command = RubyCommand(commandID: "", methodName: "snapshot", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
3378
3378
  RubyCommand.Argument(name: "project", value: project),
@@ -3419,7 +3419,10 @@ func sonar(projectConfigurationPath: String? = nil,
3419
3419
  sonarRunnerArgs: String? = nil,
3420
3420
  sonarLogin: String? = nil,
3421
3421
  sonarUrl: String? = nil,
3422
- branchName: String? = nil) {
3422
+ branchName: String? = nil,
3423
+ pullRequestBranch: String? = nil,
3424
+ pullRequestBase: String? = nil,
3425
+ pullRequestKey: String? = nil) {
3423
3426
  let command = RubyCommand(commandID: "", methodName: "sonar", className: nil, args: [RubyCommand.Argument(name: "project_configuration_path", value: projectConfigurationPath),
3424
3427
  RubyCommand.Argument(name: "project_key", value: projectKey),
3425
3428
  RubyCommand.Argument(name: "project_name", value: projectName),
@@ -3430,7 +3433,10 @@ func sonar(projectConfigurationPath: String? = nil,
3430
3433
  RubyCommand.Argument(name: "sonar_runner_args", value: sonarRunnerArgs),
3431
3434
  RubyCommand.Argument(name: "sonar_login", value: sonarLogin),
3432
3435
  RubyCommand.Argument(name: "sonar_url", value: sonarUrl),
3433
- RubyCommand.Argument(name: "branch_name", value: branchName)])
3436
+ RubyCommand.Argument(name: "branch_name", value: branchName),
3437
+ RubyCommand.Argument(name: "pull_request_branch", value: pullRequestBranch),
3438
+ RubyCommand.Argument(name: "pull_request_base", value: pullRequestBase),
3439
+ RubyCommand.Argument(name: "pull_request_key", value: pullRequestKey)])
3434
3440
  _ = runner.executeCommand(command)
3435
3441
  }
3436
3442
  func spaceshipLogs(latest: Bool = true,
@@ -3557,12 +3563,12 @@ func supply(packageName: String,
3557
3563
  RubyCommand.Argument(name: "obb_patch_file_size", value: obbPatchFileSize)])
3558
3564
  _ = runner.executeCommand(command)
3559
3565
  }
3560
- func swiftlint(mode: String = "lint",
3566
+ func swiftlint(mode: Any = "lint",
3561
3567
  path: String? = nil,
3562
3568
  outputFile: String? = nil,
3563
3569
  configFile: String? = nil,
3564
3570
  strict: Bool = false,
3565
- files: String? = nil,
3571
+ files: Any? = nil,
3566
3572
  ignoreExitStatus: Bool = false,
3567
3573
  reporter: String? = nil,
3568
3574
  quiet: Bool = false,
@@ -3605,7 +3611,7 @@ func syncCodeSigning(type: String = "development",
3605
3611
  forceForNewDevices: Bool = false,
3606
3612
  skipConfirmation: Bool = false,
3607
3613
  skipDocs: Bool = false,
3608
- platform: String = "ios",
3614
+ platform: Any = "ios",
3609
3615
  templateName: String? = nil,
3610
3616
  outputPath: String? = nil,
3611
3617
  verbose: Bool = false) {
@@ -3694,7 +3700,7 @@ func testflight(username: String,
3694
3700
  email: String? = nil,
3695
3701
  testersFilePath: String = "./testers.csv",
3696
3702
  groups: [String]? = nil,
3697
- teamId: String? = nil,
3703
+ teamId: Any? = nil,
3698
3704
  teamName: String? = nil,
3699
3705
  devPortalTeamId: String? = nil,
3700
3706
  itcProvider: String? = nil,
@@ -3776,7 +3782,7 @@ func unlockKeychain(path: String = "login",
3776
3782
  _ = runner.executeCommand(command)
3777
3783
  }
3778
3784
  func updateAppGroupIdentifiers(entitlementsFile: String,
3779
- appGroupIdentifiers: String) {
3785
+ appGroupIdentifiers: Any) {
3780
3786
  let command = RubyCommand(commandID: "", methodName: "update_app_group_identifiers", className: nil, args: [RubyCommand.Argument(name: "entitlements_file", value: entitlementsFile),
3781
3787
  RubyCommand.Argument(name: "app_group_identifiers", value: appGroupIdentifiers)])
3782
3788
  _ = runner.executeCommand(command)
@@ -3798,7 +3804,7 @@ func updateFastlane(nightly: Bool = false,
3798
3804
  _ = runner.executeCommand(command)
3799
3805
  }
3800
3806
  func updateIcloudContainerIdentifiers(entitlementsFile: String,
3801
- icloudContainerIdentifiers: String) {
3807
+ icloudContainerIdentifiers: Any) {
3802
3808
  let command = RubyCommand(commandID: "", methodName: "update_icloud_container_identifiers", className: nil, args: [RubyCommand.Argument(name: "entitlements_file", value: entitlementsFile),
3803
3809
  RubyCommand.Argument(name: "icloud_container_identifiers", value: icloudContainerIdentifiers)])
3804
3810
  _ = runner.executeCommand(command)
@@ -3808,7 +3814,7 @@ func updateInfoPlist(xcodeproj: String? = nil,
3808
3814
  scheme: String? = nil,
3809
3815
  appIdentifier: String? = nil,
3810
3816
  displayName: String? = nil,
3811
- block: String? = nil) {
3817
+ block: Any? = nil) {
3812
3818
  let command = RubyCommand(commandID: "", methodName: "update_info_plist", className: nil, args: [RubyCommand.Argument(name: "xcodeproj", value: xcodeproj),
3813
3819
  RubyCommand.Argument(name: "plist_path", value: plistPath),
3814
3820
  RubyCommand.Argument(name: "scheme", value: scheme),
@@ -3818,7 +3824,7 @@ func updateInfoPlist(xcodeproj: String? = nil,
3818
3824
  _ = runner.executeCommand(command)
3819
3825
  }
3820
3826
  func updatePlist(plistPath: String? = nil,
3821
- block: String) {
3827
+ block: Any) {
3822
3828
  let command = RubyCommand(commandID: "", methodName: "update_plist", className: nil, args: [RubyCommand.Argument(name: "plist_path", value: plistPath),
3823
3829
  RubyCommand.Argument(name: "block", value: block)])
3824
3830
  _ = runner.executeCommand(command)
@@ -3833,9 +3839,9 @@ func updateProjectCodeSigning(path: String,
3833
3839
  }
3834
3840
  func updateProjectProvisioning(xcodeproj: String? = nil,
3835
3841
  profile: String,
3836
- targetFilter: String? = nil,
3842
+ targetFilter: Any? = nil,
3837
3843
  buildConfigurationFilter: String? = nil,
3838
- buildConfiguration: String? = nil,
3844
+ buildConfiguration: Any? = nil,
3839
3845
  certificate: String = "/tmp/AppleIncRootCertificate.cer",
3840
3846
  codeSigningIdentity: String? = nil) {
3841
3847
  let command = RubyCommand(commandID: "", methodName: "update_project_provisioning", className: nil, args: [RubyCommand.Argument(name: "xcodeproj", value: xcodeproj),
@@ -3870,8 +3876,8 @@ func updateUrbanAirshipConfiguration(plistPath: String,
3870
3876
  _ = runner.executeCommand(command)
3871
3877
  }
3872
3878
  func updateUrlSchemes(path: String,
3873
- urlSchemes: String? = nil,
3874
- updateUrlSchemes: String? = nil) {
3879
+ urlSchemes: Any? = nil,
3880
+ updateUrlSchemes: Any? = nil) {
3875
3881
  let command = RubyCommand(commandID: "", methodName: "update_url_schemes", className: nil, args: [RubyCommand.Argument(name: "path", value: path),
3876
3882
  RubyCommand.Argument(name: "url_schemes", value: urlSchemes),
3877
3883
  RubyCommand.Argument(name: "update_url_schemes", value: updateUrlSchemes)])
@@ -3899,7 +3905,7 @@ func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/api/0",
3899
3905
  orgSlug: String,
3900
3906
  projectSlug: String,
3901
3907
  dsymPath: String? = nil,
3902
- dsymPaths: String? = nil) {
3908
+ dsymPaths: Any? = nil) {
3903
3909
  let command = RubyCommand(commandID: "", methodName: "upload_symbols_to_sentry", className: nil, args: [RubyCommand.Argument(name: "api_host", value: apiHost),
3904
3910
  RubyCommand.Argument(name: "api_key", value: apiKey),
3905
3911
  RubyCommand.Argument(name: "auth_token", value: authToken),
@@ -3929,19 +3935,19 @@ func uploadToAppStore(username: String,
3929
3935
  submitForReview: Bool = false,
3930
3936
  rejectIfPossible: Bool = false,
3931
3937
  automaticRelease: Bool = false,
3932
- autoReleaseDate: String? = nil,
3938
+ autoReleaseDate: Any? = nil,
3933
3939
  phasedRelease: Bool = false,
3934
3940
  resetRatings: Bool = false,
3935
- priceTier: String? = nil,
3941
+ priceTier: Any? = nil,
3936
3942
  appRatingConfigPath: String? = nil,
3937
- submissionInformation: String? = nil,
3938
- teamId: String? = nil,
3943
+ submissionInformation: Any? = nil,
3944
+ teamId: Any? = nil,
3939
3945
  teamName: String? = nil,
3940
3946
  devPortalTeamId: String? = nil,
3941
3947
  devPortalTeamName: String? = nil,
3942
3948
  itcProvider: String? = nil,
3943
3949
  runPrecheckBeforeSubmit: Bool = true,
3944
- precheckDefaultRuleLevel: String = "warn",
3950
+ precheckDefaultRuleLevel: Any = "warn",
3945
3951
  individualMetadataItems: [String] = [],
3946
3952
  appIcon: String? = nil,
3947
3953
  appleWatchAppIcon: String? = nil,
@@ -3955,20 +3961,20 @@ func uploadToAppStore(username: String,
3955
3961
  tradeRepresentativeContactInformation: [String : Any]? = nil,
3956
3962
  appReviewInformation: [String : Any]? = nil,
3957
3963
  appReviewAttachmentFile: String? = nil,
3958
- description: String? = nil,
3959
- name: String? = nil,
3964
+ description: Any? = nil,
3965
+ name: Any? = nil,
3960
3966
  subtitle: [String : Any]? = nil,
3961
3967
  keywords: [String : Any]? = nil,
3962
3968
  promotionalText: [String : Any]? = nil,
3963
- releaseNotes: String? = nil,
3964
- privacyUrl: String? = nil,
3965
- appleTvPrivacyPolicy: String? = nil,
3966
- supportUrl: String? = nil,
3967
- marketingUrl: String? = nil,
3969
+ releaseNotes: Any? = nil,
3970
+ privacyUrl: Any? = nil,
3971
+ appleTvPrivacyPolicy: Any? = nil,
3972
+ supportUrl: Any? = nil,
3973
+ marketingUrl: Any? = nil,
3968
3974
  languages: [String]? = nil,
3969
3975
  ignoreLanguageDirectoryValidation: Bool = false,
3970
3976
  precheckIncludeInAppPurchases: Bool = true,
3971
- app: String) {
3977
+ app: Any) {
3972
3978
  let command = RubyCommand(commandID: "", methodName: "upload_to_app_store", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
3973
3979
  RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
3974
3980
  RubyCommand.Argument(name: "app_version", value: appVersion),
@@ -4116,7 +4122,7 @@ func uploadToTestflight(username: String,
4116
4122
  email: String? = nil,
4117
4123
  testersFilePath: String = "./testers.csv",
4118
4124
  groups: [String]? = nil,
4119
- teamId: String? = nil,
4125
+ teamId: Any? = nil,
4120
4126
  teamName: String? = nil,
4121
4127
  devPortalTeamId: String? = nil,
4122
4128
  itcProvider: String? = nil,
@@ -4239,7 +4245,7 @@ func xcodeSelect() {
4239
4245
  }
4240
4246
  @discardableResult func xcodeServerGetAssets(host: String,
4241
4247
  botName: String,
4242
- integrationNumber: String? = nil,
4248
+ integrationNumber: Any? = nil,
4243
4249
  username: String = "",
4244
4250
  password: String? = nil,
4245
4251
  targetFolder: String = "./xcs_assets",
@@ -4395,4 +4401,4 @@ let screengrabfile: Screengrabfile = Screengrabfile()
4395
4401
  let snapshotfile: Snapshotfile = Snapshotfile()
4396
4402
  // Please don't remove the lines below
4397
4403
  // They are used to detect outdated files
4398
- // FastlaneRunnerAPIVersion [0.9.54]
4404
+ // FastlaneRunnerAPIVersion [0.9.55]