Sha256: 6dc859afc48c3ad3c0bef91f41049335099f1a216c7e1bfae8f2d03926e5c084

Contents?: true

Size: 1002 Bytes

Versions: 28

Compression:

Stored size: 1002 Bytes

Contents

module PatchDetector
  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 |extracted_option|
      raise(ArgumentError, "requires :ruby_version and :minimum_ruby_version_for_patch") if extracted_option.nil? || extracted_option.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
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
yieldmanager-0.9.13 lib/patch_detector.rb
yieldmanager-0.9.12 lib/patch_detector.rb
yieldmanager-0.9.11 lib/patch_detector.rb
yieldmanager-0.9.10 lib/patch_detector.rb
yieldmanager-0.9.8 lib/patch_detector.rb
yieldmanager-0.9.7 lib/patch_detector.rb
yieldmanager-0.9.6 lib/patch_detector.rb
yieldmanager-0.9.5 lib/patch_detector.rb
yieldmanager-0.9.4 lib/patch_detector.rb
yieldmanager-0.9.3 lib/patch_detector.rb
yieldmanager-0.9.2 lib/patch_detector.rb
yieldmanager-0.9.1 lib/patch_detector.rb
yieldmanager-0.9.0 lib/patch_detector.rb
yieldmanager-0.8.6 lib/patch_detector.rb
yieldmanager-0.8.5 lib/patch_detector.rb
yieldmanager-0.8.4 lib/patch_detector.rb
yieldmanager-0.8.3 lib/patch_detector.rb
yieldmanager-0.8.2 lib/patch_detector.rb
yieldmanager-0.8.1 lib/patch_detector.rb
yieldmanager-0.8.0 lib/patch_detector.rb