fastlane 2.82.0.beta.20180219010003 → 2.82.0.beta.20180220010002

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: 55fe66c53aac5a21bdae43a7463807c4da2e2022
4
- data.tar.gz: f927f52c32ca4e1c6857dfef6bef876a4d8a12d6
3
+ metadata.gz: 5a3de7bfc9152e9bdf4259bcec6c7aae046af148
4
+ data.tar.gz: 6b8ebc478085946ac81967791b591d14dfd6d055
5
5
  SHA512:
6
- metadata.gz: c4e63431359cf83923e713db6d0f69c102077681bfedc3353b8a27d01d00242481a6d0360311c6e51734e3fe18b59217fbfb23c34bd187949ba8835d186744aa
7
- data.tar.gz: 6c15fa890aab9755207d8da401c7587f56a81a22ce76239f767ddeaa32658748740678db9a42463fb23721f302b84dd6d9d6987707717745bacfbabbddc7abf6
6
+ metadata.gz: 0ed1b7f85d09f278b64f4e51662b028139520e1b264b807c6280a860b5a40f98e233a1487818db9cacb85a1cc5309e26683fbe6ad5f95c76813174d73d88225c
7
+ data.tar.gz: ce1df105901a82f8f02b753a4fd99daccb66c8ff33df686c7ae3374f0895a41cdfac5ee0a964bfb9a0c7d50fe05871b1e07f4c1b980fee27f8aea90c1e0af063
@@ -28,7 +28,7 @@ module Fastlane
28
28
  self.append_lane([
29
29
  "desc \"Submit a new Beta Build to Crashlytics Beta\"",
30
30
  "lane :beta do",
31
- " gradle(task: \"assembleRelease\")",
31
+ " gradle(task: \"clean assembleRelease\")",
32
32
  " crashlytics",
33
33
  "",
34
34
  " # sh \"your_script.sh\"",
@@ -39,7 +39,7 @@ module Fastlane
39
39
  self.append_lane([
40
40
  "desc \"Deploy a new version to the Google Play\"",
41
41
  "lane :deploy do",
42
- " gradle(task: \"assembleRelease\")",
42
+ " gradle(task: \"clean assembleRelease\")",
43
43
  " upload_to_play_store",
44
44
  "end"
45
45
  ])
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.82.0.beta.20180219010003'.freeze
2
+ VERSION = '2.82.0.beta.20180220010002'.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
@@ -237,7 +237,7 @@ module Sigh
237
237
  filters << "Certificate ID: '#{Sigh.config[:cert_id]}' " if Sigh.config[:cert_id]
238
238
  UI.important("No certificates for filter: #{filters}") if filters.length > 0
239
239
  message = "Could not find a matching code signing identity for type '#{profile_type.to_s.split(':').last}'. "
240
- message += "It is recommended to use match to manage code signing for you, more information on https://codesigning.guide."
240
+ message += "It is recommended to use match to manage code signing for you, more information on https://codesigning.guide. "
241
241
  message += "If you don't want to do so, you can also use cert to generate a new one: https://fastlane.tools/cert"
242
242
  UI.user_error!(message)
243
243
  end
@@ -43,6 +43,7 @@ enum SnapshotError: Error, CustomDebugStringConvertible {
43
43
  case cannotFindHomeDirectory
44
44
  case cannotFindSimulatorHomeDirectory
45
45
  case cannotAccessSimulatorHomeDirectory(String)
46
+ case cannotRunOnPhysicalDevice
46
47
 
47
48
  var debugDescription: String {
48
49
  switch self {
@@ -54,23 +55,27 @@ enum SnapshotError: Error, CustomDebugStringConvertible {
54
55
  return "Couldn't find simulator home location. Please, check SIMULATOR_HOST_HOME env variable."
55
56
  case .cannotAccessSimulatorHomeDirectory(let simulatorHostHome):
56
57
  return "Can't prepare environment. Simulator home location is inaccessible. Does \(simulatorHostHome) exist?"
58
+ case .cannotRunOnPhysicalDevice:
59
+ return "Can't use Snapshot on a physical device."
57
60
  }
58
61
  }
59
62
  }
60
63
 
61
64
  @objcMembers
62
65
  open class Snapshot: NSObject {
63
- static var app: XCUIApplication!
64
- static var cacheDirectory: URL!
66
+ static var app: XCUIApplication?
67
+ static var cacheDirectory: URL?
65
68
  static var screenshotsDirectory: URL? {
66
- return cacheDirectory.appendingPathComponent("screenshots", isDirectory: true)
69
+ return cacheDirectory?.appendingPathComponent("screenshots", isDirectory: true)
67
70
  }
68
71
 
69
72
  open class func setupSnapshot(_ app: XCUIApplication) {
73
+
74
+ Snapshot.app = app
75
+
70
76
  do {
71
77
  let cacheDir = try pathPrefix()
72
78
  Snapshot.cacheDirectory = cacheDir
73
- Snapshot.app = app
74
79
  setLanguage(app)
75
80
  setLocale(app)
76
81
  setLaunchArguments(app)
@@ -80,6 +85,11 @@ open class Snapshot: NSObject {
80
85
  }
81
86
 
82
87
  class func setLanguage(_ app: XCUIApplication) {
88
+ guard let cacheDirectory = self.cacheDirectory else {
89
+ print("CacheDirectory is not set - probably running on a physical device?")
90
+ return
91
+ }
92
+
83
93
  let path = cacheDirectory.appendingPathComponent("language.txt")
84
94
 
85
95
  do {
@@ -92,6 +102,11 @@ open class Snapshot: NSObject {
92
102
  }
93
103
 
94
104
  class func setLocale(_ app: XCUIApplication) {
105
+ guard let cacheDirectory = self.cacheDirectory else {
106
+ print("CacheDirectory is not set - probably running on a physical device?")
107
+ return
108
+ }
109
+
95
110
  let path = cacheDirectory.appendingPathComponent("locale.txt")
96
111
 
97
112
  do {
@@ -107,6 +122,11 @@ open class Snapshot: NSObject {
107
122
  }
108
123
 
109
124
  class func setLaunchArguments(_ app: XCUIApplication) {
125
+ guard let cacheDirectory = self.cacheDirectory else {
126
+ print("CacheDirectory is not set - probably running on a physical device?")
127
+ return
128
+ }
129
+
110
130
  let path = cacheDirectory.appendingPathComponent("snapshot-launch_arguments.txt")
111
131
  app.launchArguments += ["-FASTLANE_SNAPSHOT", "YES", "-ui_testing"]
112
132
 
@@ -135,6 +155,12 @@ open class Snapshot: NSObject {
135
155
  #if os(OSX)
136
156
  XCUIApplication().typeKey(XCUIKeyboardKeySecondaryFn, modifierFlags: [])
137
157
  #else
158
+
159
+ guard let app = self.app else {
160
+ print("XCUIApplication is not set. Please call setupSnapshot(app) before snapshot().")
161
+ return
162
+ }
163
+
138
164
  let screenshot = app.windows.firstMatch.screenshot()
139
165
  guard let simulator = ProcessInfo().environment["SIMULATOR_DEVICE_NAME"], let screenshotsDir = screenshotsDirectory else { return }
140
166
  let path = screenshotsDir.appendingPathComponent("\(simulator)-\(name).png")
@@ -172,13 +198,17 @@ open class Snapshot: NSObject {
172
198
 
173
199
  homeDir = usersDir.appendingPathComponent(user)
174
200
  #else
175
- guard let simulatorHostHome = ProcessInfo().environment["SIMULATOR_HOST_HOME"] else {
176
- throw SnapshotError.cannotFindSimulatorHomeDirectory
177
- }
178
- guard let homeDirUrl = URL(string: simulatorHostHome) else {
179
- throw SnapshotError.cannotAccessSimulatorHomeDirectory(simulatorHostHome)
180
- }
181
- homeDir = URL(fileURLWithPath: homeDirUrl.path)
201
+ #if arch(i386) || arch(x86_64)
202
+ guard let simulatorHostHome = ProcessInfo().environment["SIMULATOR_HOST_HOME"] else {
203
+ throw SnapshotError.cannotFindSimulatorHomeDirectory
204
+ }
205
+ guard let homeDirUrl = URL(string: simulatorHostHome) else {
206
+ throw SnapshotError.cannotAccessSimulatorHomeDirectory(simulatorHostHome)
207
+ }
208
+ homeDir = URL(fileURLWithPath: homeDirUrl.path)
209
+ #else
210
+ throw SnapshotError.cannotRunOnPhysicalDevice
211
+ #endif
182
212
  #endif
183
213
  return homeDir.appendingPathComponent("Library/Caches/tools.fastlane")
184
214
  }
@@ -243,4 +273,4 @@ private extension CGFloat {
243
273
 
244
274
  // Please don't remove the lines below
245
275
  // They are used to detect outdated configuration files
246
- // SnapshotHelperVersion [1.8]
276
+ // SnapshotHelperVersion [1.9]
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.82.0.beta.20180219010003
4
+ version: 2.82.0.beta.20180220010002
5
5
  platform: ruby
6
6
  authors:
7
7
  - Olivier Halligon
@@ -25,7 +25,7 @@ authors:
25
25
  autorequire:
26
26
  bindir: bin
27
27
  cert_chain: []
28
- date: 2018-02-19 00:00:00.000000000 Z
28
+ date: 2018-02-20 00:00:00.000000000 Z
29
29
  dependencies:
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: slack-notifier