-
-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade should follow Maven relocations #227
Comments
@pmonks Thank you for your reporting! It is impossible to know which versions have relocation unless we check. I'm planning to implement it initially as an optional feature, and then continue to search for a more efficient way of checking. |
No worries! It was actually another Clojure user who pointed this out to me, though I don't know their GitHub handle to @mention them. Regardless they deserve the credit! Given that upgrades break a previously functional build when a relocation is present, I think the performance cost of checking for them is probably the lesser of two evils (especially as I suspect that cost isn't very high per outdated dependency). |
You are right. |
I'm sorry but I haven't had the opportunity to try that branch, and probably won't for the foreseeable future. Perhaps it could be placed behind a command line flag and released, so that the wider community can help test it? |
Steps to reproduce:
deps.edn
file with this content:clj- P
and observe that it successfully downloads the referenced libraryclj -A:outdated
and observe that the dependency is out of date (at the time of writing, the latest version is8.0.33
)clj -A:outdated --upgrade --force
Expected result:
The dependency's GAV in the
deps.edn
file is modified frommysql/mysql-connector-java {:mvn/version "8.0.30"}
tocom.mysql/mysql-connector-j {:mvn/version "8.0.33"}
, since thepom.xml
formysql/mysql-connector-java {:mvn/version "8.0.33"}
contains this relocation information:Actual result:
The dependency's GAV in the
deps.edn
file only has its version updated (to8.0.33
), which will then fail when downloaded (e.g. viaclj -P
) since there is no Maven artifact formysql/mysql-connector-java {:mvn/version "8.0.33"}
(due to the relocation).The text was updated successfully, but these errors were encountered: