fastlane 2.150.0.rc7 → 2.150.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +76 -76
- data/deliver/lib/deliver/download_screenshots.rb +4 -4
- data/deliver/lib/deliver/upload_metadata.rb +11 -8
- data/deliver/lib/deliver/upload_screenshots.rb +19 -6
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +6 -6
- data/fastlane/swift/Fastlane.swift +22 -19
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SocketClient.swift +2 -1
- data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +0 -1
- data/fastlane_core/lib/fastlane_core/provisioning_profile.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/models/app_store_review_detail.rb +5 -6
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +2 -2
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +20 -5
- metadata +26 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8487fa83f02a3dc9dc73920e47fa8c8652d8870c1c591d644ee2138446d41b7d
|
4
|
+
data.tar.gz: 158f51047d36d16716f02af2f790c89f4015e50a28a404ec8122a98eacf4f83b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 482164ad088f8bc85cbbb31446a0e766c597d7fc50f5cd9d98888f176d15fcbdeaf16d0a54ca92cf72a73d55bcef6bdcc98a2a8c07b303430b374546d0f77225
|
7
|
+
data.tar.gz: 54fa6088bc3373a0d936999022b54050fbd1f82bab8cd6dce45e0403dee4a213d2f5d7f950f5bcaa83599e1dc24668e1d156ab213be15bd2904a1340b45ebea5
|
data/README.md
CHANGED
@@ -34,35 +34,35 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
34
34
|
<!-- This table is regenerated and resorted on each release -->
|
35
35
|
<table id='team'>
|
36
36
|
<tr>
|
37
|
-
<td id='iulian-onofrei'>
|
38
|
-
<a href='https://github.com/revolter'>
|
39
|
-
<img src='https://github.com/revolter.png?size=140'>
|
40
|
-
</a>
|
41
|
-
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
42
|
-
</td>
|
43
|
-
<td id='stefan-natchev'>
|
44
|
-
<a href='https://github.com/snatchev'>
|
45
|
-
<img src='https://github.com/snatchev.png?size=140'>
|
46
|
-
</a>
|
47
|
-
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
48
|
-
</td>
|
49
37
|
<td id='joshua-liebowitz'>
|
50
38
|
<a href='https://github.com/taquitos'>
|
51
39
|
<img src='https://github.com/taquitos.png?size=140'>
|
52
40
|
</a>
|
53
41
|
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
54
42
|
</td>
|
43
|
+
<td id='matthew-ellis'>
|
44
|
+
<a href='https://github.com/matthewellis'>
|
45
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
46
|
+
</a>
|
47
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
48
|
+
</td>
|
55
49
|
<td id='helmut-januschka'>
|
56
50
|
<a href='https://github.com/hjanuschka'>
|
57
51
|
<img src='https://github.com/hjanuschka.png?size=140'>
|
58
52
|
</a>
|
59
53
|
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
60
54
|
</td>
|
61
|
-
<td id='
|
62
|
-
<a href='https://github.com/
|
63
|
-
<img src='https://github.com/
|
55
|
+
<td id='josh-holtz'>
|
56
|
+
<a href='https://github.com/joshdholtz'>
|
57
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
64
58
|
</a>
|
65
|
-
<h4 align='center'><a href='https://twitter.com/
|
59
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
60
|
+
</td>
|
61
|
+
<td id='max-ott'>
|
62
|
+
<a href='https://github.com/max-ott'>
|
63
|
+
<img src='https://github.com/max-ott.png?size=140'>
|
64
|
+
</a>
|
65
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
66
66
|
</td>
|
67
67
|
</tr>
|
68
68
|
<tr>
|
@@ -72,55 +72,23 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
72
72
|
</a>
|
73
73
|
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
74
74
|
</td>
|
75
|
-
<td id='
|
76
|
-
<a href='https://github.com/
|
77
|
-
<img src='https://github.com/
|
78
|
-
</a>
|
79
|
-
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
80
|
-
</td>
|
81
|
-
<td id='jan-piotrowski'>
|
82
|
-
<a href='https://github.com/janpio'>
|
83
|
-
<img src='https://github.com/janpio.png?size=140'>
|
84
|
-
</a>
|
85
|
-
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
86
|
-
</td>
|
87
|
-
<td id='aaron-brager'>
|
88
|
-
<a href='https://github.com/getaaron'>
|
89
|
-
<img src='https://github.com/getaaron.png?size=140'>
|
90
|
-
</a>
|
91
|
-
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
92
|
-
</td>
|
93
|
-
<td id='olivier-halligon'>
|
94
|
-
<a href='https://github.com/AliSoftware'>
|
95
|
-
<img src='https://github.com/AliSoftware.png?size=140'>
|
75
|
+
<td id='iulian-onofrei'>
|
76
|
+
<a href='https://github.com/revolter'>
|
77
|
+
<img src='https://github.com/revolter.png?size=140'>
|
96
78
|
</a>
|
97
|
-
<h4 align='center'><a href='https://twitter.com/
|
79
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
98
80
|
</td>
|
99
|
-
</tr>
|
100
|
-
<tr>
|
101
81
|
<td id='jimmy-dee'>
|
102
82
|
<a href='https://github.com/jdee'>
|
103
83
|
<img src='https://github.com/jdee.png?size=140'>
|
104
84
|
</a>
|
105
85
|
<h4 align='center'>Jimmy Dee</h4>
|
106
86
|
</td>
|
107
|
-
<td id='
|
108
|
-
<a href='https://github.com/
|
109
|
-
<img src='https://github.com/
|
110
|
-
</a>
|
111
|
-
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
112
|
-
</td>
|
113
|
-
<td id='felix-krause'>
|
114
|
-
<a href='https://github.com/KrauseFx'>
|
115
|
-
<img src='https://github.com/KrauseFx.png?size=140'>
|
116
|
-
</a>
|
117
|
-
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
118
|
-
</td>
|
119
|
-
<td id='matthew-ellis'>
|
120
|
-
<a href='https://github.com/matthewellis'>
|
121
|
-
<img src='https://github.com/matthewellis.png?size=140'>
|
87
|
+
<td id='jérôme-lacoste'>
|
88
|
+
<a href='https://github.com/lacostej'>
|
89
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
122
90
|
</a>
|
123
|
-
<h4 align='center'><a href='https://twitter.com/
|
91
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
124
92
|
</td>
|
125
93
|
<td id='manu-wallner'>
|
126
94
|
<a href='https://github.com/milch'>
|
@@ -130,50 +98,82 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
130
98
|
</td>
|
131
99
|
</tr>
|
132
100
|
<tr>
|
133
|
-
<td id='
|
134
|
-
<a href='https://github.com/
|
135
|
-
<img src='https://github.com/
|
101
|
+
<td id='felix-krause'>
|
102
|
+
<a href='https://github.com/KrauseFx'>
|
103
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
136
104
|
</a>
|
137
|
-
<h4 align='center'><a href='https://twitter.com/
|
105
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
138
106
|
</td>
|
139
|
-
<td id='
|
140
|
-
<a href='https://github.com/
|
141
|
-
<img src='https://github.com/
|
107
|
+
<td id='jan-piotrowski'>
|
108
|
+
<a href='https://github.com/janpio'>
|
109
|
+
<img src='https://github.com/janpio.png?size=140'>
|
142
110
|
</a>
|
143
|
-
<h4 align='center'><a href='https://twitter.com/
|
111
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
144
112
|
</td>
|
145
|
-
<td id='
|
146
|
-
<a href='https://github.com/
|
147
|
-
<img src='https://github.com/
|
113
|
+
<td id='stefan-natchev'>
|
114
|
+
<a href='https://github.com/snatchev'>
|
115
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
148
116
|
</a>
|
149
|
-
<h4 align='center'><a href='https://twitter.com/
|
117
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
150
118
|
</td>
|
151
|
-
<td id='
|
152
|
-
<a href='https://github.com/
|
153
|
-
<img src='https://github.com/
|
119
|
+
<td id='olivier-halligon'>
|
120
|
+
<a href='https://github.com/AliSoftware'>
|
121
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
154
122
|
</a>
|
155
|
-
<h4 align='center'><a href='https://twitter.com/
|
123
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
156
124
|
</td>
|
157
|
-
<td id='
|
158
|
-
<a href='https://github.com/
|
159
|
-
<img src='https://github.com/
|
125
|
+
<td id='danielle-tomlinson'>
|
126
|
+
<a href='https://github.com/endocrimes'>
|
127
|
+
<img src='https://github.com/endocrimes.png?size=140'>
|
160
128
|
</a>
|
161
|
-
<h4 align='center'><a href='https://twitter.com/
|
129
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
162
130
|
</td>
|
163
131
|
</tr>
|
164
132
|
<tr>
|
133
|
+
<td id='aaron-brager'>
|
134
|
+
<a href='https://github.com/getaaron'>
|
135
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
136
|
+
</a>
|
137
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
138
|
+
</td>
|
139
|
+
<td id='jorge-revuelta-h'>
|
140
|
+
<a href='https://github.com/minuscorp'>
|
141
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
142
|
+
</a>
|
143
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
144
|
+
</td>
|
165
145
|
<td id='maksym-grebenets'>
|
166
146
|
<a href='https://github.com/mgrebenets'>
|
167
147
|
<img src='https://github.com/mgrebenets.png?size=140'>
|
168
148
|
</a>
|
169
149
|
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
170
150
|
</td>
|
151
|
+
<td id='fumiya-nakamura'>
|
152
|
+
<a href='https://github.com/nafu'>
|
153
|
+
<img src='https://github.com/nafu.png?size=140'>
|
154
|
+
</a>
|
155
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
156
|
+
</td>
|
157
|
+
<td id='andrew-mcburney'>
|
158
|
+
<a href='https://github.com/armcburney'>
|
159
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
160
|
+
</a>
|
161
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
162
|
+
</td>
|
163
|
+
</tr>
|
164
|
+
<tr>
|
171
165
|
<td id='kohki-miki'>
|
172
166
|
<a href='https://github.com/giginet'>
|
173
167
|
<img src='https://github.com/giginet.png?size=140'>
|
174
168
|
</a>
|
175
169
|
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
176
170
|
</td>
|
171
|
+
<td id='daniel-jankowski'>
|
172
|
+
<a href='https://github.com/mollyIV'>
|
173
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
174
|
+
</a>
|
175
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
176
|
+
</td>
|
177
177
|
</table>
|
178
178
|
|
179
179
|
Special thanks to all [contributors](https://github.com/fastlane/fastlane/graphs/contributors) for extending and improving _fastlane_.
|
@@ -32,13 +32,13 @@ module Deliver
|
|
32
32
|
screenshot_sets = localization.get_app_screenshot_sets
|
33
33
|
screenshot_sets.each do |screenshot_set|
|
34
34
|
screenshot_set.app_screenshots.each_with_index do |screenshot, index|
|
35
|
-
url = screenshot.image_asset_url
|
36
|
-
next if url.nil?
|
37
|
-
|
38
35
|
file_name = [index, screenshot_set.screenshot_display_type, index].join("_")
|
39
|
-
original_file_extension = File.
|
36
|
+
original_file_extension = File.extname(screenshot.file_name).strip.downcase[1..-1]
|
40
37
|
file_name += "." + original_file_extension
|
41
38
|
|
39
|
+
url = screenshot.image_asset_url(type: original_file_extension)
|
40
|
+
next if url.nil?
|
41
|
+
|
42
42
|
language = localization.locale
|
43
43
|
|
44
44
|
UI.message("Downloading existing screenshot '#{file_name}' for language '#{language}'")
|
@@ -80,8 +80,10 @@ module Deliver
|
|
80
80
|
|
81
81
|
platform = Spaceship::ConnectAPI::Platform.map(options[:platform])
|
82
82
|
|
83
|
-
|
84
|
-
|
83
|
+
enabled_languages = detect_languages(options)
|
84
|
+
|
85
|
+
app_store_version_localizations = verify_available_version_languages!(options, app, enabled_languages) unless options[:edit_live]
|
86
|
+
app_info_localizations = verify_available_info_languages!(options, app, enabled_languages) unless options[:edit_live]
|
85
87
|
|
86
88
|
if options[:edit_live]
|
87
89
|
# not all values are editable when using live_version
|
@@ -405,7 +407,7 @@ module Deliver
|
|
405
407
|
end
|
406
408
|
|
407
409
|
# Finding languages to enable
|
408
|
-
def verify_available_info_languages!(options, app)
|
410
|
+
def verify_available_info_languages!(options, app, languages)
|
409
411
|
app_info = app.fetch_edit_app_info
|
410
412
|
|
411
413
|
unless app_info
|
@@ -415,7 +417,7 @@ module Deliver
|
|
415
417
|
|
416
418
|
localizations = app_info.get_app_info_localizations
|
417
419
|
|
418
|
-
languages = (
|
420
|
+
languages = (languages || []).reject { |lang| lang == "default" }
|
419
421
|
locales_to_enable = languages - localizations.map(&:locale)
|
420
422
|
|
421
423
|
if locales_to_enable.count > 0
|
@@ -439,7 +441,7 @@ module Deliver
|
|
439
441
|
end
|
440
442
|
|
441
443
|
# Finding languages to enable
|
442
|
-
def verify_available_version_languages!(options, app)
|
444
|
+
def verify_available_version_languages!(options, app, languages)
|
443
445
|
platform = Spaceship::ConnectAPI::Platform.map(options[:platform])
|
444
446
|
version = app.get_edit_app_store_version(platform: platform)
|
445
447
|
|
@@ -450,7 +452,7 @@ module Deliver
|
|
450
452
|
|
451
453
|
localizations = version.get_app_store_version_localizations
|
452
454
|
|
453
|
-
languages = (
|
455
|
+
languages = (languages || []).reject { |lang| lang == "default" }
|
454
456
|
locales_to_enable = languages - localizations.map(&:locale)
|
455
457
|
|
456
458
|
if locales_to_enable.count > 0
|
@@ -548,7 +550,8 @@ module Deliver
|
|
548
550
|
UI.message("Uploading app review information to App Store Connect")
|
549
551
|
app_store_review_detail = begin
|
550
552
|
version.fetch_app_store_review_detail
|
551
|
-
rescue
|
553
|
+
rescue => error
|
554
|
+
UI.error("Error fetching app store review detail - #{error.message}")
|
552
555
|
nil
|
553
556
|
end # errors if doesn't exist
|
554
557
|
if app_store_review_detail
|
@@ -560,7 +563,7 @@ module Deliver
|
|
560
563
|
|
561
564
|
def set_review_attachment_file(version, options)
|
562
565
|
app_store_review_detail = version.fetch_app_store_review_detail
|
563
|
-
app_review_attachments = app_store_review_detail.
|
566
|
+
app_review_attachments = app_store_review_detail.app_store_review_attachments || []
|
564
567
|
|
565
568
|
if options[:app_review_attachment_file]
|
566
569
|
app_review_attachments.each do |app_review_attachment|
|
@@ -65,8 +65,8 @@ module Deliver
|
|
65
65
|
end
|
66
66
|
|
67
67
|
# Crash if any errors happen while deleting
|
68
|
-
|
69
|
-
UI.
|
68
|
+
errors.each do |error|
|
69
|
+
UI.error(error.message)
|
70
70
|
end
|
71
71
|
end
|
72
72
|
end
|
@@ -92,14 +92,27 @@ module Deliver
|
|
92
92
|
localizations = version.get_app_store_version_localizations
|
93
93
|
end
|
94
94
|
|
95
|
-
upload_screenshots(screenshots_per_language, localizations)
|
95
|
+
upload_screenshots(screenshots_per_language, localizations, options)
|
96
96
|
end
|
97
97
|
|
98
|
-
def upload_screenshots(screenshots_per_language, localizations)
|
98
|
+
def upload_screenshots(screenshots_per_language, localizations, options)
|
99
99
|
# Check if should wait for processing
|
100
|
-
|
100
|
+
# Default to waiting if submitting for review (since needed for submission)
|
101
|
+
# Otherwise use enviroment variable
|
102
|
+
if ENV["DELIVER_SKIP_WAIT_FOR_SCREENSHOT_PROCESSING"].nil?
|
103
|
+
wait_for_processing = options[:submit_for_review]
|
104
|
+
UI.verbose("Setting wait_for_processing from ':submit_for_review' option")
|
105
|
+
else
|
106
|
+
UI.verbose("Setting wait_for_processing from 'DELIVER_SKIP_WAIT_FOR_SCREENSHOT_PROCESSING' environment variable")
|
107
|
+
wait_for_processing = !FastlaneCore::Env.truthy?("DELIVER_SKIP_WAIT_FOR_SCREENSHOT_PROCESSING")
|
108
|
+
end
|
109
|
+
|
101
110
|
if wait_for_processing
|
102
|
-
UI.important("
|
111
|
+
UI.important("Will wait for screenshot image processing")
|
112
|
+
UI.important("Set env DELIVER_SKIP_WAIT_FOR_SCREENSHOT_PROCESSING=true to skip waiting for screenshots to process")
|
113
|
+
else
|
114
|
+
UI.important("Skipping the wait for screenshot image processing (which may affect submission)")
|
115
|
+
UI.important("Set env DELIVER_SKIP_WAIT_FOR_SCREENSHOT_PROCESSING=false to skip waiting for screenshots to process")
|
103
116
|
end
|
104
117
|
|
105
118
|
# Upload screenshots
|
@@ -76,7 +76,7 @@ protocol DeliverfileProtocol: class {
|
|
76
76
|
var appRatingConfigPath: String? { get }
|
77
77
|
|
78
78
|
/// Extra information for the submission (e.g. compliance specifications, IDFA settings)
|
79
|
-
var submissionInformation: String? { get }
|
79
|
+
var submissionInformation: [String : Any]? { get }
|
80
80
|
|
81
81
|
/// The ID of your App Store Connect team if you're in multiple teams
|
82
82
|
var teamId: String? { get }
|
@@ -99,13 +99,13 @@ protocol DeliverfileProtocol: class {
|
|
99
99
|
/// The default precheck rule level unless otherwise configured
|
100
100
|
var precheckDefaultRuleLevel: String { get }
|
101
101
|
|
102
|
-
/// An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
102
|
+
/// **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
103
103
|
var individualMetadataItems: [String] { get }
|
104
104
|
|
105
|
-
/// Metadata: The path to the app icon
|
105
|
+
/// **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
|
106
106
|
var appIcon: String? { get }
|
107
107
|
|
108
|
-
/// Metadata: The path to the Apple Watch app icon
|
108
|
+
/// **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
|
109
109
|
var appleWatchAppIcon: String? { get }
|
110
110
|
|
111
111
|
/// Metadata: The copyright notice
|
@@ -207,7 +207,7 @@ extension DeliverfileProtocol {
|
|
207
207
|
var resetRatings: Bool { return false }
|
208
208
|
var priceTier: String? { return nil }
|
209
209
|
var appRatingConfigPath: String? { return nil }
|
210
|
-
var submissionInformation: String? { return nil }
|
210
|
+
var submissionInformation: [String : Any]? { return nil }
|
211
211
|
var teamId: String? { return nil }
|
212
212
|
var teamName: String? { return nil }
|
213
213
|
var devPortalTeamId: String? { return nil }
|
@@ -246,4 +246,4 @@ extension DeliverfileProtocol {
|
|
246
246
|
|
247
247
|
// Please don't remove the lines below
|
248
248
|
// They are used to detect outdated files
|
249
|
-
// FastlaneRunnerAPIVersion [0.9.
|
249
|
+
// FastlaneRunnerAPIVersion [0.9.20]
|
@@ -455,9 +455,9 @@ func appledoc(input: Any,
|
|
455
455
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
456
456
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
457
457
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
458
|
-
- individualMetadataItems: An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
459
|
-
- appIcon: Metadata: The path to the app icon
|
460
|
-
- appleWatchAppIcon: Metadata: The path to the Apple Watch app icon
|
458
|
+
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
459
|
+
- appIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
|
460
|
+
- appleWatchAppIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
|
461
461
|
- copyright: Metadata: The copyright notice
|
462
462
|
- primaryCategory: Metadata: The english name of the primary category (e.g. `Business`, `Books`)
|
463
463
|
- secondaryCategory: Metadata: The english name of the secondary category (e.g. `Business`, `Books`)
|
@@ -515,7 +515,7 @@ func appstore(username: String,
|
|
515
515
|
resetRatings: Bool = false,
|
516
516
|
priceTier: Any? = nil,
|
517
517
|
appRatingConfigPath: String? = nil,
|
518
|
-
submissionInformation: Any? = nil,
|
518
|
+
submissionInformation: [String : Any]? = nil,
|
519
519
|
teamId: Any? = nil,
|
520
520
|
teamName: String? = nil,
|
521
521
|
devPortalTeamId: String? = nil,
|
@@ -2248,7 +2248,7 @@ func createAppOnManagedPlayStore(jsonKey: String? = nil,
|
|
2248
2248
|
- sku: SKU Number (e.g. '1234')
|
2249
2249
|
- platform: The platform to use (optional)
|
2250
2250
|
- platforms: The platforms to use (optional)
|
2251
|
-
- language: Primary Language (e.g. '
|
2251
|
+
- language: Primary Language (e.g. 'en-US', 'fr-FR')
|
2252
2252
|
- companyName: The name of your company. Only required if it's the first app you create
|
2253
2253
|
- skipItc: Skip the creation of the app on App Store Connect
|
2254
2254
|
- itcUsers: Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles
|
@@ -2505,9 +2505,9 @@ func deleteKeychain(name: String? = nil,
|
|
2505
2505
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
2506
2506
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
2507
2507
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
2508
|
-
- individualMetadataItems: An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
2509
|
-
- appIcon: Metadata: The path to the app icon
|
2510
|
-
- appleWatchAppIcon: Metadata: The path to the Apple Watch app icon
|
2508
|
+
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
2509
|
+
- appIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
|
2510
|
+
- appleWatchAppIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
|
2511
2511
|
- copyright: Metadata: The copyright notice
|
2512
2512
|
- primaryCategory: Metadata: The english name of the primary category (e.g. `Business`, `Books`)
|
2513
2513
|
- secondaryCategory: Metadata: The english name of the secondary category (e.g. `Business`, `Books`)
|
@@ -2565,7 +2565,7 @@ func deliver(username: Any = deliverfile.username,
|
|
2565
2565
|
resetRatings: Bool = deliverfile.resetRatings,
|
2566
2566
|
priceTier: Any? = deliverfile.priceTier,
|
2567
2567
|
appRatingConfigPath: Any? = deliverfile.appRatingConfigPath,
|
2568
|
-
submissionInformation: Any? = deliverfile.submissionInformation,
|
2568
|
+
submissionInformation: [String : Any]? = deliverfile.submissionInformation,
|
2569
2569
|
teamId: Any? = deliverfile.teamId,
|
2570
2570
|
teamName: Any? = deliverfile.teamName,
|
2571
2571
|
devPortalTeamId: Any? = deliverfile.devPortalTeamId,
|
@@ -2799,7 +2799,7 @@ func downloadDsyms(username: String,
|
|
2799
2799
|
func downloadFromPlayStore(packageName: String,
|
2800
2800
|
versionName: String? = nil,
|
2801
2801
|
track: String = "production",
|
2802
|
-
metadataPath: String
|
2802
|
+
metadataPath: String = "./metadata",
|
2803
2803
|
key: String? = nil,
|
2804
2804
|
issuer: String? = nil,
|
2805
2805
|
jsonKey: String? = nil,
|
@@ -5343,7 +5343,7 @@ func println(message: String? = nil) {
|
|
5343
5343
|
- sku: SKU Number (e.g. '1234')
|
5344
5344
|
- platform: The platform to use (optional)
|
5345
5345
|
- platforms: The platforms to use (optional)
|
5346
|
-
- language: Primary Language (e.g. '
|
5346
|
+
- language: Primary Language (e.g. 'en-US', 'fr-FR')
|
5347
5347
|
- companyName: The name of your company. Only required if it's the first app you create
|
5348
5348
|
- skipItc: Skip the creation of the app on App Store Connect
|
5349
5349
|
- itcUsers: Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles
|
@@ -7097,6 +7097,7 @@ func splunkmint(dsym: String? = nil,
|
|
7097
7097
|
- packagePath: Change working directory before any other operation
|
7098
7098
|
- xcconfig: Use xcconfig file to override swift package generate-xcodeproj defaults
|
7099
7099
|
- configuration: Build with configuration (debug|release) [default: debug]
|
7100
|
+
- disableSandbox: Disable using the sandbox when executing subprocesses
|
7100
7101
|
- xcprettyOutput: Specifies the output type for xcpretty. eg. 'test', or 'simple'
|
7101
7102
|
- xcprettyArgs: Pass in xcpretty additional command line arguments (e.g. '--test --no-color' or '--tap --no-utf'), requires xcpretty_output to be specified also
|
7102
7103
|
- verbose: Increase verbosity of informational output
|
@@ -7106,6 +7107,7 @@ func spm(command: String = "build",
|
|
7106
7107
|
packagePath: String? = nil,
|
7107
7108
|
xcconfig: String? = nil,
|
7108
7109
|
configuration: String? = nil,
|
7110
|
+
disableSandbox: Bool = false,
|
7109
7111
|
xcprettyOutput: String? = nil,
|
7110
7112
|
xcprettyArgs: String? = nil,
|
7111
7113
|
verbose: Bool = false) {
|
@@ -7114,6 +7116,7 @@ func spm(command: String = "build",
|
|
7114
7116
|
RubyCommand.Argument(name: "package_path", value: packagePath),
|
7115
7117
|
RubyCommand.Argument(name: "xcconfig", value: xcconfig),
|
7116
7118
|
RubyCommand.Argument(name: "configuration", value: configuration),
|
7119
|
+
RubyCommand.Argument(name: "disable_sandbox", value: disableSandbox),
|
7117
7120
|
RubyCommand.Argument(name: "xcpretty_output", value: xcprettyOutput),
|
7118
7121
|
RubyCommand.Argument(name: "xcpretty_args", value: xcprettyArgs),
|
7119
7122
|
RubyCommand.Argument(name: "verbose", value: verbose)])
|
@@ -7196,7 +7199,7 @@ func supply(packageName: String,
|
|
7196
7199
|
releaseStatus: String = "completed",
|
7197
7200
|
track: String = "production",
|
7198
7201
|
rollout: String? = nil,
|
7199
|
-
metadataPath: String
|
7202
|
+
metadataPath: String = "./metadata",
|
7200
7203
|
key: String? = nil,
|
7201
7204
|
issuer: String? = nil,
|
7202
7205
|
jsonKey: String? = nil,
|
@@ -8099,9 +8102,9 @@ func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/api/0",
|
|
8099
8102
|
- itcProvider: The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column
|
8100
8103
|
- runPrecheckBeforeSubmit: Run precheck before submitting to app review
|
8101
8104
|
- precheckDefaultRuleLevel: The default precheck rule level unless otherwise configured
|
8102
|
-
- individualMetadataItems: An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
8103
|
-
- appIcon: Metadata: The path to the app icon
|
8104
|
-
- appleWatchAppIcon: Metadata: The path to the Apple Watch app icon
|
8105
|
+
- individualMetadataItems: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
|
8106
|
+
- appIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
|
8107
|
+
- appleWatchAppIcon: **DEPRECATED!** Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
|
8105
8108
|
- copyright: Metadata: The copyright notice
|
8106
8109
|
- primaryCategory: Metadata: The english name of the primary category (e.g. `Business`, `Books`)
|
8107
8110
|
- secondaryCategory: Metadata: The english name of the secondary category (e.g. `Business`, `Books`)
|
@@ -8159,7 +8162,7 @@ func uploadToAppStore(username: String,
|
|
8159
8162
|
resetRatings: Bool = false,
|
8160
8163
|
priceTier: Any? = nil,
|
8161
8164
|
appRatingConfigPath: String? = nil,
|
8162
|
-
submissionInformation: Any? = nil,
|
8165
|
+
submissionInformation: [String : Any]? = nil,
|
8163
8166
|
teamId: Any? = nil,
|
8164
8167
|
teamName: String? = nil,
|
8165
8168
|
devPortalTeamId: String? = nil,
|
@@ -8305,7 +8308,7 @@ func uploadToPlayStore(packageName: String,
|
|
8305
8308
|
releaseStatus: String = "completed",
|
8306
8309
|
track: String = "production",
|
8307
8310
|
rollout: String? = nil,
|
8308
|
-
metadataPath: String
|
8311
|
+
metadataPath: String = "./metadata",
|
8309
8312
|
key: String? = nil,
|
8310
8313
|
issuer: String? = nil,
|
8311
8314
|
jsonKey: String? = nil,
|
@@ -8815,7 +8818,7 @@ func xcov(workspace: String? = nil,
|
|
8815
8818
|
coverallsServiceJobId: String? = nil,
|
8816
8819
|
coverallsRepoToken: String? = nil,
|
8817
8820
|
xcconfig: String? = nil,
|
8818
|
-
ideFoundationPath: String = "/Applications/Xcode
|
8821
|
+
ideFoundationPath: String = "/Applications/Xcode.app/Contents/Developer/../Frameworks/IDEFoundation.framework/Versions/A/IDEFoundation",
|
8819
8822
|
legacySupport: Bool = false) {
|
8820
8823
|
let command = RubyCommand(commandID: "", methodName: "xcov", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
|
8821
8824
|
RubyCommand.Argument(name: "project", value: project),
|
@@ -8960,4 +8963,4 @@ let snapshotfile: Snapshotfile = Snapshotfile()
|
|
8960
8963
|
|
8961
8964
|
// Please don't remove the lines below
|
8962
8965
|
// They are used to detect outdated files
|
8963
|
-
// FastlaneRunnerAPIVersion [0.9.
|
8966
|
+
// FastlaneRunnerAPIVersion [0.9.72]
|
@@ -34,7 +34,7 @@ class SocketClient: NSObject {
|
|
34
34
|
}
|
35
35
|
|
36
36
|
static let connectTimeoutSeconds = 2
|
37
|
-
static let defaultCommandTimeoutSeconds =
|
37
|
+
static let defaultCommandTimeoutSeconds = 10_800 // 3 hours
|
38
38
|
static let doneToken = "done" // TODO: remove these
|
39
39
|
static let cancelToken = "cancelFastlaneRun"
|
40
40
|
|
@@ -118,6 +118,7 @@ class SocketClient: NSObject {
|
|
118
118
|
public func send(rubyCommand: RubyCommandable) {
|
119
119
|
verbose(message: "sending: \(rubyCommand.json)")
|
120
120
|
send(string: rubyCommand.json)
|
121
|
+
writeSemaphore.signal()
|
121
122
|
}
|
122
123
|
|
123
124
|
public func sendComplete() {
|
@@ -37,7 +37,6 @@ module FastlaneCore
|
|
37
37
|
|
38
38
|
def self.fetch_info_plist_file(path)
|
39
39
|
UI.user_error!("Could not find file at path '#{path}'") unless File.exist?(path)
|
40
|
-
Zip.validate_entry_sizes = true # https://github.com/rubyzip/rubyzip/releases/tag/v2.0.0
|
41
40
|
Zip::File.open(path, "rb") do |zipfile|
|
42
41
|
file = zipfile.glob('**/Payload/*.app/Info.plist').first
|
43
42
|
return nil unless file
|
@@ -113,7 +113,7 @@ module FastlaneCore
|
|
113
113
|
else
|
114
114
|
# `security` only works on Mac, fallback to `openssl`
|
115
115
|
# via https://stackoverflow.com/a/14379814/252627
|
116
|
-
decoded = `openssl smime -inform der -verify -noverify -in #{path} 2> #{err}`
|
116
|
+
decoded = `openssl smime -inform der -verify -noverify -in #{path.shellescape} 2> #{err}`
|
117
117
|
end
|
118
118
|
UI.error("Failure to decode #{path}. Exit: #{$?.exitstatus}: #{File.read(err)}") if $?.exitstatus != 0
|
119
119
|
decoded
|
@@ -120,6 +120,12 @@ module Spaceship
|
|
120
120
|
def upload_screenshot(path: nil, wait_for_processing: true)
|
121
121
|
return Spaceship::ConnectAPI::AppScreenshot.create(app_screenshot_set_id: id, path: path, wait_for_processing: wait_for_processing)
|
122
122
|
end
|
123
|
+
|
124
|
+
def reorder_screenshots(app_screenshot_ids: nil)
|
125
|
+
Spaceship::ConnectAPI.patch_app_screenshot_set_screenshots(app_screenshot_set_id: id, app_screenshot_ids: app_screenshot_ids)
|
126
|
+
|
127
|
+
return Spaceship::ConnectAPI.get_app_screenshot_set(app_screenshot_set_id: id, includes: "appScreenshots").first
|
128
|
+
end
|
123
129
|
end
|
124
130
|
end
|
125
131
|
end
|
@@ -15,6 +15,8 @@ module Spaceship
|
|
15
15
|
attr_accessor :demo_account_required
|
16
16
|
attr_accessor :notes
|
17
17
|
|
18
|
+
attr_accessor :app_store_review_attachments
|
19
|
+
|
18
20
|
attr_mapping({
|
19
21
|
"contactFirstName" => "contact_first_name",
|
20
22
|
"contactLastName" => "contact_last_name",
|
@@ -23,7 +25,9 @@ module Spaceship
|
|
23
25
|
"demoAccountName" => "demo_account_name",
|
24
26
|
"demoAccountPassword" => "demo_account_password",
|
25
27
|
"demoAccountRequired" => "demo_account_required",
|
26
|
-
"notes" => "notes"
|
28
|
+
"notes" => "notes",
|
29
|
+
|
30
|
+
"appStoreReviewAttachments" => "app_store_review_attachments"
|
27
31
|
})
|
28
32
|
|
29
33
|
def self.type
|
@@ -34,11 +38,6 @@ module Spaceship
|
|
34
38
|
# API
|
35
39
|
#
|
36
40
|
|
37
|
-
def fetch_app_review_attachments
|
38
|
-
resp = Spaceship::ConnectAPI.get_app_review_attachments(app_store_review_detail_id: id)
|
39
|
-
return resp.to_models
|
40
|
-
end
|
41
|
-
|
42
41
|
def update(attributes: nil)
|
43
42
|
return Spaceship::ConnectAPI.patch_app_store_review_detail(app_store_review_detail_id: id, attributes: attributes)
|
44
43
|
end
|
@@ -122,8 +122,8 @@ module Spaceship
|
|
122
122
|
return resp.to_models.first
|
123
123
|
end
|
124
124
|
|
125
|
-
def fetch_app_store_review_detail
|
126
|
-
resp = Spaceship::ConnectAPI.get_app_store_review_detail(app_store_version_id: id)
|
125
|
+
def fetch_app_store_review_detail(includes: "appStoreReviewAttachments")
|
126
|
+
resp = Spaceship::ConnectAPI.get_app_store_review_detail(app_store_version_id: id, includes: includes)
|
127
127
|
return resp.to_models.first
|
128
128
|
end
|
129
129
|
|
@@ -273,11 +273,6 @@ module Spaceship
|
|
273
273
|
# appReviewAttachments
|
274
274
|
#
|
275
275
|
|
276
|
-
def get_app_review_attachments(app_store_review_detail_id: nil, filter: {}, includes: nil, limit: nil, sort: nil)
|
277
|
-
params = Client.instance.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
|
278
|
-
Client.instance.get("appStoreReviewDetails/#{app_store_review_detail_id}/appReviewAttachments", params)
|
279
|
-
end
|
280
|
-
|
281
276
|
def post_app_review_attachment(app_store_review_detail_id: nil, attributes: {})
|
282
277
|
body = {
|
283
278
|
data: {
|
@@ -323,6 +318,11 @@ module Spaceship
|
|
323
318
|
Client.instance.get("appScreenshotSets", params)
|
324
319
|
end
|
325
320
|
|
321
|
+
def get_app_screenshot_set(app_screenshot_set_id: nil, filter: {}, includes: nil, limit: nil, sort: nil)
|
322
|
+
params = Client.instance.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
|
323
|
+
Client.instance.get("appScreenshotSets/#{app_screenshot_set_id}", params)
|
324
|
+
end
|
325
|
+
|
326
326
|
def post_app_screenshot_set(app_store_version_localization_id: nil, attributes: {})
|
327
327
|
body = {
|
328
328
|
data: {
|
@@ -342,6 +342,21 @@ module Spaceship
|
|
342
342
|
Client.instance.post("appScreenshotSets", body)
|
343
343
|
end
|
344
344
|
|
345
|
+
def patch_app_screenshot_set_screenshots(app_screenshot_set_id: nil, app_screenshot_ids: nil)
|
346
|
+
app_screenshot_ids ||= []
|
347
|
+
|
348
|
+
body = {
|
349
|
+
data: app_screenshot_ids.map do |app_screenshot_id|
|
350
|
+
{
|
351
|
+
type: "appScreenshots",
|
352
|
+
id: app_screenshot_id
|
353
|
+
}
|
354
|
+
end
|
355
|
+
}
|
356
|
+
|
357
|
+
Client.instance.patch("appScreenshotSets/#{app_screenshot_set_id}/relationships/appScreenshots", body)
|
358
|
+
end
|
359
|
+
|
345
360
|
#
|
346
361
|
# appScreenshots
|
347
362
|
#
|
metadata
CHANGED
@@ -1,31 +1,31 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.150.0
|
4
|
+
version: 2.150.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Manu Wallner
|
8
|
-
- Danielle Tomlinson
|
9
|
-
- Matthew Ellis
|
10
|
-
- Stefan Natchev
|
11
|
-
- Jimmy Dee
|
12
|
-
- Kohki Miki
|
13
|
-
- Jorge Revuelta H
|
14
|
-
- Daniel Jankowski
|
15
|
-
- Jérôme Lacoste
|
16
7
|
- Andrew McBurney
|
17
|
-
-
|
18
|
-
-
|
19
|
-
- Helmut Januschka
|
8
|
+
- Jimmy Dee
|
9
|
+
- Matthew Ellis
|
20
10
|
- Jan Piotrowski
|
21
|
-
- Luka Mirosevic
|
22
|
-
- Felix Krause
|
23
|
-
- Fumiya Nakamura
|
24
|
-
- Olivier Halligon
|
25
|
-
- Maksym Grebenets
|
26
11
|
- Aaron Brager
|
12
|
+
- Helmut Januschka
|
27
13
|
- Josh Holtz
|
14
|
+
- Daniel Jankowski
|
15
|
+
- Manu Wallner
|
16
|
+
- Kohki Miki
|
17
|
+
- Luka Mirosevic
|
18
|
+
- Max Ott
|
19
|
+
- Jorge Revuelta H
|
20
|
+
- Danielle Tomlinson
|
21
|
+
- Stefan Natchev
|
22
|
+
- Fumiya Nakamura
|
23
|
+
- Iulian Onofrei
|
28
24
|
- Joshua Liebowitz
|
25
|
+
- Jérôme Lacoste
|
26
|
+
- Maksym Grebenets
|
27
|
+
- Olivier Halligon
|
28
|
+
- Felix Krause
|
29
29
|
autorequire:
|
30
30
|
bindir: bin
|
31
31
|
cert_chain: []
|
@@ -495,20 +495,20 @@ dependencies:
|
|
495
495
|
requirements:
|
496
496
|
- - ">="
|
497
497
|
- !ruby/object:Gem::Version
|
498
|
-
version:
|
498
|
+
version: 2.0.0
|
499
499
|
- - "<"
|
500
500
|
- !ruby/object:Gem::Version
|
501
|
-
version:
|
501
|
+
version: 3.0.0
|
502
502
|
type: :runtime
|
503
503
|
prerelease: false
|
504
504
|
version_requirements: !ruby/object:Gem::Requirement
|
505
505
|
requirements:
|
506
506
|
- - ">="
|
507
507
|
- !ruby/object:Gem::Version
|
508
|
-
version:
|
508
|
+
version: 2.0.0
|
509
509
|
- - "<"
|
510
510
|
- !ruby/object:Gem::Version
|
511
|
-
version:
|
511
|
+
version: 3.0.0
|
512
512
|
- !ruby/object:Gem::Dependency
|
513
513
|
name: security
|
514
514
|
requirement: !ruby/object:Gem::Requirement
|
@@ -654,7 +654,7 @@ dependencies:
|
|
654
654
|
version: '0.1'
|
655
655
|
- - "<"
|
656
656
|
- !ruby/object:Gem::Version
|
657
|
-
version: '
|
657
|
+
version: '4.0'
|
658
658
|
type: :runtime
|
659
659
|
prerelease: false
|
660
660
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -664,7 +664,7 @@ dependencies:
|
|
664
664
|
version: '0.1'
|
665
665
|
- - "<"
|
666
666
|
- !ruby/object:Gem::Version
|
667
|
-
version: '
|
667
|
+
version: '4.0'
|
668
668
|
- !ruby/object:Gem::Dependency
|
669
669
|
name: aws-sdk-s3
|
670
670
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1842,9 +1842,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1842
1842
|
version: '2.4'
|
1843
1843
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1844
1844
|
requirements:
|
1845
|
-
- - "
|
1845
|
+
- - ">="
|
1846
1846
|
- !ruby/object:Gem::Version
|
1847
|
-
version:
|
1847
|
+
version: '0'
|
1848
1848
|
requirements: []
|
1849
1849
|
rubygems_version: 3.0.3
|
1850
1850
|
signing_key:
|