fastlane 2.73.0.beta.20180104010004 → 2.73.0.beta.20180105010003

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c3d012ce8dd059ba622673e451c79f833574808e
4
- data.tar.gz: 96d03c83675a925686c22c82a33aefeeac355458
3
+ metadata.gz: 93b6f97931586bdd362b89fcd9b4dfc2fdb8a331
4
+ data.tar.gz: 42a14189eb1130e55a9770b203825f4988f7a0a5
5
5
  SHA512:
6
- metadata.gz: ee573b482a6ab09d2a4f1f9e612ea5753df6cdac9b121ec1909c5cd52f3afb8f10c943015d6fdcfc33be5dd565d526cb6569ff7b413e2adfd1b37d49fe3ceae5
7
- data.tar.gz: 75102f81c512e91e015b88f581623e6f568c1d6514bf365c17fd45dfe55980dbc8831a39ec27fffdb80d7a33ef894cf28f929199a2bbbdd9fed8de8439f5661c
6
+ metadata.gz: acdd97d5ba161e633f1f063f8a4312f28fcfe197a1c15a0752efc68d840281cc08aeb68fe329cdf22e957b9d04c5dcae7b4d63c293b8ea453b41fe3bf11776f5
7
+ data.tar.gz: 171c66ac8c7411f327992457a8ced8956acaae710043aab211026b1764447f1ceaf4e1a5e1cf66be834ad4d7c432b4d3bc0200d15f6edd231ecdbc288c83e2ba
@@ -28,6 +28,7 @@ module Fastlane
28
28
  cmd << "--toolchain #{params[:toolchain]}" if params[:toolchain]
29
29
  cmd << "--project-directory #{params[:project_directory]}" if params[:project_directory]
30
30
  cmd << "--cache-builds" if params[:cache_builds]
31
+ cmd << "--new-resolver" if params[:new_resolver]
31
32
 
32
33
  Actions.sh(cmd.join(' '))
33
34
  end
@@ -151,7 +152,13 @@ module Fastlane
151
152
  FastlaneCore::ConfigItem.new(key: :project_directory,
152
153
  env_name: "FL_CARTHAGE_PROJECT_DIRECTORY",
153
154
  description: "Define the directory containing the Carthage project",
154
- optional: true)
155
+ optional: true),
156
+ FastlaneCore::ConfigItem.new(key: :new_resolver,
157
+ env_name: "FL_CARTHAGE_NEW_RESOLVER",
158
+ description: "Use new resolver when resolving dependency graph",
159
+ is_string: false,
160
+ optional: true,
161
+ type: Boolean)
155
162
  ]
156
163
  end
157
164
 
@@ -172,7 +179,8 @@ module Fastlane
172
179
  platform: "all", # Define which platform to build for (one of ‘all’, ‘Mac’, ‘iOS’, ‘watchOS’, ‘tvOS‘, or comma-separated values of the formers except for ‘all’)
173
180
  configuration: "Release", # Build configuration to use when building
174
181
  cache_builds: true, # By default Carthage will rebuild a dependency regardless of whether its the same resolved version as before.
175
- toolchain: "com.apple.dt.toolchain.Swift_2_3" # Specify the xcodebuild toolchain
182
+ toolchain: "com.apple.dt.toolchain.Swift_2_3", # Specify the xcodebuild toolchain
183
+ new_resolver: false # Use the new resolver to resolve depdendency graph
176
184
  )'
177
185
  ]
178
186
  end
@@ -186,7 +194,7 @@ module Fastlane
186
194
  end
187
195
 
188
196
  def self.authors
189
- ["bassrock", "petester42", "jschmid", "JaviSoto", "uny", "phatblat", "bfcrampton", "antondomashnev"]
197
+ ["bassrock", "petester42", "jschmid", "JaviSoto", "uny", "phatblat", "bfcrampton", "antondomashnev", "gbrhaz"]
190
198
  end
191
199
  end
192
200
  end
@@ -21,7 +21,7 @@ module Fastlane
21
21
  end
22
22
 
23
23
  def self.step_text
