Closed
Description
Currently there are a few ways of running nvd-clojure:
- As a
main
program (which can be invoked in a few ways:lein run
,clojure -m
,java -cp
, etc)- it optionally accepts a user-provided classpath string as an argument
- else it's inferred
- it optionally accepts a user-provided classpath string as an argument
- As a Clojure CLI Tool, that accepts a user-provided classpath string as an argument
- As a Leiningen plugin, which infers the classpath
- As a program oriented towards tools.deps projects, which infers the classpath by parsing deps.edn.
The APIs that infer a classpath are prone to classpath interference.
Accordingly, they're unsafe APIs, which lead to inaccurate results and increase the support burden in form of github issues.
I'd propose removing them entirely.
I wouldn't be worried about "not breaking APIs" as common between Clojurists, because this project's very goal is to regularly break CI builds 😄 i.e. it's part of the contract that this program will regularly require users to upgrade things if they want to remain safe.
Metadata
Metadata
Assignees
Labels
No labels