fastlane 2.186.0 → 2.187.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +86 -86
  3. data/fastlane/lib/fastlane/actions/create_keychain.rb +5 -2
  4. data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
  5. data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +25 -26
  6. data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +2 -2
  7. data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
  8. data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +3 -4
  9. data/fastlane/lib/fastlane/actions/lcov.rb +0 -4
  10. data/fastlane/lib/fastlane/actions/mailgun.rb +21 -27
  11. data/fastlane/lib/fastlane/actions/make_changelog_from_jenkins.rb +1 -1
  12. data/fastlane/lib/fastlane/actions/modify_services.rb +59 -24
  13. data/fastlane/lib/fastlane/actions/nexus_upload.rb +2 -2
  14. data/fastlane/lib/fastlane/actions/notarize.rb +1 -4
  15. data/fastlane/lib/fastlane/actions/number_of_commits.rb +1 -1
  16. data/fastlane/lib/fastlane/actions/oclint.rb +15 -14
  17. data/fastlane/lib/fastlane/actions/pod_push.rb +0 -2
  18. data/fastlane/lib/fastlane/actions/podio_item.rb +0 -7
  19. data/fastlane/lib/fastlane/actions/prompt.rb +3 -4
  20. data/fastlane/lib/fastlane/actions/push_git_tags.rb +1 -1
  21. data/fastlane/lib/fastlane/actions/puts.rb +1 -2
  22. data/fastlane/lib/fastlane/actions/register_devices.rb +0 -1
  23. data/fastlane/lib/fastlane/actions/reset_git_repo.rb +5 -8
  24. data/fastlane/lib/fastlane/actions/reset_simulator_contents.rb +0 -2
  25. data/fastlane/lib/fastlane/actions/resign.rb +2 -9
  26. data/fastlane/lib/fastlane/actions/rsync.rb +3 -6
  27. data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
  28. data/fastlane/lib/fastlane/actions/s3.rb +1 -1
  29. data/fastlane/lib/fastlane/actions/say.rb +2 -3
  30. data/fastlane/lib/fastlane/actions/scp.rb +4 -10
  31. data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
  32. data/fastlane/lib/fastlane/actions/set_changelog.rb +1 -1
  33. data/fastlane/lib/fastlane/actions/set_github_release.rb +2 -8
  34. data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +1 -1
  35. data/fastlane/lib/fastlane/actions/set_pod_key.rb +3 -4
  36. data/fastlane/lib/fastlane/actions/setup_ci.rb +1 -2
  37. data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
  38. data/fastlane/lib/fastlane/actions/setup_jenkins.rb +7 -12
  39. data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
  40. data/fastlane/lib/fastlane/actions/sh.rb +2 -4
  41. data/fastlane/lib/fastlane/actions/slack.rb +6 -8
  42. data/fastlane/lib/fastlane/actions/slather.rb +3 -19
  43. data/fastlane/lib/fastlane/actions/sonar.rb +12 -19
  44. data/fastlane/lib/fastlane/actions/sourcedocs.rb +62 -98
  45. data/fastlane/lib/fastlane/actions/splunkmint.rb +2 -2
  46. data/fastlane/lib/fastlane/actions/spm.rb +3 -3
  47. data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
  48. data/fastlane/lib/fastlane/actions/testfairy.rb +0 -1
  49. data/fastlane/lib/fastlane/actions/tryouts.rb +2 -3
  50. data/fastlane/lib/fastlane/actions/twitter.rb +0 -5
  51. data/fastlane/lib/fastlane/actions/unlock_keychain.rb +3 -3
  52. data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +1 -4
  53. data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +8 -15
  54. data/fastlane/lib/fastlane/actions/update_fastlane.rb +2 -2
  55. data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
  56. data/fastlane/lib/fastlane/version.rb +1 -1
  57. data/fastlane/swift/Deliverfile.swift +1 -1
  58. data/fastlane/swift/DeliverfileProtocol.swift +1 -1
  59. data/fastlane/swift/Fastlane.swift +57 -57
  60. data/fastlane/swift/Gymfile.swift +1 -1
  61. data/fastlane/swift/GymfileProtocol.swift +1 -1
  62. data/fastlane/swift/Matchfile.swift +1 -1
  63. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  64. data/fastlane/swift/Precheckfile.swift +1 -1
  65. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  66. data/fastlane/swift/Scanfile.swift +1 -1
  67. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  68. data/fastlane/swift/Screengrabfile.swift +1 -1
  69. data/fastlane/swift/ScreengrabfileProtocol.swift +4 -4
  70. data/fastlane/swift/Snapshotfile.swift +1 -1
  71. data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
  72. data/fastlane/swift/formatting/Brewfile.lock.json +11 -11
  73. data/produce/lib/produce/commands_generator.rb +99 -27
  74. data/produce/lib/produce/developer_center.rb +42 -4
  75. data/produce/lib/produce/options.rb +1 -1
  76. data/produce/lib/produce/service.rb +270 -179
  77. data/screengrab/lib/screengrab/android_environment.rb +2 -52
  78. data/screengrab/lib/screengrab/dependency_checker.rb +0 -20
  79. data/screengrab/lib/screengrab/options.rb +5 -2
  80. data/screengrab/lib/screengrab/runner.rb +108 -106
  81. data/snapshot/lib/assets/SnapfileTemplate +2 -1
  82. data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
  83. data/snapshot/lib/assets/SnapshotHelper.swift +14 -10
  84. data/snapshot/lib/snapshot/reports_generator.rb +3 -1
  85. data/snapshot/lib/snapshot/test_command_generator.rb +16 -2
  86. data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +8 -0
  87. data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +58 -17
  88. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +41 -1
  89. metadata +20 -21
  90. data/fastlane/lib/fastlane/helper/.git_helper.rb.swp +0 -0
@@ -8,7 +8,8 @@
8
8
  # "iPhone X",
9
9
  # "iPad Pro (12.9-inch)",
10
10
  # "iPad Pro (9.7-inch)",
11
- # "Apple TV 1080p"
11
+ # "Apple TV 1080p",
12
+ # "Apple Watch Series 6 - 44mm"
12
13
  # ])
13
14
 
14
15
  # languages([
@@ -8,7 +8,8 @@ class Snapshotfile: SnapshotfileProtocol {
8
8
  // "iPhone 5",
9
9
  // "iPad Pro (12.9-inch)",
10
10
  // "iPad Pro (9.7-inch)",
11
- // "Apple TV 1080p"
11
+ // "Apple TV 1080p",
12
+ // "Apple Watch Series 6 - 44mm"
12
13
  // ]
13
14
  //}
14
15
 
@@ -193,16 +193,20 @@ open class Snapshot: NSObject {
193
193
  }
194
194
 
195
195
  class func fixLandscapeOrientation(image: UIImage) -> UIImage {
196
- if #available(iOS 10.0, *) {
197
- let format = UIGraphicsImageRendererFormat()
198
- format.scale = image.scale
199
- let renderer = UIGraphicsImageRenderer(size: image.size, format: format)
200
- return renderer.image { context in
201
- image.draw(in: CGRect(x: 0, y: 0, width: image.size.width, height: image.size.height))
202
- }
203
- } else {
196
+ #if os(watchOS)
204
197
  return image
205
- }
198
+ #else
199
+ if #available(iOS 10.0, *) {
200
+ let format = UIGraphicsImageRendererFormat()
201
+ format.scale = image.scale
202
+ let renderer = UIGraphicsImageRenderer(size: image.size, format: format)
203
+ return renderer.image { context in
204
+ image.draw(in: CGRect(x: 0, y: 0, width: image.size.width, height: image.size.height))
205
+ }
206
+ } else {
207
+ return image
208
+ }
209
+ #endif
206
210
  }
207
211
 
