Fork me on GitHub
#tools-deps
<
2021-12-14
>
vemv07:12:04

Different topic, any user of cider-nrepl (whether it's from Emacs or e.g. Calva, vim-iced) would like to take on a smallish isolated task? I would be super grateful, it escapes a little bit my area of expertise / what I can QA myself. It boils down to wrapping up (perhaps slightly reworking) this PR, its author is on PTO (for a good reason 🎉) https://github.com/clojure-emacs/enrich-classpath/pull/8 Can explain context/requirements as needed.

practicalli-john12:12:27

I assume the -P flag is exactly the same as using -X:deps prep argument with the clojure command. Are there any differences? Does -X:deps prep work with other aliases just as -P does (I should probably test this myself anyway 🙂 )

Alex Miller (Clojure team)13:12:26

No, those are different things entirely

Alex Miller (Clojure team)13:12:47

-P does not prep dependent libs (although it will fail and tell you to prep them)

practicalli-john14:12:41

By dependent libs, do you mean the libraries that a dependency entry in a deps.edn file depends upon? (a library that is not explicitly defined in the deps.edn file, but is a dependency of a library that is defined as a dependency)? I feel I am still missing something in my understanding, especially the purpose / value of the -P flag.

Alex Miller (Clojure team)14:12:48

maybe more clearly, -P does not prep libs

Alex Miller (Clojure team)14:12:31

-P predates that and was designed to be a flag you could prefix to whatever command you plan to run (say, in a container) to trigger all of the download and classpath construction without actually running the command

practicalli-john14:12:56

and hopefully my last annoying question, what does it mean to prep libs? Is that in relation to buildng jars from Git repos and local/root dependencies? I am not sure otherwise.

Alex Miller (Clojure team)14:12:26

preparing source-based libs to be on the classpath if needed

practicalli-john14:12:31

Okay, that makes sense, thanks for clearing that up. Seems like there is lots more to read up on that page too 🙂

Alex Miller (Clojure team)14:12:09

this particular point is certainly confusing and still not entirely resolved from a design perspective

practicalli-john15:12:50

My initial confusion was that they were both described as Prepare in the help and I didn't realise what an unprepared lib actually was (until now).

Alex Miller (Clojure team)15:12:21

yes, that is the problem with using the same word for different things :)

1
Alex Miller (Clojure team)15:12:18

but "prepare" is such a useful word :)

practicalli-john16:12:41

I just wasnt prepared for that 🙂