fastlane_core 0.47.0 → 0.48.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/fastlane_core.rb +2 -0
- data/lib/fastlane_core/feature/feature.rb +50 -0
- data/lib/fastlane_core/features.rb +2 -0
- data/lib/fastlane_core/itunes_transporter.rb +1 -2
- data/lib/fastlane_core/version.rb +1 -1
- metadata +15 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b47d400f7d9be30ebcfd2e00d25b5e98eb307a7a
|
4
|
+
data.tar.gz: 95fcd3768d5271698c26357a61e2b8690275743c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a631d21250a522b6d94bbd464c4f7e05d8754111cb8a632a046f7fb94c9df608f7f2d22bd4e03d1752bae222c3692f0b15c0de2a944fd77703826b2ed7c44e88
|
7
|
+
data.tar.gz: a9cf5f87090e72912df1d5000746ff5674576274fbb44e0a401daa66df1eb87e191f0937451e8832f9461c8abe9cbd8fe3bd8adab42de5266e69fd2c468f0697
|
data/lib/fastlane_core.rb
CHANGED
@@ -4,6 +4,8 @@ require 'json'
|
|
4
4
|
require 'fastlane_core/core_ext/string'
|
5
5
|
|
6
6
|
require 'fastlane_core/version'
|
7
|
+
require 'fastlane_core/feature/feature'
|
8
|
+
require 'fastlane_core/features'
|
7
9
|
require 'fastlane_core/helper'
|
8
10
|
require 'fastlane_core/xcodebuild_list_output_parser'
|
9
11
|
require 'fastlane_core/configuration/configuration'
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module FastlaneCore
|
2
|
+
class Feature
|
3
|
+
class << self
|
4
|
+
attr_reader :features
|
5
|
+
|
6
|
+
def register(env_var: nil, description: nil)
|
7
|
+
feature = self.new(description: description, env_var: env_var)
|
8
|
+
@features[feature.env_var] = feature
|
9
|
+
end
|
10
|
+
|
11
|
+
def enabled?(env_var)
|
12
|
+
feature = @features[env_var]
|
13
|
+
return false if feature.nil?
|
14
|
+
return false if ENV[feature.env_var] == '0' # '0' is a non-falsey value that should indicate feature switch disabled
|
15
|
+
return ENV[feature.env_var] # rely on the truthiness of the value set in the environment variable
|
16
|
+
end
|
17
|
+
|
18
|
+
def register_class_method(klass: nil, symbol: nil, disabled_symbol: nil, enabled_symbol: nil, env_var: nil)
|
19
|
+
return if klass.nil? || symbol.nil? || disabled_symbol.nil? || enabled_symbol.nil? || env_var.nil?
|
20
|
+
klass.define_singleton_method(symbol) do |*args|
|
21
|
+
if Feature.enabled?(env_var)
|
22
|
+
klass.send(enabled_symbol, *args)
|
23
|
+
else
|
24
|
+
klass.send(disabled_symbol, *args)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def register_instance_method(klass: nil, symbol: nil, disabled_symbol: nil, enabled_symbol: nil, env_var: nil)
|
30
|
+
return if klass.nil? || symbol.nil? || disabled_symbol.nil? || enabled_symbol.nil? || env_var.nil?
|
31
|
+
klass.send(:define_method, symbol.to_s) do |*args|
|
32
|
+
if Feature.enabled?(env_var)
|
33
|
+
send(enabled_symbol, *args)
|
34
|
+
else
|
35
|
+
send(disabled_symbol, *args)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
@features = {}
|
42
|
+
|
43
|
+
attr_reader :env_var, :description
|
44
|
+
def initialize(env_var: nil, description: nil)
|
45
|
+
raise "Invalid Feature" if env_var.nil? || description.nil?
|
46
|
+
@env_var = env_var
|
47
|
+
@description = description
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -284,7 +284,7 @@ module FastlaneCore
|
|
284
284
|
# Xcode 6.x doesn't have the same iTMSTransporter Java setup as later Xcode versions, so
|
285
285
|
# we can't default to using the better direct Java invocation strategy for those versions.
|
286
286
|
use_shell_script ||= Helper.is_mac? && Helper.xcode_version.start_with?('6.')
|
287
|
-
use_shell_script ||=
|
287
|
+
use_shell_script ||= Feature.enabled?('FASTLANE_ITUNES_TRANSPORTER_USE_SHELL_SCRIPT')
|
288
288
|
|
289
289
|
# First, see if we have an application specific password
|
290
290
|
data = CredentialsManager::AccountManager.new(user: user,
|
@@ -300,7 +300,6 @@ module FastlaneCore
|
|
300
300
|
@user = data.user
|
301
301
|
@password ||= data.password
|
302
302
|
end
|
303
|
-
|
304
303
|
@transporter_executor = use_shell_script ? ShellScriptTransporterExecutor.new : JavaTransporterExecutor.new
|
305
304
|
@provider_short_name = provider_short_name
|
306
305
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.48.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: 2016-06-
|
11
|
+
date: 2016-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -154,16 +154,22 @@ dependencies:
|
|
154
154
|
name: gh_inspector
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - "
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: 1.0.1
|
160
|
+
- - "<"
|
158
161
|
- !ruby/object:Gem::Version
|
159
|
-
version:
|
162
|
+
version: 2.0.0
|
160
163
|
type: :runtime
|
161
164
|
prerelease: false
|
162
165
|
version_requirements: !ruby/object:Gem::Requirement
|
163
166
|
requirements:
|
164
|
-
- - "
|
167
|
+
- - ">="
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: 1.0.1
|
170
|
+
- - "<"
|
165
171
|
- !ruby/object:Gem::Version
|
166
|
-
version:
|
172
|
+
version: 2.0.0
|
167
173
|
- !ruby/object:Gem::Dependency
|
168
174
|
name: credentials_manager
|
169
175
|
requirement: !ruby/object:Gem::Requirement
|
@@ -357,6 +363,8 @@ files:
|
|
357
363
|
- lib/fastlane_core/configuration/configuration_file.rb
|
358
364
|
- lib/fastlane_core/core_ext/string.rb
|
359
365
|
- lib/fastlane_core/device_manager.rb
|
366
|
+
- lib/fastlane_core/feature/feature.rb
|
367
|
+
- lib/fastlane_core/features.rb
|
360
368
|
- lib/fastlane_core/helper.rb
|
361
369
|
- lib/fastlane_core/ipa_file_analyser.rb
|
362
370
|
- lib/fastlane_core/ipa_upload_package_builder.rb
|
@@ -400,7 +408,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
400
408
|
version: '0'
|
401
409
|
requirements: []
|
402
410
|
rubyforge_project:
|
403
|
-
rubygems_version: 2.
|
411
|
+
rubygems_version: 2.5.1
|
404
412
|
signing_key:
|
405
413
|
specification_version: 4
|
406
414
|
summary: Contains all shared code/dependencies of the fastlane.tools
|