208
212
  class func waitForLoadingIndicatorToDisappear(within timeout: TimeInterval) {
@@ -302,4 +306,4 @@ private extension CGFloat {
302
306
 
303
307
  // Please don't remove the lines below
304
308
  // They are used to detect outdated configuration files
305
- // SnapshotHelperVersion [1.26]
309
+ // SnapshotHelperVersion [1.27]
@@ -128,7 +128,9 @@ module Snapshot
128
128
  'Apple TV 4K (at 1080p)' => 'Apple TV 4K (at 1080p)',
129
129
  'Apple TV 4K' => 'Apple TV 4K',
130
130
  'Apple TV' => 'Apple TV',
131
- 'Mac' => 'Mac'
131
+ 'Mac' => 'Mac',
132
+ 'Apple Watch Series 5 - 44mm' => 'Apple Watch Series 5 - 44mm',
133
+ 'Apple Watch Series 6 - 44mm' => 'Apple Watch Series 6 - 44mm'
132
134
  }
133
135
  end
134
136
 
@@ -45,7 +45,14 @@ module Snapshot
45
45
  # on Mac we will always run on host machine, so should specify only platform
46
46
  return ["-destination 'platform=macOS'"] if devices.first.to_s =~ /^Mac/
47
47
 
48
- os = devices.first.to_s =~ /^Apple TV/ ? "tvOS" : "iOS"
48
+ case devices.first.to_s
49
+ when /^Apple TV/
50
+ os = 'tvOS'
51
+ when /^Apple Watch/
52
+ os = 'watchOS'
53
+ else
54
+ os = 'iOS'
55
+ end
49
56
 
50
57
  os_version = Snapshot.config[:ios_version] || Snapshot::LatestOsVersion.version(os)
51
58
 
@@ -78,9 +85,16 @@ module Snapshot
78
85
  device = device.downcase
79
86
  device.include?('apple tv')
80
87
  end
81
- # Return true if all devices are iOS devices
88
+ # Return true if all devices are tvOS devices
82
89
  return true unless all_tvos.include?(false)
83
90
 
91
+ all_watchos = devices.map do |device|
92
+ device = device.downcase
93
+ device.include?('apple watch')
94
+ end
95
+ # Return true if all devices are watchOS devices
96
+ return true unless all_watchos.include?(false)
97
+
84
98
  # There should only be more than 1 device type if
85
99
  # it is iOS or tvOS, therefore, if there is more than 1
86
100
  # device in the array, and they are not all iOS or tvOS
@@ -80,6 +80,14 @@ module Spaceship
80
80
  resp = client.post_bundle_id_capability(bundle_id_id: id, capability_type: capability_type, settings: settings)
81
81
  return resp.to_models.first
82
82
  end
83
+
84
+ def update_capability(capability_type, enabled: false, settings: [], client: nil)
85
+ raise "capability_type is required " if capability_type.nil?
86
+
87
+ client ||= Spaceship::ConnectAPI
88
+ resp = client.patch_bundle_id_capability(bundle_id_id: id, seed_id: seed_id, enabled: enabled, capability_type: capability_type, settings: settings)
89
+ return resp.to_models.first
90
+ end
83
91
  end
84
92
  end
85
93
  end
@@ -13,29 +13,67 @@ module Spaceship
13
13
  })
14
14
 
15
15
  module Type
16
+ ACCESS_WIFI_INFORMATION = "ACCESS_WIFI_INFORMATION"
17
+ APP_ATTEST = "APP_ATTEST"
18
+ APP_GROUPS = "APP_GROUPS"
19
+ APPLE_PAY = "APPLE_PAY"
20
+ ASSOCIATED_DOMAINS = "ASSOCIATED_DOMAINS"
21
+ AUTOFILL_CREDENTIAL_PROVIDER = "AUTOFILL_CREDENTIAL_PROVIDER"
22
+ CLASSKIT = "CLASSKIT"
16
23
  ICLOUD = "ICLOUD"
17
- IN_APP_PURCHASE = "IN_APP_PURCHASE"
24
+ USERNOTIFICATIONS_COMMUNICATION = "USERNOTIFICATIONS_COMMUNICATION"
25
+ NETWORK_CUSTOM_PROTOCOL = "NETWORK_CUSTOM_PROTOCOL"
26
+ DATA_PROTECTION = "DATA_PROTECTION"
27
+ EXTENDED_VIRTUAL_ADDRESSING = "EXTENDED_VIRTUAL_ADDRESSING"
28
+ FAMILY_CONTROLS = "FAMILY_CONTROLS"
29
+ FILEPROVIDER_TESTINGMODE = "FILEPROVIDER_TESTINGMODE"
30
+ FONT_INSTALLATION = "FONT_INSTALLATION"
18
31
  GAME_CENTER = "GAME_CENTER"
19
- PUSH_NOTIFICATIONS = "PUSH_NOTIFICATIONS"
20
- WALLET = "WALLET"
21
- INTER_APP_AUDIO = "INTER_APP_AUDIO"
22
- MAPS = "MAPS"
23
- ASSOCIATED_DOMAINS = "ASSOCIATED_DOMAINS"
24
- PERSONAL_VPN = "PERSONAL_VPN"
25
- APP_GROUPS = "APP_GROUPS"
32
+ GROUP_ACTIVITIES = "GROUP_ACTIVITIES"
26
33
  HEALTHKIT = "HEALTHKIT"
34
+ HEALTHKIT_RECALIBRATE_ESTIMATES = "HEALTHKIT_RECALIBRATE_ESTIMATES"
35
+ HLS_INTERSTITIAL_PREVIEW = "HLS_INTERSTITIAL_PREVIEW"
27
36
  HOMEKIT = "HOMEKIT"
28
- WIRELESS_ACCESSORY_CONFIGURATION = "WIRELESS_ACCESSORY_CONFIGURATION"
29
- APPLE_PAY = "APPLE_PAY"
30
- DATA_PROTECTION = "DATA_PROTECTION"
31
- SIRIKIT = "SIRIKIT"
32
- NETWORK_EXTENSIONS = "NETWORK_EXTENSIONS"
33
- MULTIPATH = "MULTIPATH"
34
37
  HOT_SPOT = "HOT_SPOT"
