clj-kondo 2026-10-15

What about this idea?

(defn config []
  {:db {:host "localhost" :port 5432}
   :http {:port 8080}})

(defn db-url []
  (str "jdbc:postgresql://" (-> (config) :db :hots)))
                                             ^ Unknown key: hots, closest match: :host   

πŸ‘ 7
πŸ‘πŸ» 1
❀️ 3
😍 6

Maybe it's not exactly the same topic, but one thing that has always made me hesitate to use more "it's all data" type of libraries (except Malli and Hiccup, they're too useful) is the stringly-typed feel of them in editors/IDEs. I mean that I generally have better feedback on whether I am using the right thing if the library uses e.g. (regal/and ...) instead of [:and ...].

can't wait for clj-kondo to implement full hindley-milner type inference

πŸ˜‚ 3

@nbtheduke I've been working on this for the past year or two, and am planning to release the library soon ☺️

I signed up to give the talk about it at Clojure Toronto in January, but will maybe release the library itself earlier if there's interest

Seems to be working well!

Most of the findings were tests asserting that a map does not have a key (as in, the lookup returns nil) An interesting one however was found in production code, where I found that the lookup was done against a map that was designed to be manipulated via alter-var-root by users of the library. Good catch, I ended up adding some comments about this usecase

ah nice, so it found something useful? :)

Indeed. Not a bug (phew!), but something that was in need of some explanation