Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 40 million developers.Sign up
- New configuration variable
cider-result-overlay-positiondetermining where debugger and inline eval result overlays should be displayed. Current options are 'at-eol and 'at-point.
- #2606: Defcustom
cider-path-translationsfor translating paths from nREPL messages (useful where a file appears to be somewhere, but it's actually somewhere else).
- #2698: Infer figwheel builds automatically.
- New command
cider-selectorhas more robust handling for edge cases.
- #2572: Make it possible to a start a one off ClojureScript REPL without defining a new REPL type.
- Dynamic cljs completions (via suitable) can be disable by setting
- #2715: Fix the
- #2705: Middleware version check looks at only at the minor version for comparison (when the major version is 0) and ensures a matching major and a minor >= required otherwise.
- Fixed some bugs related to the new suitable-powered ClojureScript code completion (this was fixed by upgrading the
- Remove a misplaced error message when doing
- #2721: Handle properly symbols ending in
- #2656: Base64 encode clojure command and arguments on jack-in when
"powershell"to avoid escaping issues. If no
clojurecommand is found on Windows
- Allow editing of jack in command with prefix or when
- New defcustom
cider-repl-require-ns-on-set: Set it to make cider require the namespace before setting it, when calling
- #2611: Add
eval-based classpath lookup fallback. It's used when cider-nrepl is not present.
- #2611: Add
eval-based var info lookup fallback. It's used when cider-nrepl is not present.
- #1840: Add a command to find runtime function references (
- Add a command to find runtime function dependencies (
- Add a menu to the inspector.
- Add completion of shadow-cljs build names in the minibuffer when connecting or jacking in.
cider-use-tooltipsnow also controls whether
cider-print-optionsis now supported by the
cider-print-fn. The options will now be also used by interactive eval commands that do not use pretty-printing.
spec-formrequests send the current namespace for alias resolution.
C-c , C-gand
C-c C-t C-gcancel the key chord instead of rerunning the last test. The respective command has been moved to
C-c , C-a,
C-c , a,
C-c C-t C-aand
C-c C-t a.
- #2643: (Breaking) Stop using the
cider.tasks/nrepl-servercustom task for
cider-repl-require-repl-utilsnow loads cljs specific repl utils in cljs buffers.
cider-load-buffernow takes an optional
callbackthat will override the default
cider-load-file-handlernow takes an optional
done-handlerlambda that is run once load is complete.
- #2685: Send
exclude-regexpsin apropos under correct key
- Stop cursor moving when initialising the CIDER REPL, when
cider-repl-pop-to-buffer-on-connectis nil. This fixes a bug introduced by commit e0aca78b.
- #2577: Ensure user friendly error messages if a repl connection is expected but none was found in certain situations.
- #2593: The REPL's initial namespace is now set correctly if configured in another tool (e.g. Leiningen's
- #2607: Use markers for specifying insertion point for
cider-eval-*-to-commentcommands. This fixes a bug where editing the buffer during a pending evaluation resulted in comments appearing in unintended locations.
- #2308: Don't rely on the classpath in
cider-library-present-p. Now it does a
requireinstead to check if some library is present or not.
- #2541: Hook properly CIDER's code completion machinery.
- #2659: Handle
#shadow/envreader tags in
- #2676: Widen before
cider--file-string, to allow
cider-load-bufferto work on narrowed buffers.
- Don't disable
cider-modeuntil all CIDER sessions have been closed.
cider-ns-refresh-*commands are now interruptible by the
- Many commands now stream printed results back to the client incrementally – meaning it's now possible to, for example, interrupt evaluations while their result is being rendered.
- New option:
cider-repl-init-code. This is a list of strings containing Clojure code to evaluate when the REPL starts (with bindings for any
set!-able vars in place). Replaces
cider-print-level, which are now obsolete.
- New option:
cider-print-quota. This is a hard limit on the number of bytes that will be returned by any printing operation. This defaults to one megabyte and can be set to
nilif no limit is desired.
- (Breaking) Upgrade to nREPL 0.6.0. This is now the minimum required version.
- (Breaking) Upgrade to piggieback 0.4.0. This is now the minimum required version.
- (Breaking) Remove
cider.nrepl.middleware.pprint. All functionality has been replaced by the built-in printing support in nREPL 0.6.
cider-repl-scroll-on-outputis now obsolete, and the default REPL behaviour has changed to not recenter the window. The built-in variable
scroll-conservativelycan be set to 101 (either globally or locally in the REPL buffer) to restore the old behaviour. This change has a dramatic positive effect on REPL performance.
cider-pprint-optionsare now obsolete, replaced by
cider-repl-pretty-print-widthare now all obsolete, replaced by
- #2546: New defcustom
cider-ns-save-files-on-refresh-modesto control for which buffers
cider-ns-refreshshould save before refreshing.
- Fix values for
- Fix value and safe property for
cider-ns-save-files-on-refreshwill now save any modified buffers visiting files on the classpath, rather than just in the current project.
cider-expected-nsno longer requires an absolute path as its argument, and now internally handles paths canonically and consistently.
- Fixed a bug causing REPL output to be inserted after the prompt.
- Fixed a bug causing
cider-pprint-eval-defun-to-commentto not insert anything.
cider-find-varnow correctly uses a new window when passed a prefix of
-or a double prefix argument.
- Make it possible to pass an options map to the currently selected pprint function via
- Add support for zprint.
- Make it possible to eval and pprint in the scratch buffer using
- #2532: Add support for
CompilationExceptiondynamic source location discovery.
- #2496: Replace CIDER's pprint implementation with nREPL 0.5's built-in pprint support.
- #2558: Load clj, cljc, & cljs (if cljs repl available) files on
C-c C-M-l). Previously, this only loaded clj files.
- Enable pretty-printing in the REPL by default.
cider-find-varopens archive files inside AVFS folders if AVFS is detected.
- #2446: Implement Sesman friendly sessions to allow for on-the-fly association with sessions from dependency projects and jars.
- #2253: Split
continuedebug command into "continue till next breakpoint" (
c) and "continue non stop" (
- #2474: Fix incorrect detection of output and out-of-order printing.
- #2514: Don't auto-jump to warnings when
cider-auto-jump-to-erroris set to 'errors-only.
- #2453: Make it possible to debug deftype methods by direct insertion of #dbg and #break readers into the deftype methods.
- #1869,cider-nrepl#460: Fix
continuedebugger command which was stopping entering debugger on repeated invocations.
- #2444: Reuse dead REPL buffers on new connections.
- #2441: Make it possible to use
C-c C-xkeys without loading cider first (autoload
- #2440: Make
cider-check-cljs-repl-requirementstake effect again.
- #2439: Remove mentions of
cider-toggle-connection-bufferfrom the docs.
- #2435: Remove killed REPLs from sessions in client sentinel.
- Fix jack-in from inside of remote buffers.
- #2454: Fix erratic inspector behavior when multiple REPLs are connected
- #2467: Make generic CIDER ops use any available nREPL connection.
- #2105: Fix no comment syntax defined message when loading buffer after running a failing test.
- #2115: Reset the current buffer after
- #2482: Don't bind nREPL server started by
- #2484: Fix issues where some functionality in REPL buffers (like eldoc) was broken.
- #2484: REPL types are now symbols instead of strings.
- #1544: Add a new defcustom
cider-infer-remote-nrepl-portsto control whether we use tramp/ssh to infer remote ports. Now defaulting to
nil(previously it always tried to infer).
- #2375: Move
cider-eval-toplevel-inside-comment-forminto clojure-mode as
beginning-of-defunis aware of comment forms.
- Add new
cider-session-name-templatevariable for flexible customization of cider session and REPL buffer names.
- Add new
C-c C-x) for jack-in and connection commands.
- Add new
C-c M-n) for namespace related functionality.
- Allow evaling top level forms in a comment form rather than the entire comment form with
- Create keymap for inserting forms into the repl at
- Add new defcustom
cider-invert-insert-eval-p: Set to cause insert-to-repl commands to eval the forms by default when inserted.
- Add new defcustom
cider-switch-to-repl-after-insert-p: Set to prevent cursor from going to the repl when inserting a form in the repl with the insert-to-repl commands.
- Inject piggieback automatically on
- Introduce a new command named
C-c M-x) that acts as a simple wrapper around all commands for starting/connecting to REPLs.
- #2305: Make it possible to disable the REPL type auto-detection by customizing
- #2373: Make it possible to configure the welcome message displayed in scratch buffers via
- Add the ability to jump to the profiler buffer using
- #1980: Echo back missing namespace name on interactive eval (requires nREPL 0.4.3+).
- #2397: Add shadow-select CLJS REPL type.
- #2314: Add
- #2317: The stdin prompt can now be cancelled.
- #2328: Added
cider-format-edn-last-sexpwill format the last sexp.
- #2294: Fix setting default stacktrace filters.
- #2286: Fix eldoc issue with images in the REPL.
- #2307: Use a better error when a cljs repl form cannot be found.
- Fix the broken test selector functionality.
cider-use-tooltipscustom variable works as expected.
- #2424: Fallback to
leinas the default jack-in command when
clojureis not present.
- (Breaking) Move
cider-repl-set-ns, previously on
C-c M-n, on
C-c M-n (M-)nin the
- (Breaking) Move
cider-ns-refresh, previously on
C-c C-x, on
C-c M-n (M-)rin the
- (Breaking) Bump the minimum required Emacs version to 25.1.
- (Breaking) Drop support for Java 7 and Clojure(Script) 1.7.
- (Breaking) Use session name as part of CIDER buffers names (REPL, server, messages), and obsolete
cider-format-connection-paramsfor how to customize CIDER buffer names.
- Add support for printing to the current buffer to
cider-visit-error-bufferin favour of using
cider-ns-refresh(and all the related defcustoms).
- (Breaking) Rewrote connection management (see http://docs.cider.mx/en/latest/managing_connections/ for details).
cider-jack-in-clojurescriptnow creates only a ClojureScript REPL (use
cider-jack-in-clj&cljsto create both REPLs).
- #2357: Support both keywords and strings as test selectors (previously it was only strings).
- #2378: Add autoloads target to Makefile.
C-c C-v (C-)f (C-)ein the
C-c C-v (C-)f (C-)din the
- Accept bare figwheel-main build names (e.g.,
dev). Previously, a keyword (e.g.,
:dev) was required.
- Stop releasing CIDER and cider-nrepl together. cider-nrepl now has its own release cycle and CIDER introduces
cider-required-middleware-versionto track it.
cider-replcan now display recognized images in the REPL buffer.
- #2172: Render diffs for expected / actual test results.
- #2167: Add new defcustom
cider-jdk-src-paths. Configure it to connect stack trace links to Java source code.
- #2161: Add new interactive command
cider-eval-defun-to-pointwhich is bound to
C-c C-v (C-)z. It evaluates the current top-level form up to the point.
- #2113: Add new interactive commands
C-c C-v (C-)c) and
C-c C-v (C-)b).
- Add new interactive command
- #1976: Add new interactive command
- Add a menu for
- #2160: Make it possible to configure the default
*print-length*via defcustoms (
- New interactive command
cider-cheatsheetallows you to browse the Clojure Cheatsheet with an Emacs interface.
- #2191: Add support for jacking-in just with the
clojurecommand-line tool and
- Make it possible to start a Nashorn ClojureScript REPL.
- #2235: Make the REPL ignore blank input rather than evaluating.
- #2241: Make
cider-test-ediffdiff eval'ed values.
- Add support for shadow-cljs to
- #2244: Display the REPL type in the modeline.
- #2238: Allow specifying predicates for entries in
- Add support for test selectors. If test all or all loaded is called with a prefix ask for filter test selectors in the minibuffer and only run those tests in the project which match the filters. Add variation of test namespace which asks for filter selectors the same way and only runs a subset of the namespace tests.
- Add a configuration variable allowing to control whether server output should be redirected to the REPL (
- #1913: Fix
cider-toggle-buffer-connectionto allow cycling of connection and restoring all connections in cljc buffers.
- #2148: Fix
jump to definitionworking properly when remote
- Font-lock failed assertions even in tests that were evaluated interactively.
- #2102: Make
cider-format-bufferhandle mismatched parens gracefully.
- #2163: Add
cider-browse-spec-regex, and changed
cider-browse-spec-allto use it.
- #2029: Make cider-doc use cider-browse-spec functionality to print the spec part of the doc buffer
- #2151: Improve formatting of spec in
- Remove support for CLJX.
- #2171: Update
See Alsomappings for Clojure 1.9.
- #2202: Make
cider-jack-in-clojurescriptprompt from the ClojureScript REPL type to use.
- #2202: Don't try to start a ClojureScript REPL before checking whether that's possible or not.
- orchard#24: Inspector now separately renders clickable keys and values when inspecting maps.
- orchard#24: Inspector now remembers the current page of each level of nesting when navigating big and nested collection.
- Require piggieback 0.3 or newer.
- Drops support for Rhino in favour of the modern Nashorn.
- #2082, cider-nrepl#440: Add specialized stacktraces for clojure.spec assertions.
- #2111: Add
- Add a REPL shortcut for
cider-repl-require-repl-utils(this makes it easy to require common functions like
source, etc. in REPL buffers).
- #2112: Add a new interactive command
- #2144: Create a Docker image to mimic the Travis CI environment.
cider-switch-to-last-clojure-bufferswitches to most recent relevant Clojure(Script) buffer instead of the last "remembered" buffer.
- cider-nrepl#438: Improve startup time by deferring loading CIDER's middleware until the first usage.
- #2078: Improve startup time by bundling together sync requests during startup.
cider-rotate-default-connectionwill warn if you use it with only a single active connection.
cider-format-buffertries to preserve the point position.
- #2084: Select correct REPL type (clj or cljs) in
cider-switch-to-repl-bufferconditional on the current buffer.
- #2088: Fix functions defined with
defbeing font-locked as vars instead of functions.
- #1651, cider-nrepl#445: Fix
nilon boot projects.
- #2120: Fix Travis CI build errors for Emacs versions >25.2.
- #2117: Ensure
cider-repl-result-prefixis only inserted before the first result chunk.
- #2123: Process properly the Java version in Java 9.
- #2083: New utility function
- #2083: New utility function
- #2083: New
cider-repl-preoutput-hookthat allows custom output processing.
- #2083: Highlight clojure.spec keywords in REPL (
*cider-scratch*buffers are no longer automatically killed on connection quit.
- #2083: Jump to other window when clicking on location references in REPL.
- #2083: Improve project namespace highlighting in REPLs.
- #2083: Find locations in more cases when clicking on references in REPL.
- #2004, #2039, cider-nrepl#420: Fix namespace issues in instrumentation and debugging commands.
- Project-Only stacktrace filter: hide all other tags when viewing project-only stacktrace.
- Fix interactive evaluation in cljc buffers with only one connection.
- #2058: Don't cache ns-forms in buffers with no such forms.
- #2057: Use
cider--font-lock-ensurefor compatibility with Emacs 24.5.
- cider-nrepl#436: Ensure that
*print-right-margin*is not ignored by cider-nrepl middleware.
- cider-nrepl#435: Allow debugging of forms with
#?(:cljs ... :clj ..)conditionals.
- cider-nrepl#432: Ensure
- #2050 Use
- Make stacktraces and other location references in REPL clickable.
- Highlight root namespace in REPL stacktraces.
- Filter stacktrace to just frames from your project.
- #1918: Add new commands
cider-browse-spec-allwhich start a spec browser.
- #2015: Show symbols as special forms and macros in
- #2012: Support special forms in
- #2007: Fontify code blocks from
- Add support for notifications from the NREPL server.
- #1990: Add new customation variable
cider-save-files-on-cider-refreshto allow auto-saving buffers when
- Add new function
cider-load-all-files, along with menu bar update.
- Add new customization variable
- Add an option
cider-inspector-fill-frameto control whether the cider inspector window fills its frame.
- #1893: Add negative prefix argument to
cider-refreshto inhibit invoking of cider-refresh-functions
- #1776: Add new customization variable
cider-test-defining-formsallowing new test defining forms to be recognized.
- #1860: Add
cider-repl-historyto browse the REPL input history and insert elements from it into the REPL buffer.
- Add new customization variable
cider-font-lock-reader-conditionalswhich toggles syntax highlighting of reader conditional expressions based on the buffer connection.
- Add new face
cider-reader-conditional-facewhich is used to mark unused reader conditional expressions.
- #1544: Add a new defcustom
nrepl-use-ssh-fallback-for-remote-hoststo control the behavior of
nrepl-connect(and in turn that of
cider-connect) for remote hosts.
- #1910: Add custom company-mode completion style to show fuzzy completions from Compliment.
cider-*-global-optionsfor customizing options that are not related to tasks.
- #1731: Change code in order to use the new
- #1943: Add interactive function to flush Compliment caches.
- #1726: Order keys in printed nrepl message objects.
- #1832: Add new customization variable
cider-eldoc-display-context-dependent-infoto control showing eldoc info for datomic query input parameters.
- Make it possible to disable auto-evaluation of changed ns forms via the defcustom
- #1991: Make it possible to disable the prompt to open a ClojureScript in a browser on connect via
- #1995: Add new customization variable
cider-doc-auto-select-bufferto control cider-doc popup buffer auto selection.
- Ensure that
cider-current-connectionpicks the most recently used connection in ambiguous cases.
- Ensure that
cider-switch-to-repl-bufferpicks the most recent repl buffer if multiple connections are available.
- Add new function
- Handle ANSI REPL evaluation created by Puget.
- Drop support for Emacs 24.3.
- Don't try to use ssh automatically when connecting to remote hosts and a direct connection fails. See
- #1945: Start nREPL servers bound to
::by default using
cider-save-file-on-loadand adjust its supported values accordingly (the default now is
'always-saveis now simply
- #2014: Unify the format for
- #2027: Mark many custom variables relating to
- #2023: Make popup-buffer sexp indentation optional.
- #2040: Fix fontification of conditional expressions in cljc files.
- #2018: Don't delete wrong overlays during code evaluation.
- #1699: Fix "Method code too large!" error that occurred during instrumentation for debugging.
- #1987: Fix: Update faces when disabling a theme
- #1962: Fix performance in fringe overlay placement.
- #1947: Fix error on
- #1588: Redirect
java.lang.System/errto REPL buffer on all attached sessions.
- #1707: Allow to customize line truncating in CIDER's special buffers.
- #1876: Set pretty-printing width with
cider-repl-pretty-print-width. If this variable is not set, fall back to
- #1875: Ensure that loading and evaluation in cljc buffers is performed in both clj and cljs repls.
- #1897: Bind TAB in stacktrace buffers in the terminal.
- #1895: Connect to the same host:port after
cider-restartif the connection was established with
- #1881: Add
cider-cljs-gradle-repldefcustom and hook
- #1997: Fix a nil error when loading a code buffer and the error buffer is visible.
- #390: Workaround for orphaned java process on windows machine after quitting the REPL.