- #850: Add clj-reload functionality by implementing new
cider.clj-reload/reload
,cider.clj-reload/reload-all
,cider.clj-reload/reload-clear
ops.- These are drop-in replacements for
refresh
,refresh-all
,refresh-clear
.
- These are drop-in replacements for
- Bump
orchard
to 0.23.0. - Bump
logjam
to 0.3.0. - #851:
middleware.info
: offer newvar-meta-allowlist
option.
- #846:
middleware.debug
: useresolve
with&env
to fix debugging in case of a local shadows a var.
- Bump
orchard
to 0.22.0. - Bump
logjam
to 0.2.0. - Bump
suitable
to 0.6.2. - Bump
compliment
to 0.5.1. - #842: Initial cache warmup: ensure that no classes' static initializers are run.
- Forcibly exit the JVM on older (unsupported) Clojure versions.
- This can help users and maintainers alike diagnose issues more quickly, avoiding problematic code paths in our middleware, and clients like cider.el.
- Add
inspect-tap-indexed
op.
middleware.inspect:
warm up Orchard info for a value's class implemented interfaces in advance.- Can speed up navigation.
- #828: Warmup Orchard caches for compile-time exceptions in advance.
- This is similar to a change introduced in 0.43.0, but for compile-time exceptions this time.
- Bump
suitable
to 0.6.1.
- Make
"inspect-refresh"
op work again.
- cider#3565: Add new
inspect-last-exception
op. - Inspector: include
:doc-fragments
for all responses which:value
is a Class, Field or Method.
- #830: Warmup Orchard caches for Java imported classes in advance.
- Speculatively improves performance for the classes that users are more likely to use in a given project.
- #828: Warmup Orchard caches for exceptions in advance.
- This noticeably improves the first-time performance of exception-related ops, e.g.
analyze-last-stacktrace
.
- This noticeably improves the first-time performance of exception-related ops, e.g.
- Bump
orchard
to 0.19.0.
- Bump
suitable
to 0.5.1.
- Bump
orchard
to 0.18.0. - Warmup Orchard (
info
,complete
,eldoc
) caches in advance.- Restores the first-time performance that had been lost for a few releases.
middleware.inspect:
add newinspect-tap-current-value
op.middleware.inspect:
add newinspect-previous-sibling
,inspect-next-sibling
ops.
track-state
: include var info for macros defined for ClojureScript namespaces.- e.g. for
foo.cljs
, now var info for any macros contained infoo.clj
is also included.
- e.g. for
- Bump
compliment
to 0.4.4.
info
andeldoc
ops: fix regression for the special form..
.
- Bump
orchard
to 0.15.1.
info
andeldoc
ops: also return:doc-fragments
,:doc-first-sentence-fragments
,:doc-first-sentence-fragments
attributes when available.- These are explained in https://github.com/clojure-emacs/orchard/blob/v0.15.0/src-newer-jdks/orchard/java/parser_next.clj#L2-L20
- These typically are only available when running a modern JDK through enrich-classpath.
info
andeldoc
ops: accept a Compliment-stylecontext
parameter that helps infering the Java class of the object being queried.- Bump
orchard
to 1.5.0. - Bump
compliment
to 0.4.3.
middleware.track-state
: handle non-existing .jar files that may be in the classpath.
"ns-path"
op: also include a:url
attribute in the response.
- Bump
compliment
to 0.4.1.
- Bump
haystack
to 0.2.0.
- Bump
haystack
to 0.1.0.
- Make the
track-state
middleware invokeable directly, by requesting the new"cider/get-state"
op.- This makes it possible to access
:changed-namespaces
info on demand, which can be necessary for:- non-Piggieback based clojurescript repls
- re-computing the ns info responding to external (non-nREPL triggered) events.
- This makes it possible to access
- #796:
fn-refs
andfn-deps
middleware: add new:file-url
field.- these are absolute and prefixed by
file:
orfile:jar:
, whenever possible.
- these are absolute and prefixed by
fn-refs
andfn-deps
middleware: sort the results by file, line and column.- Bump
orchard
to 1.4.2.
- Bump
orchard
to 1.4.0.
- #777
middleware.track-state
: now an inferred:style/indent
metadata value is included, when adequate.
- Bump
suitable
to 0.5.0.
- CIDER #3385:
track-state
: Includecljs.core
ns info.
- #773 Add middleware to capture, debug, inspect and view log events emitted by Java logging frameworks.
- #755
middleware.test
: now timing information is returned at var and ns level under the:ms
/:humanized
keys. middleware.test
: only include:diff
data when the expected/actual mismatch is deemed diffable.- i.e., maps, sets and sequences are diffable, scalar values are not.
- #709
middleware.test
: offer fail-fast functionality.
- Bump
orchard
to 0.13.0. - Bump
compliment
to 0.4.0. - The
track-state
middleware now returns accurate metadata for cljs requests.
- Bump
cljfmt
to 0.9.2. - Bump
puget
to 1.3.4. - Bump
compliment
to 0.3.16. - #769: Introduce new
#break!
and#dbg!
reader macros for breaking on exception - #772: Improve debugger heuristics on "interesting" breakpoints (Always break on forms tagged with #break, including vectors and maps)
- The
wrap-debug
middleware now adds an optional:caught-msg
key to theeval
op response, containing the exception message when caught by the debugger.
- #766: Complete local bindings for ClojureScript files.
- #758: Add nREPL op to parse stacktraces into data (
analyze-stacktrace
), renamestacktrace
op toanalyze-last-stacktrace
and deprecatestacktrace
.
- Bump
puget
to 1.3.3.
- Bump
orchard
to 0.11.0 (this adds support for Spec 2).
- Bump
orchard
to version 0.10.0. - Bump
compliment
to version 0.3.14. - Bump
fipp
to 0.6.26. - Bump
cljfmt
to 0.9.0.
- Bump
compliment
to version 0.3.13.
- #751: Skip unmapping of default imports in
undef-all
op.
- Use
tools.namespace
1.3.0.
- Upgrade Orchard to version 0.9.2.
Upgrade tools.trace
.
- Upgrade Orchard to version 0.9.1.
- #548: Make the content-type middleware extensible via multimethod.
- Upgrade Orchard to version 0.9.
- #721:
middleware.macroexpand
: support a corner case for tools.deps. - #735:
middleware.test.extensions
: make:actual
reporting clearer. - #737: Fix a regression in
middleware.out
that could result in duplicate output. - Update
orchard
to 0.8, which addresses a bunch of dynapath-related classloader issues. Navigation to Java sources should work more reliably now.
- #733:
middleware.out
: remove reflection. - #719:
middleware.test
: gracefully handle exceptions thrown within fixtures. - #722:
middleware.format
: print otherwise non-serializable objects as strings. - #708: Upgrade Compliment, improving how autocompletion works in Windows.
- #713: Fix a regression in test results formatting.
- #716: Fix StackOverflowErrors related to
*out*
handling.
- Upgrade
suitable
andorchard
, bringing in related bugfixes.
- #698: Add
undef-all
op to undefine all symbols and aliases in namespace. - Introduce
cider.nrepl.middleware.test/*test-error-handler*
var which you can override with arbitrary functions.
- Make
middleware.stacktrace
detect a given project's common ns prefix even in face of single-segment namespaces such asuser
.
- Parallelize
cider.nrepl.middleware.stacktrace/analyze-stacktrace
. - #705: Use the session classloader when loading deferred middleware.
- #694: [Inspector] Configure truncation limits.
- Update
clj-suitable
to version 0.4 and re-enable enhanced completions forshadow-cljs
.
- #695: Fix debugger quit for http handler functions.
- Enable
suitable
's enhanced completions for anything butshadow-cljs
.
- cider#2979: Convert non-integer numbers to strings.
- Another fix for the dynamic classpath modification (in Orchard 0.6.5).
- Make dynamic classpath modification robust to compiler loader binding (fixed in Orchard 0.6.4).
- #687: Make sure that the Orchard JDK sources cache is visible in nREPL (the actual fix is in Orchard 0.6.3).
- Fetch ClojureDocs data from updated location (fixed in Orchard 0.6.2).
- Fix compatibility with Java 15 (fixed in Orchard 0.6.2).
- Address reflection warnings in
compliment
andorchard
.
- #667: Filter non file urls from classpath response.
- #679: Update to use bundled ClojureDocs documents.
- Remove workaround for converting column numbers to 0-based indexing. (Cider issue)
- Bump Orchard to 0.5.10, as the 0.5.9 was a bad build. (Orchard issue)
- #670: Extend
undef
op to work on fully qualified symbols.
- #666: Add a
nil
:query
check in apropos'svar-query-map
. - #669: Fix NPE and add
isDirectory
check in slurp middleware. - #672: Fix debug instrumentation for a dot special form case.
- Rename the
symbol
param in theundef
middleware tosym
. (the old name is retained for backwards compatibility) - Rename the
symbol
param in thecomplete
middleware toprefix
. (the old name is retained for backwards compatibility) - Rename the
symbol
param in all theinfo
middleware ops tosym
. (the old name is retained for backwards compatibility)
- #663: Fix non-recognized
recur
insidecase
in the debugger. - #664: Fix continue-all in conditional break.
- #665: Fix form location in map literals.
- #641: Integrate the new suitable ClojureScript completion.
- #613: Change the
:inspect
command to work on the current expression. Add a new command:inspect-prompt
to inspect an arbitrary value. - #654: Change the format of debugger command messages to a set of command names, leaving key mappings up to client implementations.
- #653: Add
inspect-def-current-value
to inspect middleware.
- #661: Fix
info
op not to return nil as a value of key.
- Dynamic cljs completions (via suitable) are only enabled when adding
enhanced-cljs-completion
to cljs message like:
{:op "complete"
:ns "..."
:prefix "..."
:enhanced-cljs-completion? t}
- #652: Respect
*print-length*
and*print-level*
in the debugger. - Respect nREPL print options in the debugger.
- Fix lockups and exceptions caused by clojuredocs cache download/corruption (fixed in Orchard 0.5.2).
- Bump the
orchard
dep to 0.5.1 to address missing specs for var metadata. - Bump the
suitable
dep to address a NPE.
- #643: Fix ClojureScript completion when using a
node
REPL.
- #642: This fixes calls to suitable when the completion context contains no
__prefix__
.
- #605: Added a option for filtering vars to the ns-vars middleware.
- Added
xref
middleware providingfn-deps
andfn-refs
ops. - #628: Added
clojuredocs
middleware providingclojuredocs-lookup
andclojuredocs-refresh-cache
ops. - #633 Added runtime code completion for ClojureScript via suitable.
- Fix some functions defined with
def
not being properly font locked when using dynamic font locking for ClojureScript. - #618: Fix apropos to honor exclude-regexps to filter out namespaces by regex
- #605: Fix
ns-vars-with-meta
to return public vars.
- (Breaking) Removed the
cider.nrepl.main
namespace. The functionality in it has been superseded bynrepl.cmdline
. - #615: (Breaking) Removed the
cider.tasks/nrepl-server
custom task.
- Add a wrapper function for
zprint
, suitable for using withnrepl.middleware.print
.
- The
refresh
op is now interruptible.
- (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.0.
- Add print functions compatible with nREPL 0.5 to
cider.nrepl.pprint
namespace.
- (Breaking) Drop support for nREPL 0.2.x (aka
tools.nrepl
). Now nREPL 0.4+ is required. - (Breaking) Drop support for Piggieback 0.2.x (aka
cemerick.piggieback
). Now Piggieback 0.3+ is required. - Deprecated
cider.nrepl.middleware.pprint
if favour of the built-in pprint support in nREPL 0.5.
- #546: Added support for matcher-combinators to the test middleware.
- #556: Added configuration option for cljfmt to the format middleware.
- #558: Added the
ns-aliases
op to the ns middleware.
- #550: Always return test documentation messages as strings.
- #563: Add :root-ex key to error summary that contains the classname of the root cause.
- #573: Fix inspector silently doing nothing if eval errored
- #540: Added support for nREPL 0.4.
- #532: Added a boot task to start the nREPL server (allows us to run nREPL 0.4 before boot upgrades to it).
- Drop "official" support for Java 7 and Clojure 1.7 (although they might still work for a while).
- Extract the
info
related functionality toorchard
.
- #535: Check for cemerick/piggieback, before checking for cider/piggieback.
- #542: Qualify references to
*out*
and*err*
inwrap-out
.
- Extracted part of the nREPL-agnostic functionality to
orchard
. - Added a profiling middleware.
- Support for orchard var-query in apropos.
- Support for orchard var-query in test, introducing new test-var-query.
- Remove support for cljx.
- Remove support for piggieback 0.1.x.
- Add support for piggieback 0.3 or newer (aka
cider/piggieback
). - Deprecate the
test
andtest-all
ops. - Deprecated non-test-var filters in the
apropos
middleware.