diff options
| author | Jack Nagel | 2012-07-10 16:10:16 -0500 |
|---|---|---|
| committer | Jack Nagel | 2012-08-18 11:12:09 -0500 |
| commit | 9e80ec2c11c36ce99b53910a4340d2905b8a2d18 (patch) | |
| tree | 44c9de3c5e2e5bdd5888cd4ea7a7d796b482e7c3 /Library | |
| parent | 4affbabfb7aef915f716531ad0a39eff04ff9933 (diff) | |
| download | homebrew-9e80ec2c11c36ce99b53910a4340d2905b8a2d18.tar.bz2 | |
Add Version#detected_from_url?
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/audit.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/formula_support.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_formula.rb | 12 | ||||
| -rw-r--r-- | Library/Homebrew/version.rb | 9 |
4 files changed, 15 insertions, 16 deletions
diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index bb3a538a4..0494f4c3f 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -217,8 +217,8 @@ class FormulaAuditor if s.version.to_s.empty? problem "Invalid or missing #{spec} version" else - version_text = s.version if s.explicit_version? - version_url = Pathname.new(s.url).version + version_text = s.version unless s.version.detected_from_url? + version_url = Version.parse(s.url) if version_url == version_text problem "#{spec} version #{version_text} is redundant with version scanned from URL" end diff --git a/Library/Homebrew/formula_support.rb b/Library/Homebrew/formula_support.rb index 1b968d849..023d225d9 100644 --- a/Library/Homebrew/formula_support.rb +++ b/Library/Homebrew/formula_support.rb @@ -11,11 +11,6 @@ class SoftwareSpec @mirrors = [] end - # Was the version defined in the DSL, or detected from the URL? - def explicit_version? - @explicit_version || false - end - def download_strategy @download_strategy ||= DownloadStrategyDetector.new(@url, @using).detect end @@ -63,7 +58,6 @@ class SoftwareSpec @version ||= Version.parse(@url) else @version = Version.new(val) - @explicit_version = true end end diff --git a/Library/Homebrew/test/test_formula.rb b/Library/Homebrew/test/test_formula.rb index e60ddd051..4f9bb3930 100644 --- a/Library/Homebrew/test/test_formula.rb +++ b/Library/Homebrew/test/test_formula.rb @@ -122,9 +122,9 @@ class FormulaTests < Test::Unit::TestCase assert_equal 1, f.devel.mirrors.length assert f.head.mirrors.empty? - assert !f.stable.explicit_version? - assert !f.bottle.explicit_version? - assert !f.devel.explicit_version? + assert f.stable.version.detected_from_url? + assert f.bottle.version.detected_from_url? + assert f.devel.version.detected_from_url? assert_version_equal '0.1', f.stable.version assert_version_equal '0.1', f.bottle.version assert_version_equal '0.2', f.devel.version @@ -159,8 +159,8 @@ class FormulaTests < Test::Unit::TestCase assert_version_equal '0.3', f.version assert_version_equal '0.3', f.stable.version assert_version_equal '0.4', f.devel.version - assert f.stable.explicit_version? - assert f.devel.explicit_version? + assert !f.stable.version.detected_from_url? + assert !f.devel.version.detected_from_url? end def test_old_bottle_specs @@ -182,7 +182,7 @@ class FormulaTests < Test::Unit::TestCase assert_nil f.bottle.md5 assert_nil f.bottle.sha256 - assert !f.bottle.explicit_version? + assert f.bottle.version.detected_from_url? assert_equal 0, f.bottle.revision assert_version_equal '0.1', f.bottle.version else diff --git a/Library/Homebrew/version.rb b/Library/Homebrew/version.rb index cc8f220b7..878832f67 100644 --- a/Library/Homebrew/version.rb +++ b/Library/Homebrew/version.rb @@ -1,9 +1,14 @@ class Version include Comparable - def initialize val + def initialize val, detected=false return val if val.is_a? Version or val.nil? @version = val.to_s + @detected_from_url = detected + end + + def detected_from_url? + @detected_from_url end def head? @@ -39,7 +44,7 @@ class Version def self.parse spec version = _parse(spec) - Version.new(version) unless version.nil? + Version.new(version, true) unless version.nil? end private |
