Releases: clojure-emacs/cider
Releases · clojure-emacs/cider
CIDER 1.7 ("Côte d'Azur")
New features
- #3314: Detect
nrepl+unix
sockets (say vialein nrepl :headless :socket nrepl.sock
). - #3262: Add navigation functionality to
n/p/f/b
keys inside the data inspector's buffer. - #3310: Add ability to use custom coordinates in
cider-jack-in-dependencies
. - cider-nrepl#766: Complete local bindings for ClojureScript files.
- #3179: Introduce
cider-jack-in-universal
to support jacking-in without a project from a set of pre-configured Clojure project tools.
Changes
- Allow using
npx nbb
ascider-nbb-command
. - #3281: Replace newline chars with actual newlines in
*cider-test-report*
buffer, for prettier error messages. - Bump the injected
cider-nrepl
to 0.30. - #3219: Disable by default forcing the display of output when the REPL prompt is at the first line of the of the REPL window. This behavior is desirable, but very slow and rarely needed. It can be re-enabled by setting
cider-repl-display-output-before-window-boundaries
tot
.
CIDER 1.6 ("Buenos Aires")
New features
- #3278: Introduce integration tests, which also fix a long standing issue with orphaned process on MS-Windows by contracting
taskkill
, if available, to properly kill the nREPL server process tree. - #3061: Add support for nbb.
- #3249: Add support for Clojure Spec 2.
- #3247: Add the
cider-stacktrace-analyze-at-point
andcider-stacktrace-analyze-in-region
commands to view printed exceptions in the stacktrace inspector.
Changes
- Bump the injected nREPL version to 1.0.
- #3061: Allow to use
cider-connect-clj
for self-hosted cljs repls (e.g.nbb
). - #3291: Remove the
'cljs-pending
repl-type
. It is replaced bycider-repl-cljs-upgrade-pending
. - #3261: If user is connecting to nREPL from a TRAMP buffer, use its connection parameters (port, username) for establishing SSH tunnel.
Bugs fixed
- Remove needless quotes from the choices of
cider-jack-in-auto-inject-clojure
. - #2561: Disable undo in
*cider-test-report*
buffers. - #3251: Disable undo in
*cider-stacktrace*
buffers. - Consecutive overlays will not be spuriously deleted.
- #3260: Scroll REPL buffer in other frame.
- #3293: Can't jack in to more than one bb projects.
CIDER 1.5 ("Strasbourg")
CIDER 1.5 is dedicated once again to the brave people of Ukraine, who celebrate their Independence Day today, and to their European future. Слава Україні!
New features
- #3226: Populate completions metadata, making it possible to change the style of completion via
completion-category-override
orcompletion-category-defaults
. - #2946: Add custom var
cider-merge-sessions
to allow combining sessions in two different ways: Settingcider-merge-sessions
to'host
will merge all sessions associated with the same host within a project. Setting it to'project
will combine all sessions of a project irrespective of their host. - Support Gradle jack-in via the Gradle wrapper (
gradlew
), instead of just a globally installedgradle
on thePATH
. - Gradle projects can now inject dependencies and middleware as with other build tools (dependency injection requires Clojurephant 0.7.0 or higher).
- #3239: Added commands to evaluate and tap last sexp (
cider-tap-last-sexp
) and sexp at point (cider-tap-sexp-at-point
).
Changes
- Upgrade clojure-mode to 5.15.1.
- Upgrade injected
cider-nrepl
to 0.28.5. - #3200: Improve cider-browse-ns interface to allow selective hiding of var types as well as grouping options. Include private vars in result list.
- Changed default
cider-gradle-command
to./gradlew
to use the Gradle wrapper. - Changed default
cider-gradle-global-options
to""
(empty, formerly--no-daemon
). - #3234: Autocomplete multiple available ports on nREPL connect.
Bugs fixed
- #3235: Check
name
is a TRAMP file incider--client-tramp-filename
viatramp-tramp-file-p
.
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.