circleci / bond

spying for tests
127 stars 28 forks source link

Update cljkondo/clj-kondo Docker tag to v2024 #73

Closed renovate[bot] closed 2 months ago

renovate[bot] commented 2 months ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
cljkondo/clj-kondo docker major 2021.02.13 -> 2024.05.24

Release Notes

clj-kondo/clj-kondo (cljkondo/clj-kondo) ### [`v2024.05.24`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20240524) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2024.05.22...v2024.05.24) - Imports were copied to `.clj-kondo/imports` but weren't pick up correctly. Thanks [@​frenchy64](https://togithub.com/frenchy64) for reporting the bug. - [#​2333](https://togithub.com/clj-kondo/clj-kondo/issues/2333): Add location to invalid literal syntax errors ### [`v2024.05.22`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20240522) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2024.03.13...v2024.05.22) - [#​2323](https://togithub.com/clj-kondo/clj-kondo/issues/2323): New linter `:redundant-str-call` which detects unnecessary `str` calls. Off by default. - [#​2302](https://togithub.com/clj-kondo/clj-kondo/issues/2302): New linter: `:equals-expected-position` to enforce expected value to be in first (or last) position. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md) - [#​1035](https://togithub.com/clj-kondo/clj-kondo/issues/1035): Support SARIF output with `--config {:output {:format :sarif}}` - [#​2307](https://togithub.com/clj-kondo/clj-kondo/issues/2307): import configs to intermediate dir - [#​2309](https://togithub.com/clj-kondo/clj-kondo/issues/2309): Report unused `for` expression - [#​2315](https://togithub.com/clj-kondo/clj-kondo/issues/2315): Fix regression with unused JavaScript namespace - [#​2304](https://togithub.com/clj-kondo/clj-kondo/issues/2304): Report unused value in `defn` body - [#​2227](https://togithub.com/clj-kondo/clj-kondo/issues/2227): Allow `:flds` to be used in keys destructuring for ClojureDart - [#​2316](https://togithub.com/clj-kondo/clj-kondo/issues/2316): Handle ignore hint on protocol method - [#​2322](https://togithub.com/clj-kondo/clj-kondo/issues/2322): Add location to warning about invalid unicode character - [#​2319](https://togithub.com/clj-kondo/clj-kondo/issues/2319): Support `:discouraged-var` on global JS values, like `js/fetch` ### [`v2024.03.13`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20240313) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2024.03.05...v2024.03.13) - Fix memory usage regression introduced in 2024.03.05 - [#​2299](https://togithub.com/clj-kondo/clj-kondo/issues/2299): Add documentation for `:java-static-field-call`. ### [`v2024.03.05`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20240305) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2024.02.12...v2024.03.05) - [#​1732](https://togithub.com/clj-kondo/clj-kondo/issues/1732): new linter: `:shadowed-fn-param` which warns on using the same parameter name twice, as in `(fn [x x])` - [#​2276](https://togithub.com/clj-kondo/clj-kondo/issues/2276): New Clojure 1.12 array notation (`String*`) may occur outside of metadata - [#​2278](https://togithub.com/clj-kondo/clj-kondo/issues/2278): `bigint` in CLJS is a known symbol in `extend-type` - [#​2288](https://togithub.com/clj-kondo/clj-kondo/issues/2288): fix static method analysis and suppressing `:java-static-field-call` locally - [#​2293](https://togithub.com/clj-kondo/clj-kondo/issues/2293): fix false positive static field call for `(Thread/interrupted)` - [#​2296](https://togithub.com/clj-kondo/clj-kondo/issues/2296): publish multi-arch Docker images (including linux aarch64) - [#​2295](https://togithub.com/clj-kondo/clj-kondo/issues/2295): lint case test symbols in list ### [`v2024.02.12`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20240212) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.12.15...v2024.02.12) - [#​2274](https://togithub.com/clj-kondo/clj-kondo/issues/2274): Support clojure 1.12 new type hint notations - [#​2260](https://togithub.com/clj-kondo/clj-kondo/issues/2260): New linter `:java-static-field-call`: calling static *field* as function should warn, e.g. `(System/err)` - [#​1917](https://togithub.com/clj-kondo/clj-kondo/issues/1917): detect string being called as function - [#​1923](https://togithub.com/clj-kondo/clj-kondo/issues/1923): Lint invalid fn name - [#​2256](https://togithub.com/clj-kondo/clj-kondo/issues/2256): enable `assert` in hooks - [#​2253](https://togithub.com/clj-kondo/clj-kondo/issues/2253): add support for `datomic-type-extensions` to datalog syntax checking - [#​2255](https://togithub.com/clj-kondo/clj-kondo/issues/2255): support `:exclude-files` in combination with linting from stdin + provided `--filename` argument - [#​2246](https://togithub.com/clj-kondo/clj-kondo/issues/2246): preserve metadata on symbol when going through `:macroexpand` hook - [#​2254](https://togithub.com/clj-kondo/clj-kondo/issues/2254): lint files in absence of config dir - [#​2251](https://togithub.com/clj-kondo/clj-kondo/issues/2251): support suppressing `:unused-value` using `:config-in-call` - [#​2266](https://togithub.com/clj-kondo/clj-kondo/issues/2266): suppress `:not-a-function` linter in reader tag - [#​2259](https://togithub.com/clj-kondo/clj-kondo/issues/2259): `ns-map` unmaps var defined prior in namespace - [#​2272](https://togithub.com/clj-kondo/clj-kondo/issues/2272): Report var usage in `if`/`when` condition as always truthy, e.g. `(when #'some-var 1)` ### [`v2023.12.15`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20231215) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.10.20...v2023.12.15) - [#​1990](https://togithub.com/clj-kondo/clj-kondo/issues/1990): Specify `:min-clj-kondo-version` in config.edn and warn when current version is too low ([@​snasphysicist](https://togithub.com/snasphysicist)) - [#​1753](https://togithub.com/clj-kondo/clj-kondo/issues/1753): New linter `:underscore-in-namespace` ([@​cosineblast](https://togithub.com/cosineblast)) - [#​2207](https://togithub.com/clj-kondo/clj-kondo/issues/2207): New `:condition-always-true` linter, see [docs](doc/linters.md) - [#​2235](https://togithub.com/clj-kondo/clj-kondo/issues/2235): New `:multiple-async-in-deftest` linter: warn on multiple async blocks in `cljs.test/deftest`, since only the first will run. - [#​2013](https://togithub.com/clj-kondo/clj-kondo/issues/2013): Fix NPE and similar errors when linting an import with an illegal token ([@​cosineblast](https://togithub.com/cosineblast)) - [#​2215](https://togithub.com/clj-kondo/clj-kondo/issues/2215): Passthrough hook should not affect linting - [#​2232](https://togithub.com/clj-kondo/clj-kondo/issues/2232): Bump analysis for clojure 1.12 (partitionv, etc) - [#​2223](https://togithub.com/clj-kondo/clj-kondo/issues/2223): Do not consider classes created with `deftype` a var that is referred with `:refer :all` - [#​2236](https://togithub.com/clj-kondo/clj-kondo/issues/2236): `:line-length` warnings cannot be `:clj-kondo/ignore`d - [#​2224](https://togithub.com/clj-kondo/clj-kondo/issues/2224): Give `#'foo/foo` and `(var foo/foo)` the same treatment with respect to private calls - [#​2239](https://togithub.com/clj-kondo/clj-kondo/issues/2239): Fix printing of unresolved var when going through `:macroexpand` hook ### [`v2023.10.20`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20231020) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.09.07...v2023.10.20) - [#​1804](https://togithub.com/clj-kondo/clj-kondo/issues/1804): new linter `:self-requiring-namespace` - [#​2065](https://togithub.com/clj-kondo/clj-kondo/issues/2065): new linter `:equals-false`, counterpart of `:equals-true` ([@​svdo](https://togithub.com/svdo)) - [#​2199](https://togithub.com/clj-kondo/clj-kondo/issues/2199): add `:syntax` check for var names starting or ending with dot (reserved by Clojure) - [#​2179](https://togithub.com/clj-kondo/clj-kondo/issues/2179): consider alias-as-object usage in CLJS for :unused-alias linter - [#​2183](https://togithub.com/clj-kondo/clj-kondo/issues/2183): respect `:level` in `:discouraged-var` config - [#​2184](https://togithub.com/clj-kondo/clj-kondo/issues/2184): Add missing documentation for `:single-logical-operand` linter ([@​wtfleming](https://togithub.com/wtfleming)) - [#​2187](https://togithub.com/clj-kondo/clj-kondo/issues/2187): Fix type annotation of argument of `clojure.core/parse-uuid` from `nilable/string` to string ([@​dbunin](https://togithub.com/dbunin)) - [#​2192](https://togithub.com/clj-kondo/clj-kondo/issues/2192): Support `:end-row` and `:end-col` in `:pattern` output format ([@​joshgelbard](https://togithub.com/joshgelbard)) - [#​2182](https://togithub.com/clj-kondo/clj-kondo/issues/2182): Namespace local configuration does not silence `:missing-else-branch` - [#​2186](https://togithub.com/clj-kondo/clj-kondo/issues/2186): Improve warning when `--copy-configs` is enabled but no config dir exists - [#​2190](https://togithub.com/clj-kondo/clj-kondo/issues/2190): false positive with `:unused-alias` and namespaced map - [#​2200](https://togithub.com/clj-kondo/clj-kondo/issues/2200): include optional `:callstack` in analysis ### [`v2023.09.07`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230907) - [#​1332](https://togithub.com/clj-kondo/clj-kondo/issues/1332): New linter `:unused-alias`. See [docs](doc/linters.md). - [#​2143](https://togithub.com/clj-kondo/clj-kondo/issues/2143): false positive type warning for `clojure.set/project` - [#​2145](https://togithub.com/clj-kondo/clj-kondo/issues/2145): support ignore hint on multi-arity branch of function definition - [#​2147](https://togithub.com/clj-kondo/clj-kondo/issues/2147): use alternative solution as workaround for [https://github.com/cognitect/transit-clj/issues/43](https://togithub.com/cognitect/transit-clj/issues/43) - [#​2152](https://togithub.com/clj-kondo/clj-kondo/issues/2152): Fix false positive with used-underscored-binding with core.match - [#​2150](https://togithub.com/clj-kondo/clj-kondo/issues/2150): allow command line options = as in --fail-level=error - [#​2149](https://togithub.com/clj-kondo/clj-kondo/issues/2149): `:lint-as clojure.core/defmacro` should suppress `&env` as unresolved symbol - [#​2161](https://togithub.com/clj-kondo/clj-kondo/issues/2161): Fix type annotation for `clojure.core/zero?` to number -> boolean - [#​2165](https://togithub.com/clj-kondo/clj-kondo/issues/2165): Fix error when serializing type data to cache - [#​2167](https://togithub.com/clj-kondo/clj-kondo/issues/2167): Don't crash when `:unresolved-symbol` linter config contains unqualified symbol - [#​2170](https://togithub.com/clj-kondo/clj-kondo/issues/2170): `:keyword-binding` linter should ignore auto-resolved keywords - [#​2172](https://togithub.com/clj-kondo/clj-kondo/issues/2172): detect invalid amount of args and invalid argument type for `throw` - [#​2164](https://togithub.com/clj-kondo/clj-kondo/issues/2164): deftest inside let triggers :unused-value - [#​2154](https://togithub.com/clj-kondo/clj-kondo/issues/2154): add `:exclude` option to `:deprecated-namespace` linter - [#​2134](https://togithub.com/clj-kondo/clj-kondo/issues/2134): don't warn on usage of private var in `data_readers.clj(c)` - [#​2148](https://togithub.com/clj-kondo/clj-kondo/issues/2148): warn on configuration error in `:unused-refeferred-var` linter - Expose more vars in `clj-kondo.hooks-api` interpreter namespace ### [`v2023.07.13`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230713) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.05.26...v2023.07.13) - [#​2111](https://togithub.com/clj-kondo/clj-kondo/issues/2111): warn on symbol in case test using new opt-in linter `:case-symbol-test` - Rename `:quoted-case-test-constant` to `:case-quoted-test` - Rename `:duplicate-case-test-constant` to `:case-duplicate-test` - [#​1230](https://togithub.com/clj-kondo/clj-kondo/issues/1199): new linter, `:unsorted imports` - [#​1125](https://togithub.com/clj-kondo/clj-kondo/issues/1125): new `:deprecated-namespace` linter - [#​2097](https://togithub.com/clj-kondo/clj-kondo/issues/2097): analyze and act on `defprotocol` metadata ([@​lread](https://togithub.com/lread)) - [#​2105](https://togithub.com/clj-kondo/clj-kondo/issues/2105): Consider `.cljd` files when linting ([@​ericdallo](https://togithub.com/ericdallo)) - [#​2101](https://togithub.com/clj-kondo/clj-kondo/issues/2101): false positive with `if-some` + `recur` - [#​2109](https://togithub.com/clj-kondo/clj-kondo/issues/2109): `java.util.List` type hint corresponds to `:list` or nil - [#​2096](https://togithub.com/clj-kondo/clj-kondo/issues/2096): apply `:arglists` metadata to `:arglist-strs` for analysis data ([@​lread](https://togithub.com/lread)) - [#​256](https://togithub.com/clj-kondo/clj-kondo/issues/256): warn on reader conditional usage in non-cljc files - [#​2115](https://togithub.com/clj-kondo/clj-kondo/issues/2115): false positive `:redundant-fn-wrapper` in CLJS when passing keyword to JS - [#​1082](https://togithub.com/clj-kondo/clj-kondo/issues/1082): protocol methods do not support varargs - [#​2125](https://togithub.com/clj-kondo/clj-kondo/issues/2125): Setting `clj-kondo.hooks-api/*reload*` to true does not lint with the latest hook changes. - [#​2135](https://togithub.com/clj-kondo/clj-kondo/issues/2135): private vars starting with `_` should not be reported as unused - [#​1199](https://togithub.com/clj-kondo/clj-kondo/issues/1199): warn about reader conditional features that are not keywords, e.g. `#?(:clj 1 2)` (2 is not a keyword) - [#​2132](https://togithub.com/clj-kondo/clj-kondo/issues/2132): false negative unused value in clojure.test - [#​1294](https://togithub.com/clj-kondo/clj-kondo/issues/1294): redefined var comment edge case ### [`v2023.05.26`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230526) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.05.18...v2023.05.26) - [#​2083](https://togithub.com/clj-kondo/clj-kondo/issues/2083): fix regression with `:missing-test-assertion` introduced in 2023.05.18 - [#​2084](https://togithub.com/clj-kondo/clj-kondo/issues/2084): add `:refers` to `:refer-all` finding - [#​2086](https://togithub.com/clj-kondo/clj-kondo/issues/2086): false positive missing test assertion with `swap!` - [#​2087](https://togithub.com/clj-kondo/clj-kondo/issues/2087): honor :config-in-comment for :unused-referred-var ### [`v2023.05.18`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230518) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.04.14...v2023.05.18) - Linter `:uninitialized-var` moved from default `:level :off` to `:warning` - [#​2065](https://togithub.com/clj-kondo/clj-kondo/issues/2065): new linter `:equals-true`: suggest using `(true? x)` over `(= true x)` (defaults to `:level :off`). - [#​2066](https://togithub.com/clj-kondo/clj-kondo/issues/2066): new linters `:plus-one` and `:minus-one`: suggest using `(inc x)` over `(+ x 1)` (and similarly for `dec` and `-`, defaults to `:level :off`) - [#​2051](https://togithub.com/clj-kondo/clj-kondo/issues/2051): consider `:unresolved-namespace :exclude` as already required namespaces - [#​2056](https://togithub.com/clj-kondo/clj-kondo/issues/2056): validate collection nodes when constructing and `--debug` is true - [#​2058](https://togithub.com/clj-kondo/clj-kondo/issues/2058): warn about `#()` and `#""` in `.edn` files - [#​2064](https://togithub.com/clj-kondo/clj-kondo/issues/2064): False positive when using `:sha` instead of `:git/sha` in combination with git url in `deps.edn` - [#​2063](https://togithub.com/clj-kondo/clj-kondo/issues/2063): introduce new `:defined-by->lint-as` key which contains the `:lint-as` value for "defining" var, whereas `:defined-as` now always contains the name of the original "defining var". This is a **BREAKING** change. - [#​1983](https://togithub.com/clj-kondo/clj-kondo/issues/1983): produce java-member-definition analysis for `.java` files. - [#​2068](https://togithub.com/clj-kondo/clj-kondo/issues/2068): include `:or` default in `:local-usages analysis` - [#​2079](https://togithub.com/clj-kondo/clj-kondo/issues/2079): analysis for `data_readers.clj` - [#​2067](https://togithub.com/clj-kondo/clj-kondo/issues/2067): support `:ns-groups` to be used with `:analyze-call` and `:macroexpand` hooks - [#​1918](https://togithub.com/clj-kondo/clj-kondo/issues/1918): ignore keyword bindings with namespaced in `:keyword-binding` linter - [#​2073](https://togithub.com/clj-kondo/clj-kondo/issues/2073): `:lint-as clj-kondo.lint-as/def-catch-all` should ignore unresolved namespaces - [#​2078](https://togithub.com/clj-kondo/clj-kondo/issues/2078): detect more `:missing-test-assertion` cases, e.g. `(deftest foo (not (= 1 2)))` ### [`v2023.04.14`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230414) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.03.17...v2023.04.14) - [#​1196](https://togithub.com/clj-kondo/clj-kondo/issues/1196): show language context in `.cljc` files with `:output {:langs true}`. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#show-language-context-in-cljc-files). - [#​2026](https://togithub.com/clj-kondo/clj-kondo/issues/2026): coercing string did not create StringNode, but TokenNode, lead to false positive `Too many arguments to def` - [#​2030](https://togithub.com/clj-kondo/clj-kondo/issues/2030): Add a new `:discouraged-tag` linter for discouraged tag literals. See the [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#discouraged-tag). - Add `:gen` support on `clojure.spec.alpha/keys` - [#​1647](https://togithub.com/clj-kondo/clj-kondo/issues/1647): support `:exclude-patterns` in `:unresolved-symbol` linter - [#​2036](https://togithub.com/clj-kondo/clj-kondo/pull/2036): False positive `:def-fn` on `def` + `reify` - [#​2024](https://togithub.com/clj-kondo/clj-kondo/issues/2024): CLJS allows interop in constructor position - [#​2025](https://togithub.com/clj-kondo/clj-kondo/issues/2025): support namespace groups with `:unresolved-namespace` linter - [#​2039](https://togithub.com/clj-kondo/clj-kondo/issues/2039): :analysis `:symbols` + `:aliased-namespace-symbol` linter gives false positive in quoted symbol - [#​2043](https://togithub.com/clj-kondo/clj-kondo/issues/2043): support ignore annotation on private calls - Support `:exclude-pattern` in `:unused-binding` - [#​2046](https://togithub.com/clj-kondo/clj-kondo/issues/2046): clj-kondo stuck in loop with multiple :or in destructuring - [#​2048](https://togithub.com/clj-kondo/clj-kondo/issues/2048): better linting in `schema.core/defn` with invalid s-exprs ### [`v2023.03.17`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230317) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.02.17...v2023.03.17) - [#​2010](https://togithub.com/clj-kondo/clj-kondo/issues/2010): Support inline macro configuration. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#inline-macro-configuration) - [#​2010](https://togithub.com/clj-kondo/clj-kondo/issues/2010): Short syntax to disable linters: `{:ignore [:unresolved-symbol]}` or `{:ignore true}`, valid in ns-metadata, `:config-in-ns`, `:config-in-call` - [#​2009](https://togithub.com/clj-kondo/clj-kondo/issues/2009): new `:var-same-name-except-case` linter: warn when vars have names that differ only in case (important for AOT compilation and case-insensitive filesystems) ([@​emlyn](https://togithub.com/emlyn)). - [#​1269](https://togithub.com/clj-kondo/clj-kondo/issues/1269): warn on `:jvm-opts` in top level of `deps.edn` - [#​2003](https://togithub.com/clj-kondo/clj-kondo/issues/2003): detect invalid arity call for function passed to `update`, `update-in`, `swap!`, `swap-vals!`, `send`, `send-off`, and `send-via` ([@​jakemcc](https://togithub.com/jakemcc)). - [#​1983](https://togithub.com/clj-kondo/clj-kondo/issues/1983): add support for java member analysis, via new `java-member-definitions` bucket ([@​ericdallo](https://togithub.com/ericdallo)). - [#​1999](https://togithub.com/clj-kondo/clj-kondo/issues/1999): add `hooks-api/set-node` and `hooks-api/set-node?` ([@​sritchie](https://togithub.com/sritchie)). - [#​1997](https://togithub.com/clj-kondo/clj-kondo/issues/1997): False positive on `clojure.core/aget` with more than two args - [#​2011](https://togithub.com/clj-kondo/clj-kondo/issues/2011): push images to GHCR ([@​lispyclouds](https://togithub.com/lispyclouds)) - [#​2001](https://togithub.com/clj-kondo/clj-kondo/issues/2001): false positive `:misplaced-docstring` in `clojure.test/deftest` ### [`v2023.02.17`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230217) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.01.20...v2023.02.17) - [#​1976](https://togithub.com/clj-kondo/clj-kondo/issues/1976): warn about using multiple bindings after varargs (`&`) symbol in fn syntax - Add arity checks for core `def` - [#​1954](https://togithub.com/clj-kondo/clj-kondo/issues/1954): new `:uninitialized-var` linter. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#uninitialized-var). - [#​1996](https://togithub.com/clj-kondo/clj-kondo/issues/1996): expose `hooks-api/resolve`. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/hooks.md#api). - [#​1971](https://togithub.com/clj-kondo/clj-kondo/issues/1971): false positive `:redundant-fn-wrapper` with syntax-quoted body - [#​1984](https://togithub.com/clj-kondo/clj-kondo/issues/1984): lint java constructor calls as unresolved-symbol when using dot notation. - [#​1970](https://togithub.com/clj-kondo/clj-kondo/issues/1970): `:dynamic-var-not-earmuffed` should be opt-in - [#​1972](https://togithub.com/clj-kondo/clj-kondo/issues/1972): type hint aliases should not result in unresolved symbol - [#​1951](https://togithub.com/clj-kondo/clj-kondo/issues/1951): include end locations in `:line-length` linter - [#​1987](https://togithub.com/clj-kondo/clj-kondo/issues/1987): Fix escaping of regex literal string in `:macroexpand` - [#​1980](https://togithub.com/clj-kondo/clj-kondo/issues/1980): make support for ignoring warnings in generated hooks explicit - [#​1979](https://togithub.com/clj-kondo/clj-kondo/issues/1979): allow `:level :off` in `:discouraged-var` config on var level - [#​1995](https://togithub.com/clj-kondo/clj-kondo/issues/1995): `clj-kondo.lint-as/def-catch-all` doesn't emit locations, fixes navigation for lsp - [#​1978](https://togithub.com/clj-kondo/clj-kondo/issues/1978): false positive type error with symbol argument + varargs - [#​1989](https://togithub.com/clj-kondo/clj-kondo/issues/1989): don't analyze location metadata coming from `:macroexpand hook` (performance optimization) ### [`v2023.01.20`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230120) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.01.16...v2023.01.20) - [#​1956](https://togithub.com/clj-kondo/clj-kondo/issues/1956): enable printing to `*err*` in hooks - [#​1943](https://togithub.com/clj-kondo/clj-kondo/issues/1943): allow `:discouraged-namespace` to be suppressed with `#_:clj-kondo/ignore` - [#​1942](https://togithub.com/clj-kondo/clj-kondo/issues/1942): prioritize specific namespace over ns-groups for `:discouraged-namespace` linter - [#​1959](https://togithub.com/clj-kondo/clj-kondo/issues/1959): analyze custom `defn` properly - [#​1961](https://togithub.com/clj-kondo/clj-kondo/issues/1961): be lenient with unexpected type - [#​1945](https://togithub.com/clj-kondo/clj-kondo/issues/1945): support merging of multiple ns-group configs - [#​1962](https://togithub.com/clj-kondo/clj-kondo/issues/1962): don't emit warning for aliased namespace var usage in syntax-quote - [#​1952](https://togithub.com/clj-kondo/clj-kondo/issues/1952): add `:exclude-urls` and `:exclude-pattern` ### [`v2023.01.16`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230116) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2023.01.12...v2023.01.16) - [#​1920](https://togithub.com/clj-kondo/clj-kondo/issues/1920): new linter `:def-fn`: warn when using `fn` inside `def`, or `fn` inside `let` inside `def` ([@​andreyorst](https://togithub.com/andreyorst)). - [#​1949](https://togithub.com/clj-kondo/clj-kondo/issues/1949): `:aliased-namespace-var-usage` gives erroneous output for keywords - Add test for [#​1944](https://togithub.com/clj-kondo/clj-kondo/issues/1944) (already worked) - Don't reload SCI namespace on every hook usage ### [`v2023.01.12`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20230112) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.12.10...v2023.01.12) - [#​1742](https://togithub.com/clj-kondo/clj-kondo/issues/1742): new linter `:aliased-namespace-var-usage`: warn on var usage from namespaces that were used with `:as-alias`. See [demo](https://twitter.com/borkdude/status/1613524896625340417/photo/1). - [#​1914](https://togithub.com/clj-kondo/clj-kondo/issues/1914): Don't warn about single arg use when there's a second arg in a reader conditional ([@​mk](https://togithub.com/mk)) - [#​1912](https://togithub.com/clj-kondo/clj-kondo/issues/1912): Allow forward references in `comment` forms ([@​mk](https://togithub.com/mk)). See [demo](https://twitter.com/borkdude/status/1603028023565062145). - [#​1926](https://togithub.com/clj-kondo/clj-kondo/issues/1926): Add keyword analysis for edn files. - [#​1922](https://togithub.com/clj-kondo/clj-kondo/issues/1922): don't crash on invalid type specification - [#​1902](https://togithub.com/clj-kondo/clj-kondo/issues/1902): provide `:symbols` analysis for navigation to symbols in quoted forms or EDN files. See [demo](https://twitter.com/borkdude/status/1612773780589355008). - [#​1939](https://togithub.com/clj-kondo/clj-kondo/issues/1939): no longer warn on unused namespace that was only used with `:as-alias` - [#​1911](https://togithub.com/clj-kondo/clj-kondo/issues/1911): missing test assertion linter doesn't work in CLJS - [#​1891](https://togithub.com/clj-kondo/clj-kondo/issues/1891): support `CLJ_KONDO_EXTRA_CONFIG_DIR` environment variable to enable extra linters after project config ### [`v2022.12.10`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20221210) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.12.08...v2022.12.10) - [#​1909](https://togithub.com/clj-kondo/clj-kondo/issues/1909): lower requirement on `glibc` in dynamic linux binary to 2.31 by using fixed version of CircleCI image ### [`v2022.12.08`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20221208) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.11.02...v2022.12.08) - [#​609](https://togithub.com/clj-kondo/clj-kondo/issues/609): typecheck var usage, e.g. `(def x :foo) (inc x)` will now give a warning - [#​1867](https://togithub.com/clj-kondo/clj-kondo/issues/1867): add name metadata to class usage - [#​1875](https://togithub.com/clj-kondo/clj-kondo/issues/1875): add `:duplicate-field-name` linter for deftype and defrecord definitions. - [#​1883](https://togithub.com/clj-kondo/clj-kondo/issues/1883): constructor usage should have name-col in analysis - [#​1874](https://togithub.com/clj-kondo/clj-kondo/issues/1874): fix name of fully qualified class usage - [#​1876](https://togithub.com/clj-kondo/clj-kondo/issues/1876): suppress . analysis from .. macroexpansion - [#​1877](https://togithub.com/clj-kondo/clj-kondo/issues/1877): suppress `new` analysis from `(String. x)` expansion - [#​1888](https://togithub.com/clj-kondo/clj-kondo/issues/1888): use `namespace-munge` for resolving hook files rather than `munge` - [#​1896](https://togithub.com/clj-kondo/clj-kondo/issues/1896): don't consider `**`, `***` etc. to be a dynamic vars - [#​1899](https://togithub.com/clj-kondo/clj-kondo/issues/1899): treat var or local reference as unused value when not in tail position - [#​1903](https://togithub.com/clj-kondo/clj-kondo/issues/1903): int can be cast to double - [#​1871](https://togithub.com/clj-kondo/clj-kondo/issues/1871): clj-kondo marks args in `definterface` as unused - [#​1879](https://togithub.com/clj-kondo/clj-kondo/issues/1879): analyze `definterface` more similarly to `defprotocol` for lsp-navigation - [#​1907](https://togithub.com/clj-kondo/clj-kondo/issues/1907): add `hooks-api/generated-node?` function to check if a node was generated - [#​1887](https://togithub.com/clj-kondo/clj-kondo/issues/1887), use `re-find` for ns groups rather than re-matches ### [`v2022.11.02`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20221102) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.10.14...v2022.11.02) - [#​1846](https://togithub.com/clj-kondo/clj-kondo/issues/1846): new linters: `:earmuffed-var-not-dynamic` and `:dynamic-var-not-earmuffed`. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#dynamic-vars). - [#​1842](https://togithub.com/clj-kondo/clj-kondo/issues/1842): Add `:exclude` option to `:used-underscored-binding` ([@​staifa](https://togithub.com/staifa)) - [#​1840](https://togithub.com/clj-kondo/clj-kondo/issues/1840): Fix warning in `.cljs` and `.cljc` for `:aliased-namespace-symbol` in interop calls. ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1845](https://togithub.com/clj-kondo/clj-kondo/issues/1845): add `:derived-location` to analysis when location is derived from parent node - [#​1853](https://togithub.com/clj-kondo/clj-kondo/issues/1853): fix `:level :off` not being respected in `:discouraged-var` configs that are merged in. - [#​1855](https://togithub.com/clj-kondo/clj-kondo/issues/1855): accept symbol in addition to keyword in `clojure.spec.alpha/def` name position - [#​1844](https://togithub.com/clj-kondo/clj-kondo/issues/1844): support extra schema in `schema.core/defrecord` - [#​1720](https://togithub.com/clj-kondo/clj-kondo/issues/1720): prevent parse error on defmulti without args - [#​1863](https://togithub.com/clj-kondo/clj-kondo/issues/1863): Added `clj-kondo-docker` pre-commit hook. ### [`v2022.10.14`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20221014) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.10.05...v2022.10.14) - [#​1831](https://togithub.com/clj-kondo/clj-kondo/issues/1831): Add `:redundant-fn-wrapper` support for keyword and binding calls ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1830](https://togithub.com/clj-kondo/clj-kondo/issues/1830): Fix warning on `:include-macros` in `.cljs` and `.cljc` for `:unknown-require-option` linter. ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1238](https://togithub.com/clj-kondo/clj-kondo/issues/1238): Build a linux/aarch64 executable in CI ([cap10morgan](https://togithub.com/cap10morgan)) - Add `:exclude` option to `:unknown-require-option` - Enable `:unused-value` by default - Publish `.sha256` files along with released artifacts ### [`v2022.10.05`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20221005) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.09.08...v2022.10.05) - [#​611](https://togithub.com/clj-kondo/clj-kondo/issues/611): New linter: `:unused-value` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#unused-value). Also see issue [#​1258](https://togithub.com/clj-kondo/clj-kondo/issues/1258). - [#​1794](https://togithub.com/clj-kondo/clj-kondo/issues/1794): New linter: `:line-length` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#line-length) ([@​ourkwest](https://togithub.com/ourkwest)) - [#​1460](https://togithub.com/clj-kondo/clj-kondo/issues/1460): New linter: `:unknown-require-option` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#unknown-require-option). ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1800](https://togithub.com/clj-kondo/clj-kondo/issues/1800): New linter: `:aliased-namespace-symbol` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#aliased-namespace-symbol). ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1758](https://togithub.com/clj-kondo/clj-kondo/issues/1758): Overrides don't get applied to var-definitions during analysis ([@​sheluchin](https://togithub.com/sheluchin)) - [#​1807](https://togithub.com/clj-kondo/clj-kondo/issues/1807): False positive with map transducer in cljs - [#​1806](https://togithub.com/clj-kondo/clj-kondo/issues/1806): False positive recur mismatch with letfn - [#​1810](https://togithub.com/clj-kondo/clj-kondo/issues/1810): Fix printing error map as additional error ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1812](https://togithub.com/clj-kondo/clj-kondo/issues/1812): Inconsistent handling of location metadata sometimes produces `nil` values ([@​sheluchin](https://togithub.com/sheluchin)) - [#​1805](https://togithub.com/clj-kondo/clj-kondo/issues/1805): Ignore hints not being considered on protocol vars - [#​1819](https://togithub.com/clj-kondo/clj-kondo/issues/1819): Fix "Too many open files" in java class definition analysis caused by files not being closed ([@​rsauex](https://togithub.com/rsauex)) - [#​1821](https://togithub.com/clj-kondo/clj-kondo/issues/1821): Include vectors in `:unused-binding` config `:exclude-destructured-as` flag. ([@​NoahTheDuke](https://togithub.com/NoahTheDuke)) - [#​1818](https://togithub.com/clj-kondo/clj-kondo/issues/1818): unresolved var when using interop on var in CLJS - [#​1817](https://togithub.com/clj-kondo/clj-kondo/issues/1817): improve warning with invalid require libspec ([@​benjamin-asdf](https://togithub.com/benjamin-asdf)) - [#​1801](https://togithub.com/clj-kondo/clj-kondo/issues/1801): Missing docstring fix for `deftype` in CLJS - Bump GraalVM to 22.2.0 for native-image - Bump SCI to 0.4.33 ### [`v2022.09.08`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220908) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.08.03...v2022.09.08) - `:config-in-call` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#config-in-call) - [#​1127](https://togithub.com/clj-kondo/clj-kondo/issues/1127): `:config-in-tag` - see [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#config-in-tag) - [#​1791](https://togithub.com/clj-kondo/clj-kondo/issues/1791): Fix issue with namespace-name-mismatch on namespaces with + sign (and others) - [#​1782](https://togithub.com/clj-kondo/clj-kondo/issues/1782): Fix issue with jar URI missreporting to `file-analyzed-fn`, bump babashka/fs to 0.1.11 - [#​1780](https://togithub.com/clj-kondo/clj-kondo/issues/1780): Can not use NPM dependency namespaces beginning with "@​" in consistent-linter alias - [#​1771](https://togithub.com/clj-kondo/clj-kondo/issues/1771): don't crash on empty ns clauses: `(require '[])` and `(import '())` - [#​1774](https://togithub.com/clj-kondo/clj-kondo/issues/1774): Add support for sourcehut inferred git dep urls for the Clojure CLI - [#​1768](https://togithub.com/clj-kondo/clj-kondo/issues/1768): Expose a `tag` function in `clj-kondo.hooks-api` - [#​1790](https://togithub.com/clj-kondo/clj-kondo/issues/1790): Add support for `:filename-pattern` in `:ns-group` - [#​1773](https://togithub.com/clj-kondo/clj-kondo/issues/1773): false positive type mismatch warning with hook - [#​1779](https://togithub.com/clj-kondo/clj-kondo/issues/1779): lazy-seq should be coerced a list node - [#​1764](https://togithub.com/clj-kondo/clj-kondo/issues/1764): store overrides in cache and don't run them at runtime ### [`v2022.08.03`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220803) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.06.22...v2022.08.03) - [#​1755](https://togithub.com/clj-kondo/clj-kondo/issues/1755): Fix false positive invalid-arity when using mapcat transducer in sequence with multiple collections - [#​1749](https://togithub.com/clj-kondo/clj-kondo/issues/1749): expose `clojure.pprint/pprint` to the hooks API - [#​698](https://togithub.com/clj-kondo/clj-kondo/issues/698): output rule name with new output option `:show-rule-name-in-message true`. See example in [config guide](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#show-rule-name-in-message). - [#​1735](https://togithub.com/clj-kondo/clj-kondo/issues/1735) Add support for nilable map type specs - [#​1744](https://togithub.com/clj-kondo/clj-kondo/issues/1744) Expose `:imported-ns` in analysis of vars imported by potemkin - [#​1746](https://togithub.com/clj-kondo/clj-kondo/issues/1746) Printing deps.edn error to stdout - [#​1716](https://togithub.com/clj-kondo/clj-kondo/issues/1716) Include dispatch-val in analysis of defmethod - [#​1760](https://togithub.com/clj-kondo/clj-kondo/issues/1760) Add `:arglist-strs` support for functions defined with fn - [#​1731](https://togithub.com/clj-kondo/clj-kondo/issues/1731): prioritize special form in name resolving - [#​1739](https://togithub.com/clj-kondo/clj-kondo/issues/1739): Namespaced map type check fix - Fix [#​1737](https://togithub.com/clj-kondo/clj-kondo/issues/1737): config-in-ns for specific namespace + ns-group override - Fix [#​1741](https://togithub.com/clj-kondo/clj-kondo/issues/1741): Ignore redundant-call when single call is made in .cljc ### [`v2022.06.22`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220622) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.05.31...v2022.06.22) - [#​1721](https://togithub.com/clj-kondo/clj-kondo/issues/1721): new `:discouraged-namespace` linter. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#discouraged-namespace). - [#​1728](https://togithub.com/clj-kondo/clj-kondo/issues/1728) New macOS aarch64 (M1-compatible) binary - [#​1726](https://togithub.com/clj-kondo/clj-kondo/issues/1726): fix invalid arity warning for `sequence` with `map` multi-arity transducer - [#​1715](https://togithub.com/clj-kondo/clj-kondo/issues/1715): fix false positive warning for `recur` not in tail position with `core.async alt!!` - [#​1714](https://togithub.com/clj-kondo/clj-kondo/issues/1714): fix recur arity for `defrecord`, `deftype` and `definterface` - [#​1718](https://togithub.com/clj-kondo/clj-kondo/issues/1718): make unsorted namespaces linter case-insensitive - [#​1722](https://togithub.com/clj-kondo/clj-kondo/issues/1722): suppress redundant do in `.cljc` for just one language ### [`v2022.05.31`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220531) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.05.29...v2022.05.31) - Ensure every node has a location when returning from `:macroexpand` ### [`v2022.05.29`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220529) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.05.28...v2022.05.29) - Support `:instance-invocations` analysis bucket - Copy `.clj_kondo` files from configs ### [`v2022.05.28`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220528) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.05.27...v2022.05.28) - Fix false positive redundant do's from `:macroexpand` hooks (regression in 2022.05.27) ### [`v2022.05.27`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220527) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.04.25...v2022.05.27) - [#​686](https://togithub.com/clj-kondo/clj-kondo/issues/686): new `:warn-on-reflection` linter. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#warn-on-reflection). - [#​1692](https://togithub.com/clj-kondo/clj-kondo/pull/1692): new linter `:redundant-call` - warns when a function or macro call with 1 given argument returns the argument. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#redundant-call). - All new JVM `clj-kondo.hooks-api` API ns for REPL usage. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/hooks.md#developing-hooks-in-the-repl). - [#​1674](https://togithub.com/clj-kondo/clj-kondo/pull/1674): config options to limit analysis of var-usages and bodies of var-definitions. Can be used to get a quick overview of a project's namespaces and vars, without analyzing their details. - [#​1676](https://togithub.com/clj-kondo/clj-kondo/pull/1676): Add support for custom function to be called for progress update, `:file-analyzed-fn`. - [#​1697](https://togithub.com/clj-kondo/clj-kondo/issues/1697): update docs and messaging around importing configs ([@​lread](https://togithub.com/lread)) - [#​1700](https://togithub.com/clj-kondo/clj-kondo/issues/1700): allow discouraged var on non-analyzed (closed source) vars - [#​1703](https://togithub.com/clj-kondo/clj-kondo/issues/1703): update built-in cache with newest CLJ (1.11.1) and CLJS (1.11.54) versions - [#​1704](https://togithub.com/clj-kondo/clj-kondo/issues/1704): fix re-frame analysis bug - [#​1705](https://togithub.com/clj-kondo/clj-kondo/issues/1705): add pre-commit utility support via `.pre-commit-hooks.yaml` - [#​1701](https://togithub.com/clj-kondo/clj-kondo/issues/1701): preserve locations in seqs and symbols in `:macroexpand` hook - [#​1685](https://togithub.com/clj-kondo/clj-kondo/issues/1685): Support `.clj_kondo` hook extension - [#​1670](https://togithub.com/clj-kondo/clj-kondo/issues/1670): parse error on auto-resolved keyword for current ns - [#​1672](https://togithub.com/clj-kondo/clj-kondo/issues/1672): support `clojure.test/deftest-` - [#​1678](https://togithub.com/clj-kondo/clj-kondo/issues/1678): support `with-precision` ### [`v2022.04.25`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220425) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.04.23...v2022.04.25) - [#​1669](https://togithub.com/clj-kondo/clj-kondo/issues/1669): fix re-frame analysis problem causing file to be not parsed ### [`v2022.04.23`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220423) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.04.08...v2022.04.23) - [#​1653](https://togithub.com/clj-kondo/clj-kondo/issues/1653): new linter `:keyword-binding` - warns when a keyword is used in a `:keys` binding vector. This linter is `:off` by default. See [docs](doc/linters.md#keyword-in-binding-vector). - [#​996](https://togithub.com/clj-kondo/clj-kondo/issues/996): new linter `:discouraged-var`. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#discouraged-var). - [#​1618](https://togithub.com/clj-kondo/clj-kondo/issues/1618): new `:config-in-ns` configuration option. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#config-in-ns). - Support `:ns-groups` configuration option. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#namespace-groups) - [#​1657](https://togithub.com/clj-kondo/clj-kondo/issues/1657): support bindings with same name in `clojure.core.match` - [#​1659](https://togithub.com/clj-kondo/clj-kondo/issues/1659): fix false positive unused import - [#​1649](https://togithub.com/clj-kondo/clj-kondo/issues/1649): dot (`.`) should be unresolved when not in fn position ### [`v2022.04.08`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220408) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.03.09...v2022.04.08) - [#​1331](https://togithub.com/clj-kondo/clj-kondo/issues/1331): new linter `:non-arg-vec-return-type-hint` that warns when a return type hint is not placed on the arg vector (CLJ only). See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#non-arg-vec-return-type-hint). - Enable `:namespace-name-mismatch` by default - [#​1611](https://togithub.com/clj-kondo/clj-kondo/pull/1611): support `^:replace` override for nested config values - [#​1625](https://togithub.com/clj-kondo/clj-kondo/issues/1625): Add option `--skip-lint`, to skip linting while still executing other tasks like copying configuration with `--copy-configs`. - [#​1620](https://togithub.com/clj-kondo/clj-kondo/issues/1620): return type too narrow for `re-find` Analysis: - [#​1623](https://togithub.com/clj-kondo/clj-kondo/issues/1623): Implement analysis for Java classes: `:java-class-definitions` and `:java-class-usages`. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/analysis/README.md). - [#​1635](https://togithub.com/clj-kondo/clj-kondo/pull/1635): add `:end-row` and `end-col` to analyze data for `:namespace-definitions` - [#​1651](https://togithub.com/clj-kondo/clj-kondo/issues/1651): Improvements for `:protocol-impls` - [#​1612](https://togithub.com/clj-kondo/clj-kondo/issues/1612): Improve analysis for `deftype` - [#​1613](https://togithub.com/clj-kondo/clj-kondo/issues/1613): Improve analysis for `reify` - [#​1609](https://togithub.com/clj-kondo/clj-kondo/issues/1609): keyword analysis for `ns` + `require` ### [`v2022.03.09`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220309) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.03.08...v2022.03.09) - [#​1607](https://togithub.com/clj-kondo/clj-kondo/issues/1607): disable `:namespace-name-mismatch` until further notice due to problems on Windows - [#​1570](https://togithub.com/clj-kondo/clj-kondo/issues/1570): add `:defmethod true` to defmethod `var-usages` analysis. ### [`v2022.03.08`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220308) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.03.04...v2022.03.08) ##### New - [#​1602](https://togithub.com/clj-kondo/clj-kondo/issues/1602): analysis data now includes `:protocol-ns` and `:protocol-name` on protocol methods ([@​lread](https://togithub.com/lread)) ##### Fixed - [#​1605](https://togithub.com/clj-kondo/clj-kondo/issues/1605): error while determining namespace mismatch on Windows ### [`v2022.03.04`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220304) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.02.09...v2022.03.04) ##### New - [#​1240](https://togithub.com/clj-kondo/clj-kondo/issues/1240): Add linter `:namespace-name-mismatch` to detect when namespace name does not match file name. ([@​svdo](https://togithub.com/svdo)) ##### Fixed - [#​1598](https://togithub.com/clj-kondo/clj-kondo/issues/1598): `:scope-end-row` is missing on multi-arity fn args ([@​mainej](https://togithub.com/mainej)) - [#​1588](https://togithub.com/clj-kondo/clj-kondo/issues/1588): analyze type hint in reified method - [#​1581](https://togithub.com/clj-kondo/clj-kondo/issues/1581): redundant fn wrapper false positive when using pre-post-map - [#​1582](https://togithub.com/clj-kondo/clj-kondo/issues/1582): False positive Insufficient input when using symbol call - [#​1579](https://togithub.com/clj-kondo/clj-kondo/issues/1579): relax linting in tagged literal forms - [#​1578](https://togithub.com/clj-kondo/clj-kondo/issues/1578): allow `:deprecated-var` config in ns form metadata - [#​892](https://togithub.com/clj-kondo/clj-kondo/issues/892): suppress unresolved namespaces in data readers config - [#​1594](https://togithub.com/clj-kondo/clj-kondo/issues/1594): lint clojure.test.check.properties/for-all as let ### [`v2022.02.09`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220209) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.01.15...v2022.02.09) ##### New - [#​1549](https://togithub.com/clj-kondo/clj-kondo/issues/1549): detect and warn on cyclic task dependencies in `bb.edn` ([@​mknoszlig](https://togithub.com/mknoszlig)) - [#​1547](https://togithub.com/clj-kondo/clj-kondo/issues/1547): catch undefined tasks present in `:depends`. ([@​mknoszlig](https://togithub.com/mknoszlig)) - [#​783](https://togithub.com/clj-kondo/clj-kondo/issues/783): `:keys` can be used in `:ret` position, also fixes types return map call as input for another typed map function. ([@​pfeodrippe](https://togithub.com/pfeodrippe)) - [#​1526](https://togithub.com/clj-kondo/clj-kondo/issues/1526): detect redundant fn wrappers, like `#(inc %)`. See [docs](doc/linters.md#redundant-fn-wrapper). This linter of `:off` by default but may be enabled by default in future versions after more testing. - [#​1560](https://togithub.com/clj-kondo/clj-kondo/issues/1560): lint task definition keys in `bb.edn` ([@​mknoszlig](https://togithub.com/mknoszlig)) - [#​1484](https://togithub.com/clj-kondo/clj-kondo/issues/1484): Add analysis information about protocol implementations. ([@​ericdallo](https://togithub.com/ericdallo)) ##### Fixed - [#​1563](https://togithub.com/clj-kondo/clj-kondo/issues/1563): vector inside list should not be linted as function call when inside tagged literal. - [#​1540](https://togithub.com/clj-kondo/clj-kondo/issues/1540): imported class flagged as unused when it only appears in annotation metadata. - [#​1571](https://togithub.com/clj-kondo/clj-kondo/issues/1571): ignore spliced reader conditionals wrt. namespace sorting. - [#​1574](https://togithub.com/clj-kondo/clj-kondo/issues/1574): def usage context contains reference of the re-frame reg-sub it is used in. ([@​benedekfazekas](https://togithub.com/benedekfazekas)) ### [`v2022.01.15`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220115) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2022.01.13...v2022.01.15) - Fix [#​1537](https://togithub.com/clj-kondo/clj-kondo/issues/1537): stackoverflow with potemkin import vars with cyclic references - Fix [#​1545](https://togithub.com/clj-kondo/clj-kondo/issues/1545): `recur` in `cond->` gives warning about `recur` not in tail position. - Fix [#​1535](https://togithub.com/clj-kondo/clj-kondo/issues/1535): support CLJS vars / protocols references via dot rather than slash. ### [`v2022.01.13`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20220113) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2021.12.19...v2022.01.13) - Add linter `:conflicting-fn-arity`: warn when an arity occurs more than once in a function that overloads on arity. [#​1136](https://togithub.com/clj-kondo/clj-kondo/issues/1136) ([@​mknoszlig](https://togithub.com/mknoszlig)) - Add linter `:clj-kondo-config` which provides linting for `.clj-kondo/config.edn`. [#​1527](https://togithub.com/clj-kondo/clj-kondo/issues/1527) - Relax `:reduce-without-init` for functions known to be safe [#​1519](https://togithub.com/clj-kondo/clj-kondo/issues/1519) - Symbol arg to `fdef` can be arbitrary namespace [#​1532](https://togithub.com/clj-kondo/clj-kondo/issues/1532) - Improve potemkin generated var-definition analysis [#​1521](https://togithub.com/clj-kondo/clj-kondo/issues/1521) ([@​ericdallo](https://togithub.com/ericdallo)) - Stabilize cache version independent from kondo version [#​1520](https://togithub.com/clj-kondo/clj-kondo/issues/1520). This allows you to re-use the cache over multiple kondo versions. - `:output {:progress true}` should print to stderr [#​1523](https://togithub.com/clj-kondo/clj-kondo/issues/1523) - Only print informative messages when `--debug` is enabled. [#​1514](https://togithub.com/clj-kondo/clj-kondo/issues/1514) - Add Sublime Text instructions [#​827](https://togithub.com/clj-kondo/clj-kondo/issues/827) ([@​KyleErhabor](https://togithub.com/KyleErhabor)) - Fix end location in anonyous function body [#​1533](https://togithub.com/clj-kondo/clj-kondo/issues/1533) - Bump datalog-parser to 0.1.9: allows symbol constants in datalog expression ### [`v2021.12.19`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20211219) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2021.12.16...v2021.12.19) ##### New - Add linter `:reduce-without-init`: warn against two argument version of reduce. Disabled by default. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#reduce-without-initial-value). [#​1064](https://togithub.com/clj-kondo/clj-kondo/issues/1064) ([@​mknoszlig](https://togithub.com/mknoszlig)) - Add linter `:quoted-case-test-constant`: warn on quoted test constants in case. [#​1496](https://togithub.com/clj-kondo/clj-kondo/issues/1496) ([@​mknoszlig](https://togithub.com/mknoszlig)) ##### Enhanced - Fix false positive unused binding in re-frame subscribe [#​1504](https://togithub.com/clj-kondo/clj-kondo/issues/1504) - Fix exclude-defmulti-args for CLJS [#​1503](https://togithub.com/clj-kondo/clj-kondo/issues/1503) - Fix warning location of namespaced map [#​1475](https://togithub.com/clj-kondo/clj-kondo/issues/1475) - False positive :docstring-no-summary on multiline docstrings [#​1507](https://togithub.com/clj-kondo/clj-kondo/issues/1507) ### [`v2021.12.16`](https://togithub.com/clj-kondo/clj-kondo/blob/HEAD/CHANGELOG.md#20211216) [Compare Source](https://togithub.com/clj-kondo/clj-kondo/compare/v2021.12.01...v2021.12.16) ##### New - Automatically load configurations from `.clj-kondo/*/*/config.edn`. This can be disabled with `:auto-load-configs false`. [#​1492](https://togithub.com/clj-kondo/clj-kondo/issues/1492) - Add linter `:duplicate-case-test-constant`: detect duplicate case test constants. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#duplicate-case-test-constant). [#​587](https://togithub.com/clj-kondo/clj-kondo/issues/587) ([@​mknoszlig](https://togithub.com/mknoszlig)) - Add linter `:unexpected-recur`: warn on `recur` in unexpected (non-tail) position. [#​1126](https://togithub.com/clj-kondo/clj-kondo/issues/1126) - Add linter `:used-underscored-binding`: warn on used bindings that start with underscore. Disabled by default. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#used-underscored-bindings). [#​1149](https://togithub.com/clj-kondo/clj-kondo/issues/1149) ([@​mknoszlig](https://togithub.com/mknoszlig)) - Add linter `:docstring-blank` for checking empty docstring. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#docstring-blank). [#​805](https://togithub.com/clj-kondo/clj-kondo/issues/805) ([@​joodie](https://togithub.com/joodie)) - Add linter `:docstring-leading-trailing-whitespace` for checking leading and trailing whitespace in docstring. Disabled by default. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#docstring-leading-trailing-whitespace). [#​805](https://togithub.com/clj-kondo/clj-kondo/issues/805) ([@​joodie](https://togithub.com/joodie)) - Add linter `:docstring-no-summary` for checking the absence of summary of args in docstring. Disabled by default. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md#docstring-no-summary). [#​805](https://togithub.com/clj-kondo/clj-kondo/issues/805) ([@​joodie](https://togithub.com/joodie)) - Add `:exclude-defmulti-args` option for `:unused-bindings` linter. See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/linters.md). [#​1188](https://togithub.com/clj-kondo/clj-kondo/issues/1188) ([@​mknoszlig](https://togithub.com/mknoszlig)) - Support `:config-in-comment` [#​1473](https://togithub.com/clj-kondo/clj-kondo/issues/1473). See [docs](https://togithub.com/clj-kondo/clj-kondo/blob/master/doc/config.md#override-config-in-comment-forms). ##### En

Configuration

📅 Schedule: Branch creation - "on sunday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.