I'm running into a situation where if I use two aliases simultaneously, with different versions of the same maven dependency, an older version in the user config home deps.edn, and more recent version in the project deps.edn alias, the most recent version isn't being used. But I can't seem to immediately make a minimal example of this. Are there known reasons this might happen?
can you provide a deps.edn and how you're using it?
like are you using create-basis in tools.build? if so, by default it does not use the user deps.edn in config
https://clojure.github.io/tools.build/clojure.tools.build.api.html#var-create-basis - you can choose to use it if desired
to do so you would call (create-basis {:user :standard})
Ah sorry I meant to post this question in tools-deps, I'm just using the clojure CLI
Will see if I can figure out a minimal repro but my first trivial attempt was working correctly
Though actually now that you mention it maybe create-basis will be useful for debugging this 😅
if you're using the CLI, I would also look at -Stree or -Strace to diagnose
@jjttjj you're not by any chance having a :deps (without alias) entry in your user clojure deps.edn right?
This came up in #tools-deps once: it takes priority over whatever your local deps are which can be confusing
I'd prefer to use a single def to define the configuration for build tasks, rather than individual def statements. Does this example at https://practical.li/clojure/clojure-cli/projects/tools-build/#build-tasks seem to be a reasonable approach? Any alternatives that would make it simpler or anything basic I have missed? Thanks.
yes, it is a reasonable approach