38
+ IN_APP_PURCHASE = "IN_APP_PURCHASE"
39
+ INTER_APP_AUDIO = "INTER_APP_AUDIO"
40
+ COREMEDIA_HLS_LOW_LATENCY = "COREMEDIA_HLS_LOW_LATENCY"
41
+ MDM_MANAGED_ASSOCIATED_DOMAINS = "MDM_MANAGED_ASSOCIATED_DOMAINS"
42
+ MAPS = "MAPS"
43
+ MULTIPATH = "MULTIPATH"
44
+ NETWORK_EXTENSIONS = "NETWORK_EXTENSIONS"
35
45
  NFC_TAG_READING = "NFC_TAG_READING"
36
- CLASSKIT = "CLASSKIT"
37
- AUTOFILL_CREDENTIAL_PROVIDER = "AUTOFILL_CREDENTIAL_PROVIDER"
38
- ACCESS_WIFI_INFORMATION = "ACCESS_WIFI_INFORMATION"
46
+ PERSONAL_VPN = "PERSONAL_VPN"
47
+ PUSH_NOTIFICATIONS = "PUSH_NOTIFICATIONS"
48
+ APPLE_ID_AUTH = "APPLE_ID_AUTH"
49
+ SIRIKIT = "SIRIKIT"
50
+ SYSTEM_EXTENSION_INSTALL = "SYSTEM_EXTENSION_INSTALL"
51
+ USERNOTIFICATIONS_TIMESENSITIVE = "USERNOTIFICATIONS_TIMESENSITIVE"
52
+ USER_MANAGEMENT = "USER_MANAGEMENT"
53
+ WALLET = "WALLET"
54
+ WIRELESS_ACCESSORY_CONFIGURATION = "WIRELESS_ACCESSORY_CONFIGURATION"
55
+
56
+ # Additional Capabilities
57
+ CARPLAY_PLAYABLE_CONTENT = "CARPLAY_PLAYABLE_CONTENT"
58
+ CARPLAY_MESSAGING = "CARPLAY_MESSAGING"
59
+ CARPLAY_NAVIGATION = "CARPLAY_NAVIGATION"
60
+ CARPLAY_VOIP = "CARPLAY_VOIP"
61
+ CRITICAL_ALERTS = "CRITICAL_ALERTS"
62
+ HOTSPOT_HELPER_MANAGED = "HOTSPOT_HELPER_MANAGED"
63
+ DRIVERKIT = "DRIVERKIT"
64
+ DRIVERKIT_ENDPOINT_SECURITY = "DRIVERKIT_ENDPOINT_SECURITY"
65
+ DRIVERKIT_HID_DEVICE = "DRIVERKIT_HID_DEVICE"
66
+ DRIVERKIT_NETWORKING = "DRIVERKIT_NETWORKING"
67
+ DRIVERKIT_SERIAL = "DRIVERKIT_SERIAL"
68
+ DRIVERKIT_HID_EVENT_SERVICE = "DRIVERKIT_HID_EVENT_SERVICE"
69
+ DRIVERKIT_HID = "DRIVERKIT_HID"
70
+ IPAD_CAMERA_MULTITASKING = "IPAD_CAMERA_MULTITASKING"
71
+ SFUNIVERSALLINK_API = "SFUNIVERSALLINK_API"
72
+ VP9_DECODER = "VP9_DECODER"
73
+
74
+ # App Services
75
+ MUSIC_KIT = "MUSIC_KIT"
76
+ SHAZAM_KIT = "SHAZAM_KIT"
39
77
 
40
78
  # Undocumented as of 2020-06-09
41
79
  MARZIPAN = "MARZIPAN" # Catalyst
@@ -45,6 +83,7 @@ module Spaceship
45
83
  ICLOUD_VERSION = "ICLOUD_VERSION"
46
84
  DATA_PROTECTION_PERMISSION_LEVEL = "DATA_PROTECTION_PERMISSION_LEVEL"
47
85
  APPLE_ID_AUTH_APP_CONSENT = "APPLE_ID_AUTH_APP_CONSENT"
86
+ GAME_CENTER_SETTING = "GAME_CENTER_SETTING"
48
87
  end
49
88
 
50
89
  module Options
@@ -54,6 +93,8 @@ module Spaceship
54
93
  PROTECTED_UNLESS_OPEN = "PROTECTED_UNLESS_OPEN"
