tools-build

zane 2022-08-25T19:19:02.755019Z

The https://clojure.org/guides/tools_build#_compiled_uberjar_application_build recommends adding a dependency on tools.build to the :deps of an alias. My understanding is that -T ignores :extra-deps. If I want to be able to call my build functions from the Clojure REPL in development is the right thing to add an additional dependency on tools.build to the :extra-deps of a development alias?

Alex Miller (Clojure team) 2022-08-25T19:41:11.793249Z

:deps and :extra-deps in an alias are synonyms

Alex Miller (Clojure team) 2022-08-25T19:41:24.814149Z

so use either

Alex Miller (Clojure team) 2022-08-25T19:41:58.559269Z

you will likely also want to add :paths or :extra-paths (again, synonyms) of ["."]

Alex Miller (Clojure team) 2022-08-25T19:42:50.696459Z

why two different named things that do the same thing? naming is hard, yo

zane 2022-08-25T19:43:52.821139Z

Ah! I thought :deps overwrote.

zane 2022-08-25T19:47:40.332619Z

And that -T ignores :extra-deps, per this: https://clojurians.slack.com/archives/C6QH853H8/p1595955792137500

Alex Miller (Clojure team) 2022-08-25T20:07:01.381469Z

that's actually in reference to an entirely different -T that was added temporarily in a dev release then removed, that did something different than the current -T

Alex Miller (Clojure team) 2022-08-25T20:11:26.392319Z

sorry, I may have actually completely confused things above - in aliases, :deps is a synonym for :replace-deps and :paths is a synonym for :replace-paths. And those are separate from :extra-deps and :extra-paths. But none of them are ignored.

zane 2022-08-25T21:03:16.630059Z

Brilliant. Okay.