Welcome! Please see the About page for a little more info on how this works.

0 votes
in Tools by

The deps reference says the -A option applies across all alias types. It also says if multiple -R alias maps are specified, they are merged. This to me implies that if only options available to -R are specified (like :extra-deps), then multiple -A maps will behave the same as multiple -R maps.

Given the above, and two aliases with just :extra-deps specified, I expect the following to be equivalent:

clojure -R:a:b -Spath
clojure -A:a:b -Spath

However, while -R generates a path with the deps of both :a and :b, the -A version only contains the deps of :b.

Is this a bug or is the behaviour intentionally different?

I tested this on the latest windows clojure

1 Answer

+2 votes
selected by
Best answer

You are correct in your expectations - these should give the same result.

I can't reproduce this on Mac with - can you share your deps.edn?

Might be something specific to the windows version of the script.

Alex and I debugged this tonight and Alex published for Windows that should fix this problem  https://github.com/clojure/tools.deps.alpha/wiki/clj-on-Windows

You'll need to use -Sforce to get the CLI cache to be recomputed correctly (or remove the .cpcache folder in the affected projects).
You guys are amazing. I was just about to mention I could no longer reproduce it (I had run -Sforce at some point) but good to know the root cause has already been fixed!