Merge pull request #2827 from JCount/version-improve-url-only-version-parsing
version: improve url-only version parsing
This commit is contained in:
commit
0a5052141d
@ -453,11 +453,6 @@ describe Version do
|
|||||||
.to be_detected_from("https://example.com/dada-v2017-04-17.tar.gz")
|
.to be_detected_from("https://example.com/dada-v2017-04-17.tar.gz")
|
||||||
end
|
end
|
||||||
|
|
||||||
specify "dash version style" do
|
|
||||||
expect(Version.create("3.4"))
|
|
||||||
.to be_detected_from("http://www.antlr.org/download/antlr-3.4-complete.jar")
|
|
||||||
end
|
|
||||||
|
|
||||||
specify "jenkins version style" do
|
specify "jenkins version style" do
|
||||||
expect(Version.create("1.486"))
|
expect(Version.create("1.486"))
|
||||||
.to be_detected_from("http://mirrors.jenkins-ci.org/war/1.486/jenkins.war")
|
.to be_detected_from("http://mirrors.jenkins-ci.org/war/1.486/jenkins.war")
|
||||||
@ -465,6 +460,27 @@ describe Version do
|
|||||||
.to be_detected_from("https://github.com/hechoendrupal/DrupalConsole/releases/download/0.10.11/drupal.phar")
|
.to be_detected_from("https://github.com/hechoendrupal/DrupalConsole/releases/download/0.10.11/drupal.phar")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
specify "char prefixed, url-only version style" do
|
||||||
|
expect(Version.create("1.9.293"))
|
||||||
|
.to be_detected_from("https://github.com/clojure/clojurescript/releases/download/r1.9.293/cljs.jar")
|
||||||
|
expect(Version.create("0.6.1"))
|
||||||
|
.to be_detected_from("https://github.com/fibjs/fibjs/releases/download/v0.6.1/fullsrc.zip")
|
||||||
|
expect(Version.create("1.9"))
|
||||||
|
.to be_detected_from("https://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_1.9/E.tgz")
|
||||||
|
end
|
||||||
|
|
||||||
|
specify "w.x.y.z url-only version style" do
|
||||||
|
expect(Version.create("2.3.2.0"))
|
||||||
|
.to be_detected_from("https://github.com/JustArchi/ArchiSteamFarm/releases/download/2.3.2.0/ASF.zip")
|
||||||
|
expect(Version.create("1.7.5.2"))
|
||||||
|
.to be_detected_from("https://people.gnome.org/~newren/eg/download/1.7.5.2/eg")
|
||||||
|
end
|
||||||
|
|
||||||
|
specify "dash version style" do
|
||||||
|
expect(Version.create("3.4"))
|
||||||
|
.to be_detected_from("http://www.antlr.org/download/antlr-3.4-complete.jar")
|
||||||
|
end
|
||||||
|
|
||||||
specify "apache version style" do
|
specify "apache version style" do
|
||||||
expect(Version.create("1.2.0-rc2"))
|
expect(Version.create("1.2.0-rc2"))
|
||||||
.to be_detected_from("http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-rc2-bin.tar.gz")
|
.to be_detected_from("http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.0/apache-cassandra-1.2.0-rc2-bin.tar.gz")
|
||||||
|
|||||||
@ -428,8 +428,13 @@ class Version
|
|||||||
|
|
||||||
# e.g. http://mirrors.jenkins-ci.org/war/1.486/jenkins.war
|
# e.g. http://mirrors.jenkins-ci.org/war/1.486/jenkins.war
|
||||||
# e.g. https://github.com/foo/bar/releases/download/0.10.11/bar.phar
|
# e.g. https://github.com/foo/bar/releases/download/0.10.11/bar.phar
|
||||||
m = %r{/(\d\.\d+(\.\d+)?)}.match(spec_s)
|
# e.g. https://github.com/clojure/clojurescript/releases/download/r1.9.293/cljs.jar
|
||||||
return m.captures.first unless m.nil?
|
# e.g. https://github.com/fibjs/fibjs/releases/download/v0.6.1/fullsrc.zip
|
||||||
|
# e.g. https://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_1.9/E.tgz
|
||||||
|
# e.g. https://github.com/JustArchi/ArchiSteamFarm/releases/download/2.3.2.0/ASF.zip
|
||||||
|
# e.g. https://people.gnome.org/~newren/eg/download/1.7.5.2/eg
|
||||||
|
m = %r{/([rvV]_?)?(\d\.\d+(\.\d+){,2})}.match(spec_s)
|
||||||
|
return m.captures[1] unless m.nil?
|
||||||
|
|
||||||
# e.g. http://www.ijg.org/files/jpegsrc.v8d.tar.gz
|
# e.g. http://www.ijg.org/files/jpegsrc.v8d.tar.gz
|
||||||
m = /\.v(\d+[a-z]?)/.match(stem)
|
m = /\.v(\d+[a-z]?)/.match(stem)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user