fastlane 2.220.0 → 2.221.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +100 -100
  3. data/deliver/lib/deliver/options.rb +1 -1
  4. data/deliver/lib/deliver/submit_for_review.rb +2 -79
  5. data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +2 -1
  6. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +3 -3
  7. data/fastlane/lib/fastlane/actions/spm.rb +7 -0
  8. data/fastlane/lib/fastlane/lane_manager_base.rb +16 -8
  9. data/fastlane/lib/fastlane/runner.rb +2 -2
  10. data/fastlane/lib/fastlane/version.rb +1 -1
  11. data/fastlane/swift/Deliverfile.swift +1 -1
  12. data/fastlane/swift/DeliverfileProtocol.swift +2 -2
  13. data/fastlane/swift/Fastlane.swift +12 -8
  14. data/fastlane/swift/Gymfile.swift +1 -1
  15. data/fastlane/swift/GymfileProtocol.swift +1 -1
  16. data/fastlane/swift/Matchfile.swift +1 -1
  17. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  18. data/fastlane/swift/Precheckfile.swift +1 -1
  19. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  20. data/fastlane/swift/Scanfile.swift +1 -1
  21. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  22. data/fastlane/swift/Screengrabfile.swift +1 -1
  23. data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
  24. data/fastlane/swift/Snapshotfile.swift +1 -1
  25. data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
  26. data/fastlane/swift/formatting/Brewfile.lock.json +19 -19
  27. data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +2 -0
  28. data/match/lib/match/runner.rb +0 -1
  29. data/pilot/lib/pilot/build_manager.rb +9 -4
  30. data/spaceship/lib/spaceship/connect_api/api_client.rb +1 -1
  31. data/spaceship/lib/spaceship/connect_api/models/app.rb +28 -33
  32. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -19
  33. data/spaceship/lib/spaceship/connect_api/provisioning/client.rb +1 -1
  34. data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +31 -22
  35. data/spaceship/lib/spaceship/connect_api/testflight/client.rb +1 -1
  36. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +47 -43
  37. data/spaceship/lib/spaceship/connect_api/token.rb +7 -2
  38. data/spaceship/lib/spaceship/connect_api/tunes/client.rb +1 -1
  39. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +92 -131
  40. data/spaceship/lib/spaceship/connect_api/users/client.rb +1 -1
  41. data/spaceship/lib/spaceship/connect_api/users/users.rb +15 -11
  42. data/spaceship/lib/spaceship/connect_api.rb +0 -1
  43. data/spaceship/lib/spaceship/stats_middleware.rb +2 -2
  44. data/spaceship/lib/spaceship/tunes/app_submission.rb +0 -19
  45. metadata +23 -24
  46. data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +0 -43
@@ -19,7 +19,7 @@ module Spaceship
19
19
  end
20
20
 
21
21
  def self.hostname
22
- 'https://appstoreconnect.apple.com/iris/v1/'
22
+ 'https://appstoreconnect.apple.com/iris/'
23
23
  end
24
24
  end
25
25
  end
@@ -4,6 +4,10 @@ module Spaceship
4
4
  class ConnectAPI
5
5
  module Users
6
6
  module API
7
+ module Version
8
+ V1 = "v1"
9
+ end
10
+
7
11
  def users_request_client=(users_request_client)
8
12
  @users_request_client = users_request_client
9
13
  end
@@ -20,12 +24,12 @@ module Spaceship
20
24
  # Get list of users
21
25
  def get_users(filter: {}, includes: nil, limit: nil, sort: nil)
22
26
  params = users_request_client.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
23
- users_request_client.get("users", params)
27
+ users_request_client.get("#{Version::V1}/users", params)
24
28
  end
25
29
 
26
30
  # Delete existing user
27
31
  def delete_user(user_id: nil)
28
- users_request_client.delete("users/#{user_id}")
32
+ users_request_client.delete("#{Version::V1}/users/#{user_id}")
29
33
  end
30
34
 
31
35
  # Update existing user
@@ -55,7 +59,7 @@ module Spaceship
55
59
  # Avoid API error: You cannot set visible apps for this user because the user's roles give them access to all apps.
56
60
  body[:data].delete(:relationships) if all_apps_visible
57
61
 
58
- users_request_client.patch("users/#{user_id}", body)
62
+ users_request_client.patch("#{Version::V1}/users/#{user_id}", body)
59
63
  end
60
64
 
61
65
  # Add app permissions for user
@@ -74,7 +78,7 @@ module Spaceship
74
78
  end
75
79
  }
76
80
 
77
- users_request_client.post("users/#{user_id}/relationships/visibleApps", body)
81
+ users_request_client.post("#{Version::V1}/users/#{user_id}/relationships/visibleApps", body)
78
82
  end
79
83
 
80
84
  # Replace app permissions for user
@@ -88,7 +92,7 @@ module Spaceship
88
92
  end
89
93
  }
90
94
 
91
- users_request_client.patch("users/#{user_id}/relationships/visibleApps", body)
95
+ users_request_client.patch("#{Version::V1}/users/#{user_id}/relationships/visibleApps", body)
92
96
  end
93
97
 
94
98
  # Remove app permissions for user
@@ -102,13 +106,13 @@ module Spaceship
102
106
  end
103
107
  }
104
108
  params = nil
105
- users_request_client.delete("users/#{user_id}/relationships/visibleApps", params, body)
109
+ users_request_client.delete("#{Version::V1}/users/#{user_id}/relationships/visibleApps", params, body)
106
110
  end
107
111
 
108
112
  # Get app permissions for user
109
113
  def get_user_visible_apps(user_id: id, limit: nil)
110
114
  params = users_request_client.build_params(filter: {}, includes: nil, limit: limit, sort: nil)
111
- users_request_client.get("users/#{user_id}/visibleApps", params)
115
+ users_request_client.get("#{Version::V1}/users/#{user_id}/visibleApps", params)
112
116
  end
113
117
 
114
118
  #
@@ -118,7 +122,7 @@ module Spaceship
118
122
  # Get all invited users
119
123
  def get_user_invitations(filter: {}, includes: nil, limit: nil, sort: nil)
120
124
  params = users_request_client.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
121
- users_request_client.get("userInvitations", params)
125
+ users_request_client.get("#{Version::V1}/userInvitations", params)
122
126
  end
123
127
 
124
128
  # Invite new users to App Store Connect
@@ -150,18 +154,18 @@ module Spaceship
150
154
  # Avoid API error: You cannot set visible apps for this user because the user's roles give them access to all apps.
151
155
  body[:data].delete(:relationships) if all_apps_visible
152
156
 
153
- users_request_client.post("userInvitations", body)
157
+ users_request_client.post("#{Version::V1}/userInvitations", body)
154
158
  end
155
159
 
156
160
  # Remove invited user from team (not yet accepted)
157
161
  def delete_user_invitation(user_invitation_id: nil)
158
- users_request_client.delete("userInvitations/#{user_invitation_id}")
162
+ users_request_client.delete("#{Version::V1}/userInvitations/#{user_invitation_id}")
159
163
  end
160
164
 
161
165
  # Get all app permissions for invited user
162
166
  def get_user_invitation_visible_apps(user_invitation_id: id, limit: nil)
163
167
  params = users_request_client.build_params(filter: {}, includes: nil, limit: limit, sort: nil)
164
- users_request_client.get("userInvitations/#{user_invitation_id}/visibleApps", params)
168
+ users_request_client.get("#{Version::V1}/userInvitations/#{user_invitation_id}/visibleApps", params)
165
169
  end
166
170
  end
167
171
  end
@@ -62,7 +62,6 @@ require 'spaceship/connect_api/models/app_screenshot'
62
62
  require 'spaceship/connect_api/models/app_store_version_localization'
63
63
  require 'spaceship/connect_api/models/app_store_version_phased_release'
64
64
  require 'spaceship/connect_api/models/app_store_version'
65
- require 'spaceship/connect_api/models/idfa_declaration'
66
65
  require 'spaceship/connect_api/models/review_submission'
67
66
  require 'spaceship/connect_api/models/review_submission_item'
68
67
  require 'spaceship/connect_api/models/reset_ratings_request'