24
- "Verifying required fastlane version"
24
+ "Verifying fastlane version"
25
25
  end
26
26
 
27
27
  def self.author
@@ -20,7 +20,7 @@ module Fastlane
20
20
  end
21
21
 
22
22
  def self.step_text
23
- "Verifying required ruby version"
23
+ "Verifying Ruby version"
24
24
  end
25
25
 
26
26
  def self.author
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.73.0.beta.20180104010004'.freeze
2
+ VERSION = '2.73.0.beta.20180105010003'.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
@@ -50,7 +50,7 @@ struct ArgumentProcessor {
50
50
 
51
51
  // User might have configured a timeout for the socket connection
52
52
  let potentialTimeout = fastlaneArgsMinusLanes.filter { arg in
53
- return arg.name.lowercased() == "timeoutSeconds"
53
+ return arg.name.lowercased() == "timeoutseconds"
54
54
  }
55
55
 
56
56
  if let logModeArg = potentialLogMode.first {
@@ -65,6 +65,18 @@ struct ArgumentProcessor {
65
65
  self.commandTimeout = SocketClient.defaultCommandTimeoutSeconds
66
66
  }
67
67
  }
68
+
69
+ func laneParameters() -> [String : String] {
70
+ let laneParametersArgs = self.args.filter { arg in
71
+ let lowercasedName = arg.name.lowercased()
72
+ return lowercasedName != "timeoutseconds" && lowercasedName != "lane" && lowercasedName != "logmode"
73
+ }
74
+ var laneParameters = [String : String]()
75
+ for arg in laneParametersArgs {
76
+ laneParameters[arg.name] = arg.value
77
+ }
78
+ return laneParameters
79
+ }
68
80
  }
69
81
 
70
82
  // Please don't remove the lines below
@@ -10,7 +10,7 @@ import Foundation
10
10
 
11
11
  public protocol LaneFileProtocol: class {
12
12
  var fastlaneVersion: String { get }
13
- static func runLane(named: String)
13
+ static func runLane(named: String, parameters: [String : String])
14
14
 
15
15
  func recordLaneDescriptions()
16
16
  func beforeAll()
@@ -47,13 +47,16 @@ public class LaneFile: NSObject, LaneFileProtocol {
47
47
  let selName = sel_getName(method_getName(methodList![i]))
48
48
  let name = String(cString: selName)
49
49
  let lowercasedName = name.lowercased()
50
- guard lowercasedName.hasSuffix("lane") else {
51
- continue
50
+ if lowercasedName.hasSuffix("lane") {
51
+ laneToMethodName[lowercasedName] = name
52
+ let lowercasedNameNoLane = String(lowercasedName.prefix(lowercasedName.count - 4))
53
+ laneToMethodName[lowercasedNameNoLane] = name
54
+ } else if lowercasedName.hasSuffix("lanewithoptions:") {
55
+ let lowercasedNameNoOptions = String(lowercasedName.prefix(lowercasedName.count - 12))
56
+ laneToMethodName[lowercasedNameNoOptions] = name
57
+ let lowercasedNameNoLane = String(lowercasedNameNoOptions.prefix(lowercasedNameNoOptions.count - 4))
58
+ laneToMethodName[lowercasedNameNoLane] = name
52
59
  }
53
-
54
- laneToMethodName[lowercasedName] = name
55
- let lowercasedNameNoLane = String(lowercasedName.prefix(lowercasedName.count - 4))
56
- laneToMethodName[lowercasedNameNoLane] = name
57
60
  }
58
61
  return laneToMethodName
59
62
  }
@@ -67,7 +70,7 @@ public class LaneFile: NSObject, LaneFileProtocol {
67
70
  }
68
71
  }
69
72
 
