fastlane 2.67.0.beta.20171127010003 → 2.67.0.beta.20171128010003
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/deliver/lib/deliver/upload_metadata.rb +1 -1
- data/fastlane/lib/fastlane/actions/docs/frameit.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/match.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/pem.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/precheck.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/produce.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/scan.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/screengrab.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/sigh.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/snapshot.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/supply.md +1 -1
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +2 -0
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane_core/lib/fastlane_core/device_manager.rb +20 -1
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher.rb +4 -1
- data/spaceship/lib/spaceship/portal/portal_client.rb +1 -1
- data/spaceship/lib/spaceship/test_flight/client.rb +8 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d92b3d6ba645ac912f3cdca875dae7ef62e56253
|
4
|
+
data.tar.gz: 82cbe2ce21f20e2b1e293ca10bcf4a225e799e20
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8c24e1621c5a651b25c426793998bf24061af17343c8ac0483c6ed86a9ff1a33aca439143aef136617fae07f16846116a4e0a5cbef87ebea4347a99a248c6d0
|
7
|
+
data.tar.gz: c5653893d9d9e5fd495990681ade68aa559b84c6d6b820637b11f1eb47fe5a3f335df156e60562acf450fd75b470edf6cc7e08ef8d7888070df576dbd28dfd98
|
@@ -44,7 +44,7 @@ module Deliver
|
|
44
44
|
}
|
45
45
|
|
46
46
|
# Localized app details values, that are editable in live state
|
47
|
-
LOCALISED_LIVE_VALUES = [:description, :release_notes, :support_url, :marketing_url]
|
47
|
+
LOCALISED_LIVE_VALUES = [:description, :release_notes, :support_url, :marketing_url, :promotional_text]
|
48
48
|
|
49
49
|
# Non localized app details values, that are editable in live state
|
50
50
|
NON_LOCALISED_LIVE_VALUES = [:privacy_url]
|
@@ -57,6 +57,8 @@ module Fastlane
|
|
57
57
|
end
|
58
58
|
|
59
59
|
begin
|
60
|
+
# need to call reload here or dsym_url is nil
|
61
|
+
build.reload
|
60
62
|
download_url = build.dsym_url
|
61
63
|
rescue Spaceship::TunesClient::ITunesConnectError => ex
|
62
64
|
UI.error("Error accessing dSYM file for build\n\n#{build}\n\nException: #{ex}")
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Fastlane
|
2
|
-
VERSION = '2.67.0.beta.
|
2
|
+
VERSION = '2.67.0.beta.20171128010003'.freeze
|
3
3
|
DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
|
4
4
|
MINIMUM_XCODE_RELEASE = "7.0".freeze
|
5
5
|
RUBOCOP_REQUIREMENT = '0.49.1'.freeze
|
@@ -19,6 +19,18 @@ module FastlaneCore
|
|
19
19
|
output = stdout.read
|
20
20
|
end
|
21
21
|
|
22
|
+
runtime_info = ''
|
23
|
+
Open3.popen3('xcrun simctl list runtimes') do |stdin, stdout, stderr, wait_thr|
|
24
|
+
# This regex outputs the version info in the format "<platform> <version><exact version>"
|
25
|
+
runtime_info = stdout.read.lines.map { |v| v.sub(/(\w+ \S+)\s*\((\S+)\s[\S\s]*/, "\\1 \\2") }.drop(1)
|
26
|
+
end
|
27
|
+
exact_versions = Hash.new({})
|
28
|
+
runtime_info.each do |r|
|
29
|
+
platform, general, exact = r.split
|
30
|
+
exact_versions[platform] = {} unless exact_versions.include?(platform)
|
31
|
+
exact_versions[platform][general] = exact
|
32
|
+
end
|
33
|
+
|
22
34
|
unless output.include?("== Devices ==")
|
23
35
|
UI.error("xcrun simctl CLI broken, run `xcrun simctl list devices` and make sure it works")
|
24
36
|
UI.user_error!("xcrun simctl not working.")
|
@@ -40,7 +52,7 @@ module FastlaneCore
|
|
40
52
|
name = matches.join(' ')
|
41
53
|
|
42
54
|
if matches.count && (os_type == requested_os_type || requested_os_type == "")
|
43
|
-
@devices << Device.new(name: name, os_type: os_type, os_version: os_version, udid: udid, state: state, is_simulator: true)
|
55
|
+
@devices << Device.new(name: name, os_type: os_type, os_version: (exact_versions[os_type][os_version] || os_version), udid: udid, state: state, is_simulator: true)
|
44
56
|
end
|
45
57
|
end
|
46
58
|
end
|
@@ -109,6 +121,13 @@ module FastlaneCore
|
|
109
121
|
end
|
110
122
|
end
|
111
123
|
|
124
|
+
def latest_simulator_version_for_device(device)
|
125
|
+
simulators.select { |s| s.name == device }
|
126
|
+
.sort_by { |s| Gem::Version.create(s.os_version) }
|
127
|
+
.last
|
128
|
+
.os_version
|
129
|
+
end
|
130
|
+
|
112
131
|
# The code below works from Xcode 7 on
|
113
132
|
# def all
|
114
133
|
# UI.verbose("Fetching available devices")
|
@@ -31,7 +31,10 @@ module Snapshot
|
|
31
31
|
# Break up the array of devices into chunks that can
|
32
32
|
# be run simultaneously.
|
33
33
|
if launcher_config.concurrent_simulators?
|
34
|
-
|
34
|
+
all_devices = launcher_config.devices
|
35
|
+
# We have to break up the concurrent simulators by device version too, otherwise there is an error (see #10969)
|
36
|
+
by_simulator_version = all_devices.group_by { |d| FastlaneCore::DeviceManager.latest_simulator_version_for_device(d) }.values
|
37
|
+
device_batches = by_simulator_version.flat_map { |a| a.each_slice(default_number_of_simultaneous_simulators).to_a }
|
35
38
|
else
|
36
39
|
# Put each device in it's own array to run tests one at a time
|
37
40
|
device_batches = launcher_config.devices.map { |d| [d] }
|
@@ -714,7 +714,7 @@ module Spaceship
|
|
714
714
|
|
715
715
|
# This is a cache of entity type (App, AppGroup, Certificate, Device) to csrf_tokens
|
716
716
|
def csrf_cache
|
717
|
-
@csrf_cache
|
717
|
+
@csrf_cache ||= {}
|
718
718
|
end
|
719
719
|
|
720
720
|
# Ensures that there are csrf tokens for the appropriate entity type
|
@@ -145,27 +145,26 @@ module Spaceship::TestFlight
|
|
145
145
|
def testers_for_app(app_id: nil)
|
146
146
|
assert_required_params(__method__, binding)
|
147
147
|
page_size = 40 # that's enforced by the iTC servers
|
148
|
-
offset = nil
|
149
148
|
resulting_array = []
|
150
149
|
initial_url = "providers/#{team_id}/apps/#{app_id}/testers?limit=#{page_size}&sort=email&order=asc"
|
151
150
|
response = request(:get, initial_url)
|
151
|
+
link_from_response = proc do |r|
|
152
|
+
# I weep for Swift nil chaining
|
153
|
+
(l = r.headers['link']) && (m = l.match(/<(.*)>/)) && m.captures.first
|
154
|
+
end
|
155
|
+
next_link = link_from_response.call(response)
|
152
156
|
result = Array(handle_response(response))
|
153
157
|
resulting_array += result
|
154
158
|
return resulting_array if result.count == 0
|
155
|
-
offset = result.last['id']
|
156
159
|
|
157
|
-
|
158
|
-
|
159
|
-
url += "&offset=#{offset}" if offset
|
160
|
-
response = request(:get, url)
|
160
|
+
until next_link.nil?
|
161
|
+
response = request(:get, next_link)
|
161
162
|
result = Array(handle_response(response))
|
163
|
+
next_link = link_from_response.call(response)
|
162
164
|
|
163
165
|
break if result.count == 0
|
164
|
-
# If there are no more, the last response seems to be repeated
|
165
|
-
break if offset == result.last['id']
|
166
166
|
|
167
167
|
resulting_array += result
|
168
|
-
offset = result.last['id']
|
169
168
|
end
|
170
169
|
return resulting_array.uniq
|
171
170
|
end
|
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.67.0.beta.
|
4
|
+
version: 2.67.0.beta.20171128010003
|
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-11-
|
18
|
+
date: 2017-11-28 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: slack-notifier
|