@@ -18,11 +18,11 @@ module Spaceship
18
18
  @services ||= [
19
19
  ServiceOption.new("App Store Connect API (official)", "api.appstoreconnect.apple.com", "JWT"),
20
20
  ServiceOption.new("App Store Connect API (web session)", Spaceship::ConnectAPI::TestFlight::Client.hostname.gsub("https://", ""), "Web session"),
21
- ServiceOption.new("App Store Connect API (web session)", Spaceship::ConnectAPI::Provisioning::Client.hostname.gsub("https://", ""), "Web session"),
22
21
  ServiceOption.new("Legacy iTunesConnect Auth", "idmsa.apple.com", "Web session"),
23
22
  ServiceOption.new("Legacy iTunesConnect Auth", "appstoreconnect.apple.com/olympus/v1/", "Web session"),
24
23
  ServiceOption.new("Legacy iTunesConnect", Spaceship::TunesClient.hostname.gsub("https://", ""), "Web session"),
25
- ServiceOption.new("Legacy iTunesConnect Developer Portal", Spaceship::PortalClient.hostname.gsub("https://", ""), "Web session")
24
+ ServiceOption.new("Legacy iTunesConnect Developer Portal", Spaceship::PortalClient.hostname.gsub("https://", ""), "Web session"),
25
+ ServiceOption.new("App Store Connect API (web session)", Spaceship::ConnectAPI::Provisioning::Client.hostname.gsub("https://", ""), "Web session")
26
26
  ]
27
27
  end
28
28
 
@@ -22,11 +22,6 @@ module Spaceship
22
22
 
23
23
  # To pass from the user
24
24
 
25
- # @deprecated Set automatically by <tt>add_id_info_uses_idfa</tt> usage
26
- # @return (Boolean) Ad ID Info - Limits ads tracking
27
- # <b>DEPRECATED:</b> Use <tt>add_id_info_uses_idfa</tt> instead.
28
- attr_accessor :add_id_info_limits_tracking
29
-
30
25
  # @return (Boolean) Ad ID Info - Serves ads
31
26
  attr_accessor :add_id_info_serves_ads
32
27
 
@@ -36,9 +31,6 @@ module Spaceship
36
31
  # @return (Boolean) Ad ID Info - Tracks installs
37
32
  attr_accessor :add_id_info_tracks_install
38
33
 
39
- # @return (Boolean) Ad ID Info - Uses idfa
40
- attr_accessor :add_id_info_uses_idfa
41
-
42
34
  # @return (Boolean) Content Rights - Contains third party content
43
35
  attr_accessor :content_rights_contains_third_party_content
44
36
 
@@ -80,7 +72,6 @@ module Spaceship
80
72
  'adIdInfo.servesAds.value' => :add_id_info_serves_ads,
81
73
  'adIdInfo.tracksAction.value' => :add_id_info_tracks_action,
82
74
  'adIdInfo.tracksInstall.value' => :add_id_info_tracks_install,
83
- 'adIdInfo.usesIdfa.value' => :add_id_info_uses_idfa,
84
75
 
85
76
  # Content Rights Section
86
77
  'contentRights.containsThirdPartyContent.value' => :content_rights_contains_third_party_content,
@@ -139,16 +130,6 @@ module Spaceship
139
130
  raw_data_clone.delete(:version)
140
131
  raw_data_clone.delete(:application)
141
132
 
142
- # Check whether the application makes use of IDFA or not
143
- # and automatically set the mandatory limitsTracking value in the request JSON accordingly.
144
- if !self.add_id_info_uses_idfa.nil? && self.add_id_info_uses_idfa == true
145
- # Application uses IDFA, before sending for submission limitsTracking key in the request JSON must be set to true (agreement).
146
- raw_data_clone.set(
147
- ["adIdInfo", "limitsTracking", "value"],
148
- true
149
- )
150
- end
151
-
152
133
  client.send_app_submission(application.apple_id, application.edit_version(platform: platform).version_id, raw_data_clone)
153
134
  @submitted_for_review = true
154
135
  end
metadata CHANGED
@@ -1,39 +1,39 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.220.0
4
+ version: 2.221.1
5
5
  platform: ruby
6
6
  authors:
7
- - Felix Krause
8
- - Iulian Onofrei
9
- - Manish Rathi
10
- - Danielle Tomlinson
11
- - Joshua Liebowitz
12
- - Satoshi Namai
13
- - Manu Wallner
7
+ - Aaron Brager
8
+ - Jan Piotrowski
9
+ - Roger Oba
14
10
  - Luka Mirosevic
15
11
  - Jérôme Lacoste
16
- - Stefan Natchev
17
- - Łukasz Grabowski
18
- - Roger Oba
19
- - Olivier Halligon
20
- - Daniel Jankowski
21
12
  - Andrew McBurney
22
- - Jimmy Dee
23
- - Jan Piotrowski
24
- - Maksym Grebenets
25
13
  - Helmut Januschka
26
- - Aaron Brager
27
- - Kohki Miki
28
- - Josh Holtz
29
- - Max Ott
14
+ - Joshua Liebowitz
15
+ - Maksym Grebenets
16
+ - Łukasz Grabowski
30
17
  - Matthew Ellis
31
- - Jorge Revuelta H
18
+ - Josh Holtz
19
+ - Satoshi Namai
20
+ - Jimmy Dee
21
+ - Iulian Onofrei
22
+ - Olivier Halligon
32
23
  - Fumiya Nakamura
24
+ - Manu Wallner
25
+ - Danielle Tomlinson
26
+ - Felix Krause
27
+ - Stefan Natchev
28
+ - Kohki Miki
29
+ - Jorge Revuelta H
30
+ - Max Ott
31
+ - Manish Rathi
32
+ - Daniel Jankowski
33
33
  autorequire:
34
34
  bindir: bin
35
35
  cert_chain: []
36
- date: 2024-04-04 00:00:00.000000000 Z
36
+ date: 2024-06-19 00:00:00.000000000 Z
37
37
  dependencies:
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: addressable
@@ -1501,7 +1501,6 @@ files:
1501
1501
  - spaceship/lib/spaceship/connect_api/models/custom_app_organization.rb
1502
1502
  - spaceship/lib/spaceship/connect_api/models/custom_app_user.rb
1503
1503
  - spaceship/lib/spaceship/connect_api/models/device.rb
1504
- - spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb
1505
1504
  - spaceship/lib/spaceship/connect_api/models/pre_release_version.rb
1506
1505
  - spaceship/lib/spaceship/connect_api/models/profile.rb
1507
1506
  - spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb
@@ -1693,7 +1692,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1693
1692
  - !ruby/object:Gem::Version
1694
1693
  version: '0'
1695
1694
  requirements: []
1696
- rubygems_version: 3.2.33
1695
+ rubygems_version: 3.4.19
1697
1696
  signing_key:
1698
1697
  specification_version: 4
1699
1698
  summary: The easiest way to build and release mobile apps.
@@ -1,43 +0,0 @@
1
- require_relative '../model'
2
- module Spaceship
3
- class ConnectAPI
4
- class IdfaDeclaration
5
- include Spaceship::ConnectAPI::Model
6
-
7
- attr_accessor :serves_ads
8
- attr_accessor :attributes_app_installation_to_previous_ad
9
- attr_accessor :attributes_action_with_previous_ad
10
- attr_accessor :honors_limited_ad_tracking
11
-
12
- module AppStoreAgeRating
13
- FOUR_PLUS = "FOUR_PLUS"
14
- end
15
-
16
- attr_mapping({
17
- "servesAds" => "serves_ads",
18
- "attributesAppInstallationToPreviousAd" => "attributes_app_installation_to_previous_ad",
19
- "attributesActionWithPreviousAd" => "attributes_action_with_previous_ad",
20
- "honorsLimitedAdTracking" => "honors_limited_ad_tracking"
21
- })
22
-
23
- def self.type
24
- return "idfaDeclarations"
25
- end
26
-
27
- #
28
- # API
29
- #
30
-
31
- def update(client: nil, attributes: nil)
32
- client ||= Spaceship::ConnectAPI
33
- attributes = reverse_attr_mapping(attributes)
34
- client.patch_idfa_declaration(idfa_declaration_id: id, attributes: attributes)
35
- end
36
-
37
- def delete!(client: nil)
38
- client ||= Spaceship::ConnectAPI
39
- client.delete_idfa_declaration(idfa_declaration_id: id)
40
- end
41
- end
42
- end
43
- end