fastlane 2.29.1 → 2.30.0.beta.20170510010041
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/deliver/lib/assets/summary.html.erb +7 -24
- data/deliver/lib/deliver/options.rb +0 -4
- data/deliver/lib/deliver/setup.rb +0 -11
- data/deliver/lib/deliver/upload_metadata.rb +0 -42
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +2 -1
- data/fastlane/lib/fastlane/documentation/actions_list.rb +0 -22
- data/fastlane/lib/fastlane/environment_printer.rb +13 -11
- data/fastlane/lib/fastlane/one_off.rb +0 -1
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb +1 -5
- data/match/lib/match/encrypt.rb +1 -3
- data/spaceship/lib/spaceship/tunes/app_version.rb +0 -58
- metadata +16 -18
- data/spaceship/lib/spaceship/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b8226feb0b3924420ecec20f314fa334ed3635ba
|
4
|
+
data.tar.gz: 7b42ccd1e03ba4f94da8e24eaf093b2477fb9449
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9e89d86160b104681f29b6b776381676c38611864fb448209e6a168482a42746bea4e3b3f0302ecdadb2c9f8a4cf6889b192e8dc8f5b4b0bcd2ba1c7aedc9181
|
7
|
+
data.tar.gz: 90d879716e7f0ab869d033d3482225eca83fbe2179a74bc517b02ad6ef785135128c65bbedae6ab071c4f907bb9102f9bfff7a1a2d4e98ee8464e90f6fad1a2d
|
@@ -118,13 +118,13 @@
|
|
118
118
|
margin-right: 20px;
|
119
119
|
}
|
120
120
|
|
121
|
-
.app-
|
121
|
+
.app-review-information {
|
122
122
|
margin-left: 15px;
|
123
123
|
margin-right: 15px;
|
124
124
|
margin-top: 22px;
|
125
125
|
}
|
126
126
|
|
127
|
-
.app-
|
127
|
+
.app-review-information-key {
|
128
128
|
font-weight: 700;
|
129
129
|
}
|
130
130
|
</style>
|
@@ -241,37 +241,20 @@
|
|
241
241
|
|
242
242
|
<hr />
|
243
243
|
<% end # end data %>
|
244
|
-
<% if @options[:trade_representative_contact_information] %>
|
245
|
-
<div class="app-minor-information">
|
246
|
-
<div class="cat-headline">Trade Representative Contact Information</div>
|
247
|
-
<dl class="app-minor-information">
|
248
|
-
<% @options[:trade_representative_contact_information].each do |key, value| %>
|
249
|
-
<dt class="app-minor-information-key">
|
250
|
-
<%= key.to_s.capitalize.gsub("_", " ") %>
|
251
|
-
</dt>
|
252
|
-
<dd class="app-minor-information-text">
|
253
|
-
<%= (value || '').gsub("\n", "<br />") %>
|
254
|
-
</dd>
|
255
|
-
<% end %>
|
256
|
-
</dl>
|
257
|
-
</div>
|
258
|
-
<hr />
|
259
|
-
<% end %>
|
260
|
-
|
261
244
|
<% if @options[:app_review_information] %>
|
262
|
-
<div class="app-
|
245
|
+
<div class="app-review-information">
|
263
246
|
<div class="cat-headline">Review Information</div>
|
264
|
-
<dl class="app-
|
247
|
+
<dl class="app-review-information">
|
265
248
|
<% @options[:app_review_information].each do |key, value| %>
|
266
|
-
<dt class="app-
|
249
|
+
<dt class="app-review-information-key">
|
267
250
|
<%= key.to_s.capitalize.gsub("_", " ") %>
|
268
251
|
</dt>
|
269
|
-
<dd class="app-
|
252
|
+
<dd class="app-review-information-text">
|
270
253
|
<%= (value || '').gsub("\n", "<br />") %>
|
271
254
|
</dd>
|
272
255
|
<% end %>
|
273
256
|
</dl>
|
274
257
|
</div>
|
275
|
-
|
258
|
+
<% end %>
|
276
259
|
</body>
|
277
260
|
</html>
|
@@ -228,10 +228,6 @@ module Deliver
|
|
228
228
|
description: "Metadata: The english name of the secondary second sub category(e.g. `Educational`, `Puzzle`)",
|
229
229
|
optional: true,
|
230
230
|
is_string: true),
|
231
|
-
FastlaneCore::ConfigItem.new(key: :trade_representative_contact_information,
|
232
|
-
description: "Metadata: A hash containing the trade representative contact information",
|
233
|
-
optional: true,
|
234
|
-
is_string: false),
|
235
231
|
FastlaneCore::ConfigItem.new(key: :app_review_information,
|
236
232
|
description: "Metadata: A hash containing the review information",
|
237
233
|
optional: true,
|
@@ -66,17 +66,6 @@ module Deliver
|
|
66
66
|
UI.message("Writing to '#{resulting_path}'")
|
67
67
|
end
|
68
68
|
|
69
|
-
# Trade Representative Contact Information
|
70
|
-
UploadMetadata::TRADE_REPRESENTATIVE_CONTACT_INFORMATION_VALUES.each do |key, option_name|
|
71
|
-
content = v.send(key).to_s
|
72
|
-
content << "\n"
|
73
|
-
base_dir = File.join(path, UploadMetadata::TRADE_REPRESENTATIVE_CONTACT_INFORMATION_DIR)
|
74
|
-
FileUtils.mkdir_p(base_dir)
|
75
|
-
resulting_path = File.join(base_dir, "#{option_name}.txt")
|
76
|
-
File.write(resulting_path, content)
|
77
|
-
UI.message("Writing to '#{resulting_path}'")
|
78
|
-
end
|
79
|
-
|
80
69
|
# Review information
|
81
70
|
UploadMetadata::REVIEW_INFORMATION_VALUES.each do |key, option_name|
|
82
71
|
content = v.send(key).to_s
|
@@ -15,23 +15,6 @@ module Deliver
|
|
15
15
|
:primary_first_sub_category, :primary_second_sub_category,
|
16
16
|
:secondary_first_sub_category, :secondary_second_sub_category]
|
17
17
|
|
18
|
-
# Trade Representative Contact Information values
|
19
|
-
TRADE_REPRESENTATIVE_CONTACT_INFORMATION_VALUES = {
|
20
|
-
trade_representative_trade_name: :trade_name,
|
21
|
-
trade_representative_first_name: :first_name,
|
22
|
-
trade_representative_last_name: :last_name,
|
23
|
-
trade_representative_address_line_1: :adderss_line1,
|
24
|
-
trade_representative_address_line_2: :adderss_line2,
|
25
|
-
trade_representative_address_line_3: :adderss_line3,
|
26
|
-
trade_representative_city_name: :city_name,
|
27
|
-
trade_representative_state: :state,
|
28
|
-
trade_representative_country: :country,
|
29
|
-
trade_representative_postal_code: :postal_code,
|
30
|
-
trade_representative_phone_number: :phone_number,
|
31
|
-
trade_representative_email: :email_address,
|
32
|
-
trade_representative_is_displayed_on_app_store: :is_displayed_on_app_store
|
33
|
-
}
|
34
|
-
|
35
18
|
# Review information values
|
36
19
|
REVIEW_INFORMATION_VALUES = {
|
37
20
|
review_first_name: :first_name,
|
@@ -49,9 +32,6 @@ module Deliver
|
|
49
32
|
# Non localized app details values, that are editable in live state
|
50
33
|
NON_LOCALISED_LIVE_VALUES = [:privacy_url]
|
51
34
|
|
52
|
-
# Directory name it contains trade representative contact information
|
53
|
-
TRADE_REPRESENTATIVE_CONTACT_INFORMATION_DIR = "trade_representative_contact_information"
|
54
|
-
|
55
35
|
# Directory name it contains review information
|
56
36
|
REVIEW_INFORMATION_DIR = "review_information"
|
57
37
|
|
@@ -112,7 +92,6 @@ module Deliver
|
|
112
92
|
|
113
93
|
v.release_on_approval = options[:automatic_release]
|
114
94
|
|
115
|
-
set_trade_representative_contact_information(v, options)
|
116
95
|
set_review_information(v, options)
|
117
96
|
set_app_rating(v, options)
|
118
97
|
|
@@ -219,17 +198,6 @@ module Deliver
|
|
219
198
|
options[key] ||= File.read(path)
|
220
199
|
end
|
221
200
|
|
222
|
-
# Load trade representative contact information
|
223
|
-
options[:trade_representative_contact_information] ||= {}
|
224
|
-
TRADE_REPRESENTATIVE_CONTACT_INFORMATION_VALUES.values.each do |option_name|
|
225
|
-
path = File.join(options[:metadata_path], TRADE_REPRESENTATIVE_CONTACT_INFORMATION_DIR, "#{option_name}.txt")
|
226
|
-
next unless File.exist?(path)
|
227
|
-
next if options[:trade_representative_contact_information][option_name].to_s.length > 0
|
228
|
-
|
229
|
-
UI.message("Loading '#{path}'...")
|
230
|
-
options[:trade_representative_contact_information][option_name] ||= File.read(path)
|
231
|
-
end
|
232
|
-
|
233
201
|
# Load review information
|
234
202
|
options[:app_review_information] ||= {}
|
235
203
|
REVIEW_INFORMATION_VALUES.values.each do |option_name|
|
@@ -244,16 +212,6 @@ module Deliver
|
|
244
212
|
|
245
213
|
private
|
246
214
|
|
247
|
-
def set_trade_representative_contact_information(v, options)
|
248
|
-
return unless options[:trade_representative_contact_information]
|
249
|
-
info = options[:trade_representative_contact_information]
|
250
|
-
UI.user_error!("`trade_representative_contact_information` must be a hash", show_github_issues: true) unless info.kind_of?(Hash)
|
251
|
-
|
252
|
-
TRADE_REPRESENTATIVE_CONTACT_INFORMATION_VALUES.each do |key, option_name|
|
253
|
-
v.send("#{key}=", info[option_name].chomp) if info[option_name].chomp
|
254
|
-
end
|
255
|
-
end
|
256
|
-
|
257
215
|
def set_review_information(v, options)
|
258
216
|
return unless options[:app_review_information]
|
259
217
|
info = options[:app_review_information]
|
@@ -57,7 +57,8 @@ module Fastlane
|
|
57
57
|
update_needed.each do |tool_info|
|
58
58
|
tool = tool_info[0]
|
59
59
|
local_version = Gem::Version.new(highest_versions[tool].version)
|
60
|
-
|
60
|
+
update_url = FastlaneCore::UpdateChecker.generate_fetch_url(tool)
|
61
|
+
latest_version = FastlaneCore::UpdateChecker.fetch_latest(update_url)
|
61
62
|
UI.message("Updating #{tool} from #{local_version} to #{latest_version} ... 🚀")
|
62
63
|
|
63
64
|
# Approximate_recommendation will create a string like "~> 0.10" from a version 0.10.0, e.g. one that is valid for versions >= 0.10 and <1.0
|
@@ -73,29 +73,7 @@ module Fastlane
|
|
73
73
|
else
|
74
74
|
puts "Couldn't find action for the given filter.".red
|
75
75
|
puts "==========================================\n".red
|
76
|
-
|
77
76
|
print_all # show all available actions instead
|
78
|
-
print_suggestions(filter)
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
def self.print_suggestions(filter)
|
83
|
-
if !filter.nil? && filter.length > 1
|
84
|
-
action_names = []
|
85
|
-
all_actions(nil) do |action_ref, action_name|
|
86
|
-
action_names << action_name
|
87
|
-
end
|
88
|
-
|
89
|
-
corrections = []
|
90
|
-
|
91
|
-
if !Gem.loaded_specs["did_you_mean"].nil? && Gem.loaded_specs["did_you_mean"].version >= Gem::Version.new('1.1.0')
|
92
|
-
spell_checker = DidYouMean::SpellChecker.new(dictionary: action_names)
|
93
|
-
corrections << spell_checker.correct(filter).compact
|
94
|
-
end
|
95
|
-
|
96
|
-
corrections << action_names.select { |name| name.include? filter }
|
97
|
-
|
98
|
-
puts "Did you mean: #{corrections.flatten.uniq.join(', ')}?".green unless corrections.flatten.empty?
|
99
77
|
end
|
100
78
|
end
|
101
79
|
|
@@ -62,16 +62,17 @@ module Fastlane
|
|
62
62
|
table << "|--------|---------|\n"
|
63
63
|
plugin_manager.available_plugins.each do |plugin|
|
64
64
|
begin
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
rescue
|
73
|
-
update_status = "💥 Check failed"
|
65
|
+
installed_version = Fastlane::ActionCollector.determine_version(plugin)
|
66
|
+
update_url = FastlaneCore::UpdateChecker.generate_fetch_url(plugin)
|
67
|
+
latest_version = FastlaneCore::UpdateChecker.fetch_latest(update_url)
|
68
|
+
if Gem::Version.new(installed_version) == Gem::Version.new(latest_version)
|
69
|
+
update_status = "✅ Up-To-Date"
|
70
|
+
else
|
71
|
+
update_status = "🚫 Update available"
|
74
72
|
end
|
73
|
+
rescue
|
74
|
+
update_status = "💥 Check failed"
|
75
|
+
end
|
75
76
|
table << "| #{plugin} | #{installed_version} | #{update_status} |\n"
|
76
77
|
end
|
77
78
|
|
@@ -106,8 +107,9 @@ module Fastlane
|
|
106
107
|
|
107
108
|
next unless fastlane_tools.include?(current_gem.name.to_sym)
|
108
109
|
begin
|
109
|
-
|
110
|
-
|
110
|
+
update_url = FastlaneCore::UpdateChecker.generate_fetch_url(current_gem.name)
|
111
|
+
latest_version = FastlaneCore::UpdateChecker.fetch_latest(update_url)
|
112
|
+
if Gem::Version.new(current_gem.version) == Gem::Version.new(latest_version)
|
111
113
|
update_status = "✅ Up-To-Date"
|
112
114
|
else
|
113
115
|
update_status = "🚫 Update available"
|
@@ -33,7 +33,6 @@ module Fastlane
|
|
33
33
|
UI.verbose(caller.join("\n"))
|
34
34
|
UI.user_error!("The action '#{action}' is no longer bundled with fastlane. You can install it using `fastlane add_plugin #{action}`")
|
35
35
|
else
|
36
|
-
Fastlane::ActionsList.print_suggestions(action)
|
37
36
|
UI.user_error!("Action '#{action}' not available, run `fastlane actions` to get a full list")
|
38
37
|
end
|
39
38
|
end
|
@@ -112,11 +112,7 @@ module FastlaneCore
|
|
112
112
|
end
|
113
113
|
|
114
114
|
def self.fetch_latest(gem_name)
|
115
|
-
JSON.parse(Excon.get(
|
116
|
-
end
|
117
|
-
|
118
|
-
def self.generate_fetch_url(gem_name)
|
119
|
-
"https://rubygems.org/api/v1/gems/#{gem_name}.json"
|
115
|
+
JSON.parse(Excon.get("https://rubygems.org/api/v1/gems/#{gem_name}.json").body)["version"]
|
120
116
|
end
|
121
117
|
|
122
118
|
# (optional) Returns the app identifier for the current tool
|
data/match/lib/match/encrypt.rb
CHANGED
@@ -16,9 +16,7 @@ module Match
|
|
16
16
|
|
17
17
|
unless password
|
18
18
|
if !UI.interactive?
|
19
|
-
UI.error "
|
20
|
-
UI.error "Bailing out instead of asking for a password, since this is non-interactive mode."
|
21
|
-
UI.error "Try setting the MATCH_PASSWORD environment variable, or temporarily enable interactive mode to store a password."
|
19
|
+
UI.error "No password found neither in environment nor in local keychain. Bailing out as in non interactive mode."
|
22
20
|
else
|
23
21
|
UI.important "Enter the passphrase that should be used to encrypt/decrypt your certificates"
|
24
22
|
UI.important "This passphrase is specific per repository and will be stored in your local keychain"
|
@@ -71,48 +71,6 @@ module Spaceship
|
|
71
71
|
# @return (Spaceship::Tunes::TransitAppFile) the structure containing information about the geo json. Can be nil
|
72
72
|
attr_accessor :transit_app_file
|
73
73
|
|
74
|
-
####
|
75
|
-
# Trade Representative Contact Information
|
76
|
-
####
|
77
|
-
# @return (String) Trade Representative Contact Information Trade Name. This attribute isn't editable
|
78
|
-
attr_accessor :trade_representative_trade_name
|
79
|
-
|
80
|
-
# @return (String) Trade Representative Contact Information First Name
|
81
|
-
attr_accessor :trade_representative_first_name
|
82
|
-
|
83
|
-
# @return (String) Trade Representative Contact Information Last Name
|
84
|
-
attr_accessor :trade_representative_last_name
|
85
|
-
|
86
|
-
# @return (String) Trade Representative Contact Information Address Line 1
|
87
|
-
attr_accessor :trade_representative_address_line_1
|
88
|
-
|
89
|
-
# @return (String) Trade Representative Contact Information Address Line 2
|
90
|
-
attr_accessor :trade_representative_address_line_2
|
91
|
-
|
92
|
-
# @return (String) Trade Representative Contact Information Address Line 3
|
93
|
-
attr_accessor :trade_representative_address_line_3
|
94
|
-
|
95
|
-
# @return (String) Trade Representative Contact Information City Name
|
96
|
-
attr_accessor :trade_representative_city_name
|
97
|
-
|
98
|
-
# @return (String) Trade Representative Contact Information State
|
99
|
-
attr_accessor :trade_representative_state
|
100
|
-
|
101
|
-
# @return (String) Trade Representative Contact Information Country
|
102
|
-
attr_accessor :trade_representative_country
|
103
|
-
|
104
|
-
# @return (String) Trade Representative Contact Information Postal Code
|
105
|
-
attr_accessor :trade_representative_postal_code
|
106
|
-
|
107
|
-
# @return (String) Trade Representative Contact Information Phone Number
|
108
|
-
attr_accessor :trade_representative_phone_number
|
109
|
-
|
110
|
-
# @return (String) Trade Representative Contact Information Email Address
|
111
|
-
attr_accessor :trade_representative_email
|
112
|
-
|
113
|
-
# @return (Boolean) Display Trade Representative Contact Information on the Korean App Store or not
|
114
|
-
attr_accessor :trade_representative_is_displayed_on_app_store
|
115
|
-
|
116
74
|
####
|
117
75
|
# App Review Information
|
118
76
|
####
|
@@ -192,22 +150,6 @@ module Spaceship
|
|
192
150
|
# GeoJson
|
193
151
|
# 'transitAppFile.value' => :transit_app_file
|
194
152
|
|
195
|
-
# Trade Representative Contact Information
|
196
|
-
|
197
|
-
'appStoreInfo.tradeName.value' => :trade_representative_trade_name,
|
198
|
-
'appStoreInfo.firstName.value' => :trade_representative_first_name,
|
199
|
-
'appStoreInfo.lastName.value' => :trade_representative_last_name,
|
200
|
-
'appStoreInfo.addressLine1.value' => :trade_representative_address_line_1,
|
201
|
-
'appStoreInfo.addressLine2.value' => :trade_representative_address_line_2,
|
202
|
-
'appStoreInfo.addressLine3.value' => :trade_representative_address_line_3,
|
203
|
-
'appStoreInfo.cityName.value' => :trade_representative_city_name,
|
204
|
-
'appStoreInfo.state.value' => :trade_representative_state,
|
205
|
-
'appStoreInfo.country.value' => :trade_representative_country,
|
206
|
-
'appStoreInfo.postalCode.value' => :trade_representative_postal_code,
|
207
|
-
'appStoreInfo.phoneNumber.value' => :trade_representative_phone_number,
|
208
|
-
'appStoreInfo.emailAddress.value' => :trade_representative_email,
|
209
|
-
'appStoreInfo.shouldDisplayInStore.value' => :trade_representative_is_displayed_on_app_store,
|
210
|
-
|
211
153
|
# App Review Information
|
212
154
|
'appReviewInfo.firstName.value' => :review_first_name,
|
213
155
|
'appReviewInfo.lastName.value' => :review_last_name,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.30.0.beta.20170510010041
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
@@ -15,7 +15,7 @@ authors:
|
|
15
15
|
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date: 2017-05-
|
18
|
+
date: 2017-05-10 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: slack-notifier
|
@@ -1257,7 +1257,6 @@ files:
|
|
1257
1257
|
- spaceship/lib/assets/languageMapping.json
|
1258
1258
|
- spaceship/lib/assets/languageMappingReadable.json
|
1259
1259
|
- spaceship/lib/spaceship.rb
|
1260
|
-
- spaceship/lib/spaceship/.DS_Store
|
1261
1260
|
- spaceship/lib/spaceship/babosa_fix.rb
|
1262
1261
|
- spaceship/lib/spaceship/base.rb
|
1263
1262
|
- spaceship/lib/spaceship/client.rb
|
@@ -1358,23 +1357,23 @@ metadata:
|
|
1358
1357
|
post_install_message:
|
1359
1358
|
rdoc_options: []
|
1360
1359
|
require_paths:
|
1361
|
-
-
|
1360
|
+
- pilot/lib
|
1362
1361
|
- credentials_manager/lib
|
1363
|
-
-
|
1364
|
-
-
|
1365
|
-
-
|
1362
|
+
- sigh/lib
|
1363
|
+
- supply/lib
|
1364
|
+
- snapshot/lib
|
1366
1365
|
- frameit/lib
|
1367
|
-
-
|
1366
|
+
- cert/lib
|
1368
1367
|
- match/lib
|
1368
|
+
- spaceship/lib
|
1369
1369
|
- pem/lib
|
1370
|
-
- pilot/lib
|
1371
1370
|
- produce/lib
|
1372
|
-
- scan/lib
|
1373
1371
|
- screengrab/lib
|
1374
|
-
-
|
1375
|
-
-
|
1376
|
-
-
|
1377
|
-
-
|
1372
|
+
- fastlane_core/lib
|
1373
|
+
- gym/lib
|
1374
|
+
- deliver/lib
|
1375
|
+
- scan/lib
|
1376
|
+
- fastlane/lib
|
1378
1377
|
required_ruby_version: !ruby/object:Gem::Requirement
|
1379
1378
|
requirements:
|
1380
1379
|
- - ">="
|
@@ -1382,15 +1381,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1382
1381
|
version: 2.0.0
|
1383
1382
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1384
1383
|
requirements:
|
1385
|
-
- - "
|
1384
|
+
- - ">"
|
1386
1385
|
- !ruby/object:Gem::Version
|
1387
|
-
version:
|
1386
|
+
version: 1.3.1
|
1388
1387
|
requirements: []
|
1389
1388
|
rubyforge_project:
|
1390
|
-
rubygems_version: 2.
|
1389
|
+
rubygems_version: 2.4.5.2
|
1391
1390
|
signing_key:
|
1392
1391
|
specification_version: 4
|
1393
1392
|
summary: The easiest way to automate beta deployments and releases for your iOS and
|
1394
1393
|
Android apps
|
1395
1394
|
test_files: []
|
1396
|
-
has_rdoc:
|
Binary file
|