tools-deps

Discuss tools.deps.alpha, tools.build, and the clj/clojure command-line scripts! See also #depstar #clj-new
cfleming 2021-05-23T22:51:42.045900Z

I’m working on a bug in Cursive where I get the “Manifest type not detected” bug when using :local/root in :override-deps. The bug is basically because Cursive doesn’t call into deps with the CWD set to the project directory. I do set *the-dir* when reading the deps maps with modern deps versions, but perhaps the override is applied later during deps calculation? I’m not sure. I’ve had to fix several bugs of this type, and I think the most robust solution would be to absolutise all the paths in the deps map before passing it to t.d.a. I think the following places in the deps map are where I would have to do it, are there any that I’ve missed?

:local/root "path"
:paths ["src"]
:extra-paths ["test" "resources"]
:replace-paths ["foo" "bar"]
:classpath-overrides {org.clojure/clojure "/my/clojure/target"}

seancorfield 2021-05-23T23:13:05.046600Z

@cfleming and account for paths including aliases that are expanded to lists of strings.

cfleming 2021-05-23T23:14:12.047400Z

@seancorfield Oh, you mean that the paths include a keyword alias ref? Good catch, thanks.

seancorfield 2021-05-23T23:14:28.047600Z

Like this https://clojure.org/reference/deps_and_cli#_paths

cfleming 2021-05-23T23:32:24.047900Z

Right, I remember that now.