fastlane 2.220.0 → 2.221.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +100 -100
- data/deliver/lib/deliver/options.rb +1 -1
- data/deliver/lib/deliver/submit_for_review.rb +2 -79
- data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +2 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +3 -3
- data/fastlane/lib/fastlane/actions/spm.rb +7 -0
- data/fastlane/lib/fastlane/lane_manager_base.rb +16 -8
- data/fastlane/lib/fastlane/runner.rb +2 -2
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +2 -2
- data/fastlane/swift/Fastlane.swift +12 -8
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +19 -19
- data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +2 -0
- data/match/lib/match/runner.rb +0 -1
- data/pilot/lib/pilot/build_manager.rb +9 -4
- data/spaceship/lib/spaceship/connect_api/api_client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app.rb +28 -33
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -19
- data/spaceship/lib/spaceship/connect_api/provisioning/client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +31 -22
- data/spaceship/lib/spaceship/connect_api/testflight/client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +47 -43
- data/spaceship/lib/spaceship/connect_api/token.rb +7 -2
- data/spaceship/lib/spaceship/connect_api/tunes/client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +92 -131
- data/spaceship/lib/spaceship/connect_api/users/client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/users/users.rb +15 -11
- data/spaceship/lib/spaceship/connect_api.rb +0 -1
- data/spaceship/lib/spaceship/stats_middleware.rb +2 -2
- data/spaceship/lib/spaceship/tunes/app_submission.rb +0 -19
- metadata +23 -24
- data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +0 -43
@@ -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.
|
4
|
+
version: 2.221.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
8
|
-
-
|
9
|
-
-
|
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
|
-
-
|
27
|
-
-
|
28
|
-
-
|
29
|
-
- Max Ott
|
14
|
+
- Joshua Liebowitz
|
15
|
+
- Maksym Grebenets
|
16
|
+
- Łukasz Grabowski
|
30
17
|
- Matthew Ellis
|
31
|
-
-
|
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-
|
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.
|
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
|