This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-12-15
Channels
- # adventofcode (80)
- # beginners (94)
- # biff (19)
- # cider (74)
- # clj-kondo (11)
- # cljs-dev (7)
- # clojure (110)
- # clojure-austin (3)
- # clojure-australia (1)
- # clojure-belgium (1)
- # clojure-china (1)
- # clojure-europe (83)
- # clojure-filipino (1)
- # clojure-hk (1)
- # clojure-indonesia (1)
- # clojure-japan (1)
- # clojure-korea (1)
- # clojure-my (1)
- # clojure-nl (1)
- # clojure-norway (4)
- # clojure-sg (1)
- # clojure-taiwan (1)
- # clojure-uk (2)
- # cursive (3)
- # data-science (8)
- # datalevin (8)
- # emacs (18)
- # etaoin (5)
- # graalvm (1)
- # holy-lambda (3)
- # honeysql (1)
- # jackdaw (10)
- # java (10)
- # jobs (3)
- # luminus (9)
- # malli (106)
- # off-topic (88)
- # polylith (8)
- # portal (2)
- # re-frame (50)
- # reagent (11)
- # reitit (74)
- # remote-jobs (1)
- # shadow-cljs (46)
- # tools-deps (26)
- # xtdb (49)
Can clj-kondo "learn" by reading locally defined specs and inferring lint rules from them?
Kind of: • https://github.com/clj-kondo/inspector (only a proof of concept) • https://github.com/metosin/malli#clj-kondo

Is there a way to run clj-kondo.main from a babashka task?
I know I can run clj-kondo https://github.com/clj-kondo/clj-kondo/blob/master/doc/jvm.md or as a https://github.com/clj-kondo/clj-kondo#babashka-pod, but from what I can tell the pod doesn't include the code in main. Ideally I'd be able to bb lint
and have it replicate the behavior of clj-kondo --lint src
, without the need to install the binary.
@UP7RM6935 You can use the pod to 1) install the binary for you and 2) call clj-kondo's API programmatically: (clj-kondo/run! {:lint ["src"]})
+ clj-kondo/print!
is the equivalent
Oh wow thank you, that was easy 🙂
(For anyone else: I just merged this into bb.edn)
{:pods {clj-kondo/clj-kondo {:version "2022.12.10"}}
:tasks {:requires ([pod.borkdude.clj-kondo :as clj-kondo])
lint (clj-kondo/print! (clj-kondo/run! {:lint ["src"]}))}}
Would be valid to have a new linter that warns about functions with lots of arity? example:
(my-function a b c d e f g) ;; too-many-arguments - my-funciton should have at most 4 args