Is there an equivalent of :local/root
in the alternative tools e.g. lein
or boot
?
The reason for the question is because this makes debugging 3rd party library (say reagent
) wildly easy. Just clone the lib, add it as a :local/root
and then start editing the library as if it was part of your project. Seems like reason enough for Clojure Tools to be used over alternatives.
@tkjone I think that is what checkouts
is for in Leiningen? https://github.com/technomancy/leiningen/blob/stable/doc/TUTORIAL.md#checkout-dependencies (I've never used that but it sounds a bit like using :local/root
in deps.edn
)
There's also a plugin for Leiningen that lets you specify your dependencies via a deps.edn
which, presumably, would also serve you for this purposes I think...
https://github.com/RickMoynihan/lein-tools-deps -- yes, it supports :local/root
and :git/url
, according to its README.
(`checkouts` would require that the checked-out library be a Leiningen project as well -- Rick's plugin should work for non-lein projects, but for transitive dependencies you'd need it to have pom.xml
or deps.edn
in it I think)
Was there a change recently (past month or so) in clojure.tools.deps that changed the order of the classpath? In clojure 1.10.1.507 Iโm seeing clojure -Spath
puts deps.edn
:paths
first (e.g., with {:paths ["src/main/clojure"] ,,,}
, src/main/clojure
is the first item in the classpath), and in clojure 1.10.1.645 Iโm seeing :paths
listed last.
> 0.9.799 on Sep 16, 2020- Fix classpath ordering for paths and libs
Cheers! Is there a quick way to correlate tools.deps versions other than looking at the change log?
i'm not sure. i just remembered that change being discussed vaguely. sorry
correlate versions to what?
No worries, you already did more than I could do on my own ๐
The clojure-tools release and the clojure.tools.deps releases. Looking at the clojure -h
on an installation, I see the former. Iโd like to get at the latter more easily.
Thatโs kind of a consolidated release page for clj and tools.deps (versions of that included for reference) only for stable versions of clj
Yeah, found that. I was hoping to have something similar to the output of clojure -h
on the command line, to aid in debugging rather than referring to a webpage. That works, though.
you can tell by doing clj -A:deps -Stree | grep tools.deps.alpha
Cheers!
writes that down