Commit 3a257e2
committed
Extract jack-in dependency injection into cider-jack-in.el
Move the ~400-line "Jack-in dependencies injection" section out of
cider.el and into its own module. The new file holds:
- the deps/middleware/plugin defvars (cider-jack-in-dependencies,
cider-jack-in-lein-plugins, cider-jack-in-nrepl-middlewares, etc.)
- per-tool jack-in command builders
(cider-lein-jack-in-dependencies, cider-clojure-cli-jack-in-dependencies,
cider-gradle-jack-in-dependencies, cider-shadow-cljs-jack-in-dependencies)
- inject-fns the tool registry dispatches to
(cider--lein-inject-deps, cider--clojure-cli-inject-deps,
cider--shadow-cljs-inject-deps, cider--gradle-inject-deps)
- shared helpers (cider--shell-quote-argument,
cider--powershell-encode-command, cider--combined-aliases, etc.)
The recently-added cider-register-jack-in-tool API is the natural seam:
tools register an :inject-fn from this file, so cider.el only needs to
require cider-jack-in and the registry plumbing keeps working unchanged.
The few values cider-jack-in.el reads from cider.el (cider-clojure-cli-*,
cider-enable-nrepl-jvmti-agent, cider-jack-in-tools, cider--jack-in-tool)
are forward-declared to avoid a circular require.
cider.el drops from 2207 to 1801 lines.1 parent cf8d695 commit 3a257e2
2 files changed
Lines changed: 468 additions & 407 deletions
0 commit comments