Closed gfredericks closed 3 years ago
For the record, version 0.5.0
was just released, which solves that particular instance of the problem.
Hello! For the simple case, I was able to fix this in version-clj
(but there are surely others that break it again). If you're still interested in this, could you verify the behaviour using [lein-ancient "1.0.0-RC1"]
?
This would be difficult to verify given the 0.5.0
release mentioned above, right?
I think we'd need a library to intentionally release an analogously weird version that otherwise looks like the latest.
It's also true that I'm not personally exposed to this issue anymore, but thanks for working on it.
I've found this one, as a treasure trove of weird versions: https://mvnrepository.com/artifact/sh.ory.kratos/kratos-client
Unfortunately, as mentioned, my fix was only for subset of versions, and this artifact still causes problems:
$ lein ancient show-versions sh.ory.kratos/kratos-client
retrieving versions for sh.ory.kratos/kratos-client from 2 repositories ...
* 27 version(s) found.
* latest release: "0.5.3-alpha.1.pre.0"
* latest qualified: "0.5.4-alpha.1"
* all releases: [ "0.5.3-alpha.1.pre.0" "0.5.0-alpha.1.pre.1" "0.0.3-alpha.8+oryOS.15" ]
* all qualified versions: [ "0.5.4-alpha.1" "0.5.3-alpha.1" "0.5.2-alpha.1" "0.5.1-alpha.1" "0.5.0-alpha.1"
"0.4.6-alpha.1" "0.3.0-alpha.1" "0.2.1-alpha.1" "0.2.0-alpha.2" "0.1.1-alpha.1"
"0.1.0-alpha.6" "0.1.0-alpha.5" "0.1.0-alpha.4" "0.1.0-alpha.1" "0.0.3-alpha.15"
"0.0.3-alpha.14" "0.0.3-alpha.11" "0.0.3-alpha.10" "0.0.3-alpha.7" "0.0.3-alpha.5"
"0.0.3-alpha.4" "0.0.3-alpha.3" "0.0.3-alpha.2" "0.0.3-alpha.1" ]
We correctly have 0.5.4-alpha.1
marked as qualified, but 0.0.3-alpha.8+oryOS.15
is treated as a release version.
It seems to be a decision which versions we have to consider unsupported by version-clj
. There are, for example, some interestingpostgres
ones, e.g. 9.1-901-1.jdbc4
, 9.4-1205-jdbc41
, 42.1.3.jre6
. Madness, really.
Version 1.0.0-RC3
gets it right now:
$ lein ancient show-versions sh.ory.kratos/kratos-client
retrieving versions for sh.ory.kratos/kratos-client from 2 repositories ...
* 27 version(s) found.
* latest qualified: "0.5.4-alpha.1"
* all qualified versions: [ "0.5.4-alpha.1" "0.5.3-alpha.1" "0.5.3-alpha.1.pre.0" "0.5.2-alpha.1" "0.5.1-alpha.1"
"0.5.0-alpha.1" "0.5.0-alpha.1.pre.1" "0.4.6-alpha.1" "0.3.0-alpha.1" "0.2.1-alpha.1"
"0.2.0-alpha.2" "0.1.1-alpha.1" "0.1.0-alpha.6" "0.1.0-alpha.5" "0.1.0-alpha.4"
"0.1.0-alpha.1" "0.0.3-alpha.15" "0.0.3-alpha.14" "0.0.3-alpha.11" "0.0.3-alpha.10"
"0.0.3-alpha.8+oryOS.15" "0.0.3-alpha.7" "0.0.3-alpha.5" "0.0.3-alpha.4" "0.0.3-alpha.3"
"0.0.3-alpha.2" "0.0.3-alpha.1" ]
I ran into the fact that
org.clojure/tools.logging
has a0.5.0-alpha.1
release that is not being recognized as "qualified", presumably because it has the uncommon.
near the end.This could be "fixed" in
version-clj
, but I'm not sure it's a good idea, since it would be just adding special logic for a particular variant of arbitrarily weird release strings.Is there some other feature that could be added to lein-ancient that would allow dealing with this? I'm adding
:upgrade false
for now, but that's unfortunate since I'd like to find out when a real release comes out.