[Validator] Use .swift-version when applicable

parent 36ea5e72
...@@ -395,7 +395,7 @@ module Pod ...@@ -395,7 +395,7 @@ module Pod
def add_swift_version(app_target) def add_swift_version(app_target)
app_target.build_configurations.each do |configuration| app_target.build_configurations.each do |configuration|
configuration.build_settings['SWIFT_VERSION'] = '2.3' configuration.build_settings['SWIFT_VERSION'] = swift_version
end end
end end
...@@ -452,7 +452,7 @@ module Pod ...@@ -452,7 +452,7 @@ module Pod
next unless native_target = pod_target.native_target next unless native_target = pod_target.native_target
native_target.build_configuration_list.build_configurations.each do |build_configuration| native_target.build_configuration_list.build_configurations.each do |build_configuration|
(build_configuration.build_settings['OTHER_CFLAGS'] ||= '$(inherited)') << ' -Wincomplete-umbrella' (build_configuration.build_settings['OTHER_CFLAGS'] ||= '$(inherited)') << ' -Wincomplete-umbrella'
build_configuration.build_settings['SWIFT_VERSION'] = '2.3' if pod_target.uses_swift? build_configuration.build_settings['SWIFT_VERSION'] = swift_version if pod_target.uses_swift?
end end
end end
if target.pod_targets.any?(&:uses_swift?) && consumer.platform_name == :ios && if target.pod_targets.any?(&:uses_swift?) && consumer.platform_name == :ios &&
...@@ -656,6 +656,19 @@ module Pod ...@@ -656,6 +656,19 @@ module Pod
# !@group Helpers # !@group Helpers
# @return [String] the SWIFT_VERSION to use for validation.
#
def swift_version
dot_swift_version || '2.3'
end
# @return [String] the SWIFT_VERSION in the .swift-version file or nil.
#
def dot_swift_version
swift_version_path = file.dirname + '.swift-version'
File.read(swift_version_path) if File.exists?(swift_version_path)
end
# @return [Array<String>] an array of source URLs used to create the # @return [Array<String>] an array of source URLs used to create the
# {Podfile} used in the linting process # {Podfile} used in the linting process
# #
......
...@@ -784,6 +784,7 @@ module Pod ...@@ -784,6 +784,7 @@ module Pod
validator = Validator.new(file, config.sources_manager.master.map(&:url)) validator = Validator.new(file, config.sources_manager.master.map(&:url))
validator.stubs(:build_pod) validator.stubs(:build_pod)
validator.stubs(:validate_url) validator.stubs(:validate_url)
validator.stubs(:swift_version).returns('2.3')
validator.validate validator.validate
validator validator
end end
...@@ -809,6 +810,10 @@ module Pod ...@@ -809,6 +810,10 @@ module Pod
validator.results.count.should == 0 validator.results.count.should == 0
end end
it 'defaults to Swift 2.3' do
validator = test_swiftpod
end
end end
#-------------------------------------------------------------------------# #-------------------------------------------------------------------------#
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment