Skip to content

Consolidate jack-in defcustoms into cider-jack-in.el#3910

Merged
bbatsov merged 1 commit into
masterfrom
extract-jack-in-defcustoms
May 13, 2026
Merged

Consolidate jack-in defcustoms into cider-jack-in.el#3910
bbatsov merged 1 commit into
masterfrom
extract-jack-in-defcustoms

Conversation

@bbatsov
Copy link
Copy Markdown
Member

@bbatsov bbatsov commented May 13, 2026

cider.el's customization section still held all the jack-in-only defcustoms: per-tool command/parameter pairs and the cross-tool jack-in toggles. Move them next to the code that actually uses them.

Moved (~17 defcustoms):

  • Per-tool command/parameter pairs for lein, clojure-cli (incl. aliases / global-aliases), shadow-cljs, gradle, babashka, nbb, and basilisp.
  • Cross-tool toggles: cider-jack-in-default, cider-preferred-build-tool, cider-allow-jack-in-without-project, cider-inject-dependencies-at-jack-in, cider-enable-nrepl-jvmti-agent.

Each gets :group 'cider since the defgroup stays in cider.el, but the in-Customize grouping is unchanged for users. The now-redundant (defvar ...) forward declarations get removed from cider-jack-in.el's prologue.

cider.el's customization section is now just project metadata, connect hooks, and cider-version; jack-in's user-tunable knobs all live with the jack-in code.

cider.el: 773 → 577 lines.

  • Compiles clean with eldev compile --warnings-as-errors
  • All 547 tests pass (eldev test)
  • No CHANGELOG entry — pure refactor, no user-visible change

cider.el's customization section still held all the jack-in-only
defcustoms: per-tool command/parameter pairs and the cross-tool jack-in
toggles.  Move them next to the code that actually uses them.

Moved (~17 defcustoms):
- Per-tool command/parameter pairs for lein, clojure-cli (incl.
  aliases / global-aliases), shadow-cljs, gradle, babashka, nbb, and
  basilisp.
- Cross-tool toggles: cider-jack-in-default, cider-preferred-build-tool,
  cider-allow-jack-in-without-project, cider-inject-dependencies-at-jack-in,
  cider-enable-nrepl-jvmti-agent.

Each gets `:group 'cider' since the defgroup stays in cider.el, but the
in-Customize grouping is unchanged for users.  Removing the now-redundant
`(defvar ...)` forward declarations from cider-jack-in.el's prologue is
the second half of the diff.

cider.el's customization section is now ~50 lines of project metadata,
connect hooks, and `cider-version`; jack-in's user-tunable knobs all
live with the jack-in code.

cider.el drops from 773 to 577 lines.
@bbatsov bbatsov merged commit 49de783 into master May 13, 2026
13 checks passed
@bbatsov bbatsov deleted the extract-jack-in-defcustoms branch May 13, 2026 06:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant