gym 1.1.6 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a5f5e9f45848d646938258084c1063255b3ff116
4
- data.tar.gz: 6dbd6b132ba4cedf9458c0bc0091df5aaa6626c8
3
+ metadata.gz: 132ed6450917f319a13d735ca3eec8e6e0008098
4
+ data.tar.gz: 3d60b04f50697c5350c8de2b32ca656d1f9ee467
5
5
  SHA512:
6
- metadata.gz: 214125fc3aa776e2bc01a5f2d21dca7f6c3804029ade500a1a0b1bf08f40f06ac5e3885f946df3c69878763c38b273b4444e792adb0bc795c7ed4aec918b319a
7
- data.tar.gz: dda9b35717156348d2bdd9bebb18d21c9b7481672dbb9215e3b8e4651c48484a43e183a97abb3d29405e1679a6b26fa721d0f0a3f4f76a26f9c7e1729d9d5fde
6
+ metadata.gz: 305c7384722dca916e947d1967884bea07c5e53e4e6169022bca5fe2916f286709358621ab2836fc5d27178a8f858a1ba2b0b94ec7b608926dd8aa9725308a0c
7
+ data.tar.gz: 8b44624aeff6c7eaae300dfbeaf15138dc688324e4a7b746fcfcd5a5f5701943099126abe7f1c3001c82e873459c1a8ccd9cb3d45be2c3abe0f9626536996fdf
data/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  <a href="https://github.com/fastlane/deliver">deliver</a> &bull;
10
10
  <a href="https://github.com/fastlane/snapshot">snapshot</a> &bull;
11
11
  <a href="https://github.com/fastlane/frameit">frameit</a> &bull;
12
- <a href="https://github.com/fastlane/PEM">PEM</a> &bull;
12
+ <a href="https://github.com/fastlane/pem">pem</a> &bull;
13
13
  <a href="https://github.com/fastlane/sigh">sigh</a> &bull;
14
14
  <a href="https://github.com/fastlane/produce">produce</a> &bull;
15
15
  <a href="https://github.com/fastlane/cert">cert</a> &bull;
@@ -17,7 +17,8 @@
17
17
  <a href="https://github.com/fastlane/pilot">pilot</a> &bull;
18
18
  <a href="https://github.com/fastlane/boarding">boarding</a> &bull;
19
19
  <b>gym</b> &bull;
20
- <a href="https://github.com/fastlane/scan">scan</a>
20
+ <a href="https://github.com/fastlane/scan">scan</a> &bull;
21
+ <a href="https://github.com/fastlane/match">match</a>
21
22
  </p>
22
23
  -------
23
24
 
@@ -233,13 +234,14 @@ Afterwards the `ipa` file is moved to the output folder. The `dSYM` file is comp
233
234
  - [`deliver`](https://github.com/fastlane/deliver): Upload screenshots, metadata and your app to the App Store
234
235
  - [`snapshot`](https://github.com/fastlane/snapshot): Automate taking localized screenshots of your iOS app on every device
235
236
  - [`frameit`](https://github.com/fastlane/frameit): Quickly put your screenshots into the right device frames
236
- - [`PEM`](https://github.com/fastlane/PEM): Automatically generate and renew your push notification profiles
237
+ - [`pem`](https://github.com/fastlane/pem): Automatically generate and renew your push notification profiles
237
238
  - [`produce`](https://github.com/fastlane/produce): Create new iOS apps on iTunes Connect and Dev Portal using the command line
238
239
  - [`cert`](https://github.com/fastlane/cert): Automatically create and maintain iOS code signing certificates
239
240
  - [`spaceship`](https://github.com/fastlane/spaceship): Ruby library to access the Apple Dev Center and iTunes Connect
240
241
  - [`pilot`](https://github.com/fastlane/pilot): The best way to manage your TestFlight testers and builds from your terminal
241
242
  - [`boarding`](https://github.com/fastlane/boarding): The easiest way to invite your TestFlight beta testers
242
243
  - [`scan`](https://github.com/fastlane/scan): The easiest way to run tests of your iOS and Mac app
244
+ - [`match`](https://github.com/fastlane/match): Easily sync your certificates and profiles across your team using git
243
245
 
244
246
  ##### [Like this tool? Be the first to know about updates and new fastlane tools](https://tinyletter.com/krausefx)
245
247
 
@@ -1,4 +1,4 @@
1
- # For more information about this configuation visit
1
+ # For more information about this configuration visit
2
2
  # https://github.com/fastlane/gym#gymfile
3
3
 
4
4
  # In general, you can use the options available
@@ -58,7 +58,11 @@ module Gym
58
58
  end
59
59
 
60
60
  def pipe
61
- ["| tee '#{xcodebuild_log_path}' | xcpretty"]
61
+ pipe = []
62
+ pipe << "| tee '#{xcodebuild_log_path}' | xcpretty"
63
+ pipe << "> /dev/null" if Gym.config[:suppress_xcode_output]
64
+
65
+ pipe
62
66
  end
63
67
 
64
68
  def xcodebuild_log_path
data/lib/gym/options.rb CHANGED
@@ -152,7 +152,14 @@ module Gym
152
152
  optional: true,
153
153
  verify_block: proc do |value|
154
154
  raise "File not found at path '#{File.expand_path(value)}'".red unless File.exist?(value)
155
- end)
155
+ end),
156
+ FastlaneCore::ConfigItem.new(key: :suppress_xcode_output,
157
+ short_option: "-r",
158
+ env_name: "SUPPRESS_OUTPUT",
159
+ description: "Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path",
160
+ optional: true,
161
+ is_string: false
162
+ )
156
163
  ]
157
164
  end
158
165
  end
data/lib/gym/runner.rb CHANGED
@@ -67,6 +67,7 @@ module Gym
67
67
  return unless Gym.config[:use_legacy_build_api]
68
68
  Gym::XcodebuildFixes.swift_library_fix
69
69
  Gym::XcodebuildFixes.watchkit_fix
70
+ Gym::XcodebuildFixes.watchkit2_fix
70
71
  end
71
72
 
72
73
  # Builds the app and prepares the archive
data/lib/gym/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Gym
2
- VERSION = "1.1.6"
2
+ VERSION = "1.2.0"
3
3
  DESCRIPTION = "Building your iOS apps has never been easier"
4
4
  end
@@ -0,0 +1,35 @@
1
+ module Gym
2
+ class XcodebuildFixes
3
+ class << self
4
+ # Determine whether this app has WatchKit2 support and manually package up the WatchKit2 framework
5
+ def watchkit2_fix
6
+ return unless watchkit2?
7
+
8
+ Helper.log.info "Adding WatchKit2 support" if $verbose
9
+
10
+ Dir.mktmpdir do |tmpdir|
11
+ # Make watchkit support directory
12
+ watchkit_support = File.join(tmpdir, "WatchKitSupport2")
13
+ Dir.mkdir(watchkit_support)
14
+
15
+ # Copy WK from Xcode into WatchKitSupport2
16
+ FileUtils.copy_file("#{Xcode.xcode_path}/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/Library/Application Support/WatchKit/WK", File.join(watchkit_support, "WK"))
17
+
18
+ # Add "WatchKitSupport2" to the .ipa archive
19
+ Dir.chdir(tmpdir) do
20
+ abort unless system %(zip --recurse-paths "#{PackageCommandGenerator.ipa_path}" "WatchKitSupport2" > /dev/null)
21
+ end
22
+
23
+ Helper.log.info "Successfully added WatchKit2 support" if $verbose
24
+ end
25
+ end
26
+
27
+ # Does this application have a WatchKit target
28
+ def watchkit2?
29
+ Dir["#{PackageCommandGenerator.appfile_path}/**/*.plist"].any? do |plist_path|
30
+ `/usr/libexec/PlistBuddy -c 'Print DTSDKName' '#{plist_path}' 2>&1`.strip == 'watchos2.0'
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -3,7 +3,7 @@ module Gym
3
3
  class << self
4
4
  # Determine whether this app has WatchKit support and manually package up the WatchKit framework
5
5
  def watchkit_fix
6
- return unless watchkit?
6
+ return unless should_apply_watchkit1_fix?
7
7
 
8
8
  Helper.log.info "Adding WatchKit support" if $verbose
9
9
 
@@ -30,6 +30,11 @@ module Gym
30
30
  `/usr/libexec/PlistBuddy -c 'Print WKWatchKitApp' '#{plist_path}' 2>&1`.strip == 'true'
31
31
  end
32
32
  end
33
+
34
+ # Should only be applied if watchkit app is not a watchkit2 app
35
+ def should_apply_watchkit1_fix?
36
+ watchkit? && !(Gym::XcodebuildFixes.watchkit2?)
37
+ end
33
38
  end
34
39
  end
35
40
  end
data/lib/gym.rb CHANGED
@@ -34,6 +34,7 @@ module Gym
34
34
  # Import all the fixes
35
35
  require 'gym/xcodebuild_fixes/swift_fix'
36
36
  require 'gym/xcodebuild_fixes/watchkit_fix'
37
+ require 'gym/xcodebuild_fixes/watchkit2_fix'
37
38
  require 'gym/xcodebuild_fixes/package_application_fix'
38
39
  end
39
40
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gym
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-20 00:00:00.000000000 Z
11
+ date: 2015-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core
@@ -246,6 +246,7 @@ files:
246
246
  - lib/gym/xcodebuild_fixes/README.md
247
247
  - lib/gym/xcodebuild_fixes/package_application_fix.rb
248
248
  - lib/gym/xcodebuild_fixes/swift_fix.rb
249
+ - lib/gym/xcodebuild_fixes/watchkit2_fix.rb
249
250
  - lib/gym/xcodebuild_fixes/watchkit_fix.rb
250
251
  homepage: https://fastlane.tools
251
252
  licenses:
@@ -267,7 +268,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
268
  version: '0'
268
269
  requirements: []
269
270
  rubyforge_project:
270
- rubygems_version: 2.4.0
271
+ rubygems_version: 2.4.6
271
272
  signing_key:
272
273
  specification_version: 4
273
274
  summary: Building your iOS apps has never been easier