always-return-ns-form
option to clean-ns
messagesuggest-libspecs
op: support collections for :only
values.resolve-missing
no longer returns the wrong typeresolve-missing
no longer returns non- import
able classes.resolve-missing
now flags with :already-interned true
the candidates that are already interned into the calling namespace.
+
is already interned, so is Thread
:refer
s and :rename
srename-file-or-dir
op is now also able to rename .cljs files that depended on .clj files via :require-macros #394.ns-tracker
no longer ignores cljs files with string requires #394.
ns-tracker
is normally used for clj files only.suggest-libspecs
.suggest-libspecs
:unused-namespace
integration. Now namespace local configuration is also taken into account.
:libspec-whitelist
can be augmented for particular namespace by:
:unused-namespace
linter configuration under :config-in-ns
key in clj-kondo's config file. Like so: :config-in-ns {example.target.ns {:linters {:unused-namespace {:exclude [ns.to.exclude]}}}}
:unused-namespace
linter configuration under :clj-kondo/config
key in metadata or attribute map of namespace. Like so: (ns example.target.ns {:clj-kondo/config '{:linters {:unused-namespace {:exclude [ns.to.exclude]}}}})
suggest-aliases
that are valid symbols.
cljr-slash
.prune-dependencies
: increase accuracy for :cljs
.refactor-nrepl.artifacts
: increase resiliency.:as-alias
handling for .cljc files.:as-alias
detection.:as-alias
namespace directive.namespace-aliases
error handling default.refactor-nrepl.ns.libspecs/namespace-aliases-for
function.
namespace-aliases
, but accepts files rather than dirs as an argument, which can be more flexible for programmatic use.namespace-aliases
op.
rename-file-or-dir
: rename more kinds of constructs in dependent namespaces: namespace-qualified maps, fully-qualified functions, metadata.require
forms if they are needed for a given import
to work.read-ns-form
: report more informatively when a non-existing file is being processed.clean-namespace
.:unused-namespace
config, if present
refactor-nrepl.ns.libspec-allowlist/with-memoized-libspec-allowlist
prior to invoking clean-ns
.tools.analyzer.jvm
.fs
library.resolve-missing
able to find even more classes than before.print-right-margin
/print-miser-width
configuration options, used during pprint
ing of ns forms.
nil
for disabling line wrapping.cljr-slash
performance.:ignore-errors
option will be honored in more places, making refactor-nrepl more robust in face of files not particularly meant to be part of the AST corpus.
rename-file-or-dir
.require
prior to find-ns
clojure.data.json
.require
, and ruling out certain namespaces like refactor-nrepl itself)namespace-aliases
performance and make it return more accurate results.future-cancel
calls, improving overall responsiveness and stability.resolve-missing
against various edge cases.:as
or :refer
on their own lines in the ns form, when the libspec is so long it causes the line to wrap.clean-ns
should conform to the style guide: (:require
in the ns form should be followed by a newline.
:insert-newline-after-require
configuration option.clojure.tools.namespace.repl/refresh-dirs
, files outside said refresh-dirs
won't be analyzed, resulting in safer, more efficient analysis.clean-ns
support namespaces with js literal (#js).clean-ns
support extra message key relative-path
, which will be used if path
does not exist.Error
instead of swallowing them.resolve-missing
still works, even if a candidate class has missing dependencies.resolve-missing
, prevent classpaths with many entries from causing a stack overflow.clean-ns
removes imported inner inner classes.clean-ns
ignores namespaced keywords.resolve-missing
find newly defined vars and types (clj). Because of a stale cache, newly added vars or types would not be found. This fix takes into account vars/types added by eval-ing code (rescan affected namespace), and by hotloading dependencies (reset the cache).clean-ns
is used.$
as a symbol. Specially this enables clean ns to work with incanter that does have function named $
.:libspec-whitelist
which makes it possible to create a seq of namespaces clean-ns
shouldn't prune. This is useful for libspecs which aren't used except through side-effecting loads.:ignore-paths
for ignoring certain paths when finding dirs on classpath.find-used-publics
which list occurrences of symbols defined in namespace A in namespace B.merge-with into
to generate a list of candidates instead.:rename
clauses in clean ns.clean-ns
.clean-ns
.rename-file-or-dir
now knows how to move cljs files.artifact-version
list is now sorted.namespace-aliases
which provides a mapping of the namespace aliases that are in use in the project.find-symbol
able to handle macros.find-symbol
failes in projects with cljc
files.:require-macros
dependencies not tracked across platforms, also see TNS-38No implementation of method
type errors.resolve-missing
now returns a map instead of an alist.clean-ns
, prune-ns-form
, to avoid pruning the ns-form.find-symbol
reply. It's now a map instead of a vector.find-debug-fns
. None of us ever used this and there's some
overlap with find-usages
.find-unbound
to find-used-locals
. This is what this op has been doing for the last several versions.configure
op, and receive settings in each message.rename-file-or-dir
which returns a file or a directory of clj files.extract-definition
which returns enough information to the clien to afford inlining of defs defns and let-bound vars.stubs-for-interface
for creating skeleton interface implementationswarm-ast-cache
op for eagerly building, and caching, ASTs of project filesclean-ns
to not do any prefix rewritingconfigure
op to set various config opts.hotload-dependency
which loads a new project dependency into the replresolve-missing
which resolves a missing symbol by scanning the classpathclean-ns
which performs various cleanups on the ns form.Can you improve this documentation? These fine people already did:
vemv, Lars Andersen, Benedek Fazekas, Bozhidar Batsov, Arne Brasseur, dotemacs, Julio Rincon, Phil Brown, Frozenlock, Toby Crawley, Moritz Heidkamp, Ryan Fowler, Yann Vanhalewyn, Daniel Leong, Vineet Naik, Vadim Rodionov, Anders Engström, Александар Симић & Paul DumaisEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close