diff options
| author | Mike McQuaid | 2017-10-06 04:34:12 +0100 |
|---|---|---|
| committer | GitHub | 2017-10-06 04:34:12 +0100 |
| commit | dd2083d03d1fe679e8d91b384ce1c8e6ef237ad8 (patch) | |
| tree | 20529c339d43d310ff84feffbf9efed170b99d91 | |
| parent | 0b105960806f94ace5dc57b091854c8ff9c76af8 (diff) | |
| parent | 4f55565677101a1a3b63567ce937b8cf72eae252 (diff) | |
| download | brew-dd2083d03d1fe679e8d91b384ce1c8e6ef237ad8.tar.bz2 | |
Merge pull request #3262 from kabel/version-detect-php
Add version detection support for php URL
| -rw-r--r-- | Library/Homebrew/test/version_spec.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/version.rb | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/Library/Homebrew/test/version_spec.rb b/Library/Homebrew/test/version_spec.rb index d670d79c8..d0393afa6 100644 --- a/Library/Homebrew/test/version_spec.rb +++ b/Library/Homebrew/test/version_spec.rb @@ -649,6 +649,11 @@ describe Version do .to be_detected_from("ftp://gcc.gnu.org/pub/gcc/snapshots/6-20151227/gcc-6-20151227.tar.bz2") end + specify "semver in middle of URL" do + expect(Version.create("7.1.10")) + .to be_detected_from("https://php.net/get/php-7.1.10.tar.gz/from/this/mirror") + end + specify "from URL" do expect(Version.create("1.2.3")) .to be_detected_from("http://github.com/foo/bar.git", tag: "v1.2.3") diff --git a/Library/Homebrew/version.rb b/Library/Homebrew/version.rb index b03a4bc33..3ac748037 100644 --- a/Library/Homebrew/version.rb +++ b/Library/Homebrew/version.rb @@ -456,6 +456,10 @@ class Version # e.g. http://www.ijg.org/files/jpegsrc.v8d.tar.gz m = /\.v(\d+[a-z]?)/.match(stem) return m.captures.first unless m.nil? + + # e.g. https://secure.php.net/get/php-7.1.10.tar.bz2/from/this/mirror + m = /[-.vV]?((?:\d+\.)+\d+(?:[-_.]?(?i:alpha|beta|pre|rc)\.?\d{,2})?)/.match(spec_s) + return m.captures.first unless m.nil? end end |