70
- public static func runLane(named: String) {
73
+ public static func runLane(named: String, parameters: [String : String]) {
71
74
  log(message: "Running lane: \(named)")
72
75
  self.loadFastfile()
73
76
 
@@ -90,7 +93,7 @@ public class LaneFile: NSObject, LaneFileProtocol {
90
93
  }
91
94
 
92
95
  // We need to catch all possible errors here and display a nice message
93
- _ = fastfileInstance.perform(NSSelectorFromString(laneMethod))
96
+ _ = fastfileInstance.perform(NSSelectorFromString(laneMethod), with: parameters)
94
97
 
95
98
  // only call on success
96
99
  fastfileInstance.afterAll(currentLane: named)
@@ -18,7 +18,7 @@ class MainProcess {
18
18
  @objc func connectToFastlaneAndRunLane() {
19
19
  runner.startSocketThread()
20
20
 
21
- Fastfile.runLane(named: argumentProcessor.currentLane)
21
+ Fastfile.runLane(named: argumentProcessor.currentLane, parameters: argumentProcessor.laneParameters())
22
22
  runner.disconnectFromFastlaneProcess()
23
23
 
24
24
  doneRunningLane = true
@@ -78,7 +78,7 @@ module FastlaneCore
78
78
  # Since we don't want to access FastlaneCore from spaceship
79
79
  # this method is duplicated in spaceship/client.rb
80
80
  def self.fastlane_user_dir
81
- path = File.expand_path(File.join("~", ".fastlane"))
81
+ path = File.expand_path(File.join(Dir.home, ".fastlane"))
82
82
  FileUtils.mkdir_p(path) unless File.directory?(path)
83
83
  return path
84
84
  end
@@ -214,42 +214,12 @@ module FastlaneCore
214
214
  true
215
215
  end
216
216
 
217
- def strip_braces(value)
218
- value.strip!
219
- value = value[1..value.length - 2] if value[0] == "[" && value[value.length - 1] == "]"
220
- return value
221
- end
222
-
223
- def auto_convert_array_value(value)
224
- # covers Arrays like:
225
- # ["["value", "value"]"]
226
- if value.kind_of?(Array)
227
- return value.map do |item|
228
- item = strip_braces(item) if item.kind_of?(String)
229
- item
230
- end
231
- end
232
-
233
- # covers Strings that are actually Arrays like:
234
- # "["value", "value"]"
235
- # "\"value\", \"value\""
236
- if value.kind_of?(String)
237
- value = strip_braces(value)
238
-
239
- return value.split(',').map do |item|
240
- item.strip!
241
- item = item[1..item.length - 2] if item[0] == "\"" && item[item.length - 1] == "\""
242
- item
243
- end
244
- end
245
- end
246
-
247
217
  # Returns an updated value type (if necessary)
248
218
  def auto_convert_value(value)
249
219
  return nil if value.nil?
250
220
 
251
221
  if data_type == Array
252
- return auto_convert_array_value(value)
222
+ return value.split(',') if value.kind_of?(String)
253
223
  elsif data_type == Integer
254
224
  return value.to_i if value.to_i.to_s == value.to_s
255
225
  elsif data_type == Float
@@ -248,7 +248,12 @@ module FastlaneCore
248
248
  end
249
249
  end
250
250
 
251
- value
251
+ # It's very, very important to use the self[:my_key] notation
252
+ # as this will make sure to use the `fetch` method
253
+ # that is responsible for auto converting the values into the right
254
+ # data type
255
+ # Found out via https://github.com/fastlane/fastlane/issues/11243
256
+ return self[key]
252
257
  end
253
258
 
254
259
  # Overwrites or sets a new value for a given key
@@ -320,7 +320,7 @@ module Spaceship
320
320
 
321
321
  # This is a duplicate method of fastlane_core/fastlane_core.rb#fastlane_user_dir
322
322
  def fastlane_user_dir
323
- path = File.expand_path(File.join("~", ".fastlane"))
323
+ path = File.expand_path(File.join(Dir.home, ".fastlane"))
324
324
  FileUtils.mkdir_p(path) unless File.directory?(path)
325
325
  return path
326
326
  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.73.0.beta.20180104010004
4
+ version: 2.73.0.beta.20180105010003
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: 2018-01-04 00:00:00.000000000 Z
18
+ date: 2018-01-05 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: slack-notifier