55
94
  PROTECTED_UNTIL_FIRST_USER_AUTH = "PROTECTED_UNTIL_FIRST_USER_AUTH"
56
95
  PRIMARY_APP_CONSENT = "PRIMARY_APP_CONSENT"
96
+ GAME_CENTER_MAC = "GAME_CENTER_MAC"
97
+ GAME_CENTER_IOS = "GAME_CENTER_IOS"
57
98
  end
58
99
 
59
100
  def self.type
@@ -68,14 +68,54 @@ module Spaceship
68
68
  type: "bundleIds",
69
69
  id: bundle_id_id
70
70
  }
71
+ },
72
+ capability: {
73
+ data: {
74
+ type: "capabilities",
75
+ id: capability_type
76
+ }
71
77
  }
72
78
  }
73
79
  }
74
80
  }
75
-
76
81
  provisioning_request_client.post("bundleIdCapabilities", body)
77
82
  end
78
83
 
84
+ def patch_bundle_id_capability(bundle_id_id:, seed_id:, enabled: false, capability_type:, settings: [])
85
+ body = {
86
+ data: {
87
+ type: "bundleIds",
88
+ id: bundle_id_id,
89
+ attributes: {
90
+ teamId: seed_id
91
+ },
92
+ relationships: {
93
+ bundleIdCapabilities: {
94
+ data: [
95
+ {
96
+ type: "bundleIdCapabilities",
97
+ attributes: {
98
+ enabled: enabled,
99
+ settings: settings
100
+ },
101
+ relationships: {
102
+ capability: {
103
+ data: {
104
+ type: "capabilities",
105
+ id: capability_type
106
+ }
107
+ }
108
+ }
109
+ }
110
+ ]
111
+ }
112
+ }
113
+ }
114
+ }
115
+
116
+ provisioning_request_client.patch("bundleIds/#{bundle_id_id}", body)
117
+ end
118
+
79
119
  def delete_bundle_id_capability(bundle_id_capability_id:)
80
120
  provisioning_request_client.delete("bundleIdCapabilities/#{bundle_id_capability_id}")
81
121
  end
metadata CHANGED
@@ -1,38 +1,38 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.186.0
4
+ version: 2.187.0
5
5
  platform: ruby
6
6
  authors:
7
- - Manish Rathi
7
+ - Andrew McBurney
8
+ - Maksym Grebenets
9
+ - Iulian Onofrei
10
+ - Jimmy Dee
11
+ - Helmut Januschka
12
+ - Luka Mirosevic
13
+ - Joshua Liebowitz
14
+ - Jérôme Lacoste
15
+ - Max Ott
8
16
  - Daniel Jankowski
17
+ - Manu Wallner
18
+ - Kohki Miki
19
+ - Fumiya Nakamura
9
20
  - Matthew Ellis
10
- - Andrew McBurney
11
- - Jorge Revuelta H
21
+ - Jan Piotrowski
12
22
  - Felix Krause
13
23
  - Aaron Brager
14
- - Jérôme Lacoste
24
+ - Manish Rathi
25
+ - Olivier Halligon
15
26
  - Satoshi Namai
16
- - Fumiya Nakamura
17
- - Manu Wallner
18
- - Kohki Miki
27
+ - Danielle Tomlinson
28
+ - Jorge Revuelta H
19
29
  - Roger Oba
20
- - Stefan Natchev
21
- - Iulian Onofrei
22
30
  - Josh Holtz
23
- - Luka Mirosevic
24
- - Helmut Januschka
25
- - Olivier Halligon
26
- - Danielle Tomlinson
27
- - Jimmy Dee
28
- - Jan Piotrowski
29
- - Joshua Liebowitz
30
- - Max Ott
31
- - Maksym Grebenets
31
+ - Stefan Natchev
32
32
  autorequire:
33
33
  bindir: bin
34
34
  cert_chain: []
35
- date: 2021-06-23 00:00:00.000000000 Z
35
+ date: 2021-06-29 00:00:00.000000000 Z
36
36
  dependencies:
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: xcodeproj
@@ -1261,7 +1261,6 @@ files:
1261
1261
  - fastlane/lib/fastlane/fast_file.rb
1262
1262
  - fastlane/lib/fastlane/fastlane_require.rb
1263
1263
  - fastlane/lib/fastlane/features.rb
1264
- - fastlane/lib/fastlane/helper/.git_helper.rb.swp
1265
1264
  - fastlane/lib/fastlane/helper/README.md
1266
1265
  - fastlane/lib/fastlane/helper/adb_helper.rb
1267
1266
  - fastlane/lib/fastlane/helper/crashlytics_helper.rb