Skip to content

Releases: clojure-emacs/cider

CIDER 1.4.1

26 May 05:25
Compare
Choose a tag to compare

1.4.1 (2022-05-25)

Changes

  • Upgrade cider-nrepl to 0.28.4.

Bugs fixed

  • #3195: Revert the change that resulted in (error "Cyclic keymap inheritance") on cider-test-run-test.
  • #3182: Don't try to invoke JVM-specific code outside of JVM Clojure.
  • #3202: Fix cider-eval-ns-form
    • Do not always perform undef-all. Undef only with C-u prefix.
    • Fix extraction of namespace name.

CIDER 1.4 ("Kyiv")

02 May 09:06
Compare
Choose a tag to compare

New features

  • #3188: Add support for undef-all op, for removing stale vars and conflicting aliases.
    • Add new command cider-undef-all.
    • Existing commands cider-load-buffer, cider-load-file, and cider-eval-ns-form can be called with C-u prefix to execute undef-all before reloading the ns.
  • #3185: Add feature to cider-eval-in-context for automatically extracting parent let bindings when called with C-u prefix argument.
  • Add new interactive command cider-inspire-me. It does what you'd expect.
  • #3162: Save eval results into kill ring and registers.
    • Add new customization variable cider-eval-register to automatically store the last interactive eval result into the specified register.
    • Add interactive command cider-kill-last-result to manually save the last eval result into kill ring.

Changes

  • #3177: Apply ANSI colorization to test assertion output.
  • Use clojure-mode 5.14.0.

Bugs fixed

  • #3170: Skip ensure repl available checks on xref functions. (this improves the interop with clojure-lsp)
  • #3173: Locally remove cider-complete-at-point from completion-at-point-functions instead of killing it as a local variable.
  • #3172: Restore the long-lost (but critical) inspirational message on connect.
  • #3186: An assortment of small fixes.

CIDER 1.3 ("Ukraine")

07 Mar 07:31
Compare
Choose a tag to compare

This release is dedicated to the people of Ukraine, with whom I share a very deep bond. Please, consider supporting them in their time of need.

New features

  • #3148: Display error messages in multiline comment eval results, and in result overlays when cider-show-error-buffer is set to nil.
  • #3149: Add option 'change to cider-eval-result-duration, allowing multiple eval result overlays to persist until the next change to the buffer.

Changes

  • #3127: Strip all exec-opts flags (-A -M -T -X) if they exist in cider-clojure-cli-aliases. Also addresses a duplicate : in the generated clj command.
  • cider-jack-in-lein-plugins no longer affects non-Leiningen projects.
    • Third-party packages should rely on cider-jack-in-dependencies instead.
  • Upgrade cider-nrepl to 0.28.3.
  • Remove cider-jdk-src-paths defcustom since enrich-classpath makes it redundant.
  • Remove cider-resolve-java-class function since enrich-classpath makes it redundant.

Bugs fixed

  • Upgrade enrich-classpath, which fixes various edge cases.
    • Remember: at the moment the enrich-classpath is disabled by default. If you wish to try it out, you can customize cider-enrich-classpath to t.
    • Also remember: for it to work, on Linux, you'll also have to do something like sudo apt install openjdk-11-source (depending on your package manager and JDK of choice).
  • #3145: Allow fallback to other xref backends if cider-nrepl is not loaded.
  • #3148: Fix eval result overlays at point inheriting the faces of following text.
  • #3133: Respect cider-injected-middleware-version.
  • #3163: cider-clojuredocs: prevent redundant prompt for a symbol.

CIDER 1.2 ("Nice")

22 Dec 14:24
Compare
Choose a tag to compare

New features

  • Integrate enrich-classpath by default for Leiningen projects.
    • This enables functionality related to Java sources, javadocs or parsing thereof.
    • This can slightly slow down jack-in for the first time for a given project; later on the related work will be cached.
    • The feature is experimental at this point and needs to be enabled with (setq cider-enrich-classpath t).
  • #2831: Add xref integration, configured with customizable variables cider-use-xref and cider-xref-fn-depth.
  • #3017: Annotate company completion kinds.
  • #3040: Support invoking cider-clojuredocs within the *clojuredocs* buffer.
  • Make it possible to specify the version of cider-nrepl to use with cider-jack-in. See cider-injected-middleware-version.
  • Make it possible to specify the version of nREPL to use with cider-jack-in. See cider-injected-nrepl-version.
  • Upgrade cider-nrepl, Orchard and clj-suitable for pulling their latest bugfixes.
  • Add support for babaska projects to cider-jack-in.
  • Introduce cider-jack-in-lein-middlewares defcustom.
  • #3093: Make see-alsos clickable in ClojureDocs buffers.
  • #3044: Dynamically upgrade nREPL connection. See cider-upgrade-nrepl-connection.

Bugs fixed

  • #3022: Handle empty stacktraces, pointing users to docs about the OmitStackTraceInFastThrow JVM optimization.
  • #3020: Fix session linking on Windows, e.g. when jumping into a library on the classpath.
  • #3031: Fix cider-eval-defun-up-to-point failing to match delimiters correctly in some cases, resulting in reader exceptions.
  • #3039: Allow starting the sideloader for the tooling session.
  • #3041: Sideloader: handle binary files, support multiple directories.
  • #3047: Fix info/lookup fallback: response has an extra level.
  • #2746: Handle gracefully Clojure versions with non-standard qualifiers (e.g. 1.11.0-master-SNAPSHOT).
  • #3069: Fix cursor color changing when it shouldn't in evil-mode.
  • #3071: Use xref instead of etags to push point to marker stack.
  • #3074: Recognize pwsh as a powershell executable.

CIDER 1.1 ("Plovdiv")

22 Apr 08:04
Compare
Choose a tag to compare

New features

  • #2930: Add new customization variable cider-test-default-include-selectors and cider-test-default-exclude-selectors for specifying default test selectors when running commands such as cider-test-run-ns-tests.
  • #2907: Add new customization variable cider-format-code-options to specify options used by cljfmt to format code when running commands cider-format-buffer, cider-format-region and cider-format-defun.
  • #3002: [Inspector] Make collection member truncation limits configurable.

Bugs fixed

  • #2871: Restore the dynamic code completion (the actual fixes are in clj-suitable and cider-nrepl).
  • #2993: Fix bug where calling cider-repl-set-ns for a cljs ns when cider-repl-require-ns-on-set is t would fail.
  • #2983: Update signal description in nrepl server sentinel as a workaround for Emacs bug #46284 affecting v27.1 on Windows.
  • #2941: Use main args in alias for clojure cli.
  • #2953: Don't font-lock function/macro vars as generic vars.
  • #2964: Fix issue with cider-company-enable-fuzzy-completion and Helm.
  • #2937: Green fringe produced for extra line in rich comment block.
  • #2996: Fix debugger incorrectly locating #_ ignored forms.
  • Fix a compatibility issue with Java 15 and fetching fresh ClojureDocs data. (fixed in cider-nrepl 0.25.6)
  • #3004: Use appropriate coding system when unzipping jars.
  • #2934: Enable eldoc-mode in existing clojure buffers.

Changes

  • Removed cider-clojure-cli-parameters due to clojure-cli jack-in changes.
  • Changed the behaviour of cider-last-sexp so it returns only the sexp, excluding all whitespace and/or the first newline after.

CIDER 1.0 ("Sofia")

28 Dec 08:48
Compare
Choose a tag to compare

2020 brought us a lot of pain and misery. Time to turn things around!

New features

  • #2909: Add new customization variable cider-inspector-auto-select-buffer to control the auto selection of the inspector buffer.
  • #2940: Add a new customization variable cider-shadow-watched-builds to allow watching several shadow-cljs builds at the same time.

Bugs fixed

  • Fix broken links to the docs in REPL warnings (the REPL links included the full CIDER version, but the docs URLs are without the patch version).
  • #2916: Fix ordering of dependencies, global-opts and params for Clojure CLI projects when calling cider-jack-in.
  • #2929: Fix handling of reader tags or metadata when calling cider-eval-last-sexp-and-replace.

Changes

  • Bump the injected nREPL version to 0.8.3.
  • Bump the injected cider-nrepl version to 0.25.5.
  • Bump the injected Piggieback version to 0.5.2. See this issue for details.
  • #2897: Translate paths from CIDER to nREPL and vice-versa.
  • Set cider-prompt-for-symbol to nil by default.

CIDER 0.26.1

17 Oct 09:18
Compare
Choose a tag to compare

Bugs fixed

  • #2886: Don't check for node's presence before starting a browser REPL.
  • #2889: Fix a typo in cider-info-form.

Changes

  • Bump the injected piggieback version to 0.5.1.

CIDER 0.26 (Nesebar)

03 Aug 08:32
Compare
Choose a tag to compare

New features

  • Add first class support for Babashka (no more warnings when you connect to babashka.nrepl).
  • Add support for nREPL 0.8's lookup op.
  • Add support for nREPL 0.7's sideloading functionality (experimental).
  • Add support for nREPL 0.8's ls-middleware op.
  • #2861: Add support for the Krell REPL.
  • #2881: Add command to evaluate list around point (cider-eval-list-at-point).

Changes

  • #2527: Enable auto-clear of REPL buffer by setting a limit to the max buffer size.
  • #2852: Convert 1-based column numbers in response map to Emacs' 0-based system.
  • Differentiate between more types in cider-eldoc. They used to be just var and fn and now we have additional handling for
    macros, special forms and methods.
  • No longer fetches ClojureDocs data on first run (it's now bundled with cider-nrepl).
  • No longer updates the ClojureDocs data automatically on startup (it has to be updated explicitly using M-x cider-clojuredocs-refresh-cache).
  • Use nREPL 0.8 by default (when doing cider-jack-in).

Bugs fixed

  • Handle properly missing file metadata in cider-doc buffers, when you eval fallback to obtain var metadata.
  • Show eldoc for . and ...
  • #2860: Don't send blank strings in eldoc requests.
  • #2718: When calling cider-pprint-eval-last-sexp-to-comment, avoid printing empty comment if eval throws error.
  • #2796: Closing CIDER connection will disable the debug minor mode on clojure buffers.

CIDER 0.25 (Bergamo)

04 Jun 09:15
Compare
Choose a tag to compare

My (Bozhidar's) work on this release was sponsored by Clojurists Together. They deserve a very special thanks for their continued support of CIDER and its Orchard!

New features

  • #2482: Improvements to CIDER Inspector.
    • New defcustom cider-inspector-skip-uninteresting to control whether to skip over nils, numbers and keywords when navigating between values in the inspector buffer.
    • New defcustom cider-auto-inspect-after-eval to control whether a visible inspector buffer is updated with the last evaluated result.
  • #2833: Save command history for jack-in with universal arg.
  • #2828: Bind "L" to toggle display of locals during a debug session.
  • #2800: Add support for force-out debugger command.
  • Add support for nREPL 0.8 completions op. It's used if cider-nrepl is not available.
  • Add browser to the list of supported ClojureScript REPL types.
  • Add an interactive command to toggle Clojure font-locking in the REPL (cider-repl-toggle-clojure-font-lock).
  • Add a defcustom controlling nREPL's print buffer size (cider-print-buffer-size). It's set to 4K by default, nREPL own default is 1k.

Changes

  • #2826: Add support for symbols with quotes and resolving of ns-aliased keywords in cider-symbol-at-point.
  • #2617: Add menu bar entry for Insert last sexp in REPL.
  • Removed support for the Nashorn ClojureScript REPL. (it was removed upstream in ClojureScript)
  • #2825: Disable support for displaying images in the REPL. (set cider-repl-use-content-types to re-enable it)
  • #2850: Ensure you're in the middle of a window after commands like cider-find-var.

Bugs fixed

  • #2839: Fix symbol-at-point on var-quoted symbols.
  • #2807: Fix require-repl-utils for shadow-cljs repls.
  • #1971, #2628: Don't try to font-lock multi-chunk results in the REPL.
  • #2816: Update eldoc to work with Emacs 28.1.

CIDER 0.24 (India)

15 Feb 08:43
Compare
Choose a tag to compare

New features

  • #2744: Add startup commands to repl banner.
  • #2499: Add cider-jump-to-pop-to-buffer-actions.
  • #2738: Add ability to lookup a function symbol when cursor is at the opening paren.
  • #2735: New debugger command P to inspect an arbitrary expression, it was previously bound to p which now inspects the current value.
  • #2729: New cider inspector command cider-inspector-def-current-val lets you define a var with the current inspector value.

Changes

  • #2781: Extend cider-doc-xref-regexp to recognize [[var]] syntax and fully qualified symbols as xref links in cider-doc buffers.
  • #2731: Make the in-buffer debugging menu customizable via cider-debug-prompt-commands.

Bugs fixed

  • #2787: Fix nrepl process naming collision when using nrepl-hide-special-buffers.
  • #2739: Start built-in shadow-cljs build profiles correctly (node-repl, browser-repl).
  • #2730: Require repl utilities into current namespace not just user ns.
  • #2614: Fix error highlighting in source buffers for Clojure 1.10.
  • #2733: Restore compatibility with Emacs 25.3.