Releases: clojure-emacs/cider
Releases · clojure-emacs/cider
CIDER 1.4.1
CIDER 1.4 ("Kyiv")
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
, andcider-eval-ns-form
can be called withC-u
prefix to executeundef-all
before reloading the ns.
- Add new command
- #3185: Add feature to
cider-eval-in-context
for automatically extracting parent let bindings when called withC-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.
- Add new customization variable
Changes
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
fromcompletion-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")
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 tonil
. - #3149: Add option
'change
tocider-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 incider-clojure-cli-aliases
. Also addresses a duplicate:
in the generatedclj
command. cider-jack-in-lein-plugins
no longer affects non-Leiningen projects.- Third-party packages should rely on
cider-jack-in-dependencies
instead.
- Third-party packages should rely on
- 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
tot
. - 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).
- Remember: at the moment the enrich-classpath is disabled by default. If you wish to try it out, you can customize
- #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")
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 variablescider-use-xref
andcider-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 withcider-jack-in
. Seecider-injected-middleware-version
. - Make it possible to specify the version of nREPL to use with
cider-jack-in
. Seecider-injected-nrepl-version
. - Upgrade
cider-nrepl
,Orchard
andclj-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-also
s 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 ofetags
to push point to marker stack. - #3074: Recognize
pwsh
as apowershell
executable.
CIDER 1.1 ("Plovdiv")
New features
- #2930: Add new customization variable
cider-test-default-include-selectors
andcider-test-default-exclude-selectors
for specifying default test selectors when running commands such ascider-test-run-ns-tests
. - #2907: Add new customization variable
cider-format-code-options
to specify options used bycljfmt
to format code when running commandscider-format-buffer
,cider-format-region
andcider-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
andcider-nrepl
). - #2993: Fix bug where calling
cider-repl-set-ns
for a cljs ns whencider-repl-require-ns-on-set
ist
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")
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
tonil
by default.
CIDER 0.26.1
CIDER 0.26 (Nesebar)
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 justvar
andfn
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)
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.
- New defcustom
- #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 ifcider-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
CIDER 0.24 (India)
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 top
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.