tools-deps

emccue 2026-06-21T13:27:06.671899Z

I apologize if this is a stupid question, but: what are the indented uses for "exclusions." I am asking because I think I may have. a scheme to avoid needing them in the same form

Alex Miller (Clojure team) 2026-06-21T13:46:58.688519Z

To exclude transitive deps, either because you know you don't need it, or to remove it from consideration and supply a different version explicitly

emccue 2026-06-21T15:12:25.566559Z

> or to remove it from consideration and supply a different version explicitly Mechanically, wouldn't supplying a different version at the top level also serve this goal?

emccue 2026-06-21T15:14:24.534269Z

or rather, my thought is that this is only needed because if i want to replace fruits.eat/orange with something that supplies the same API, I can get that from the repo in healthy.foods/orange but I can't say "for purposes of resolution, the orange artifact from this group id is equivalent to the orange artifact from this other group id."

Alex Miller (Clojure team) 2026-06-21T15:44:32.769859Z

Supplying a top level version alone is sufficient - if you control the top level. As a library, you never control the real top level though

Alex Miller (Clojure team) 2026-06-21T15:46:36.020349Z

There is no mechanism for aliasing, although that would be useful at times if you wanted to like switch to a fork. But again, as a library, you don't really control that

Alex Miller (Clojure team) 2026-06-21T15:48:00.091779Z

If you have two libs with the same namespaces, final classpath ordering controls which is used and the assumption is that artifacts are disjoint

Alex Miller (Clojure team) 2026-06-21T15:48:15.425029Z

(So order doesn't matter)

emccue 2026-06-21T17:08:49.928689Z

Okay so that basically tracks with my understanding