2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'lib/patch_detector.rb', line 2
def needs_patching?(opts={})
ruby_version, minimum_ruby_version_for_patch = opts.values_at(:ruby_version, :minimum_ruby_version_for_patch)
[ruby_version, minimum_ruby_version_for_patch].each do ||
raise(ArgumentError, "requires :ruby_version and :minimum_ruby_version_for_patch") if .nil? || .empty?
end
return false if ruby_version.nil? || minimum_ruby_version_for_patch.nil?
minimum_ruby_version_for_patch =~ /(\d+)\.(\d+)\.(\d+)/
min_release_milestone, min_release_feature, min_release_bug_fix = [$1, $2, $3].collect{|m| m.to_i}
ruby_version =~ /(\d+)\.(\d+)\.(\d+)/
ruby_version_milestone, ruby_version_feature, ruby_version_bug_fix = [$1, $2, $3].collect{|m| m.to_i}
return true if (ruby_version_milestone >= min_release_milestone) && (ruby_version_feature >= min_release_feature) && (ruby_version_bug_fix >= min_release_bug_fix)
return false
end
|