This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-11-07
Channels
- # announcements (2)
- # babashka (38)
- # beginners (38)
- # calva (4)
- # cider (1)
- # clj-kondo (43)
- # clojure (50)
- # clojure-dev (39)
- # clojure-europe (4)
- # clojure-spec (4)
- # clojure-uk (2)
- # conjure (6)
- # core-async (5)
- # core-typed (3)
- # data-science (2)
- # datomic (6)
- # depstar (4)
- # emacs (1)
- # events (2)
- # fulcro (4)
- # jobs-discuss (4)
- # luminus (1)
- # off-topic (5)
- # re-frame (14)
- # shadow-cljs (8)
- # sql (8)
- # tools-deps (22)
Nice, I'll give that a go now. I'm currently working on the tool I was using this for :) Will give you some measures. This is one of the times where having an FX8350 is valuable - testing worst case performance.
@dominicm I updated the README for that here: https://github.com/borkdude/clj-kondo/#project-setup
Yes. > The --no-warnings flag indicates that clj-kondo is used to analyze sources to populate the cache. When enabled, clj-kondo will suppress warnings, skips over already linted .jar files and copies configuration from dependencies into the .clj-kondo directory (see config.md).
Deleting lots of code, great :). On older kondos it'll hang around longer, but that's fine.
Here's the official announcement then. Clj-kondo v2020.11.07 ✨ New: - deps.edn linting - import configs from deps - skip over already linted .jar files and more! Release notes: https://github.com/borkdude/clj-kondo/blob/master/CHANGELOG.md#v20201107 This release is funded by @cljtogether!
❯ clj -M:dev
Clojure 1.10.1
user=> "Elapsed time: 22009.876941 msecs"
❯ clj -M:dev
Clojure 1.10.1
user=> "Elapsed time: 607.153635 msecs"
❯ clj -M:dev
Clojure 1.10.1
user=> "Elapsed time: 574.688497 msecs"
Not bad :) I wonder where those last 600msecs are going.$ time clj-kondo --no-warnings --lint $(clojure -Spath -Sdeps '{:paths []}') --parallel
sci-0.1.0.jar was already linted, skipping
cheshire-5.10.0.jar was already linted, skipping
transit-clj-1.0.324.jar was already linted, skipping
datalog-parser-0.1.7.jar was already linted, skipping
bencode-1.1.0.jar was already linted, skipping
clojure-1.10.1.jar was already linted, skipping
edamame-0.0.11-alpha.12.jar was already linted, skipping
sci.impl.reflector-0.0.1.jar was already linted, skipping
tools.reader-1.3.2.jar was already linted, skipping
jackson-core-2.10.2.jar was already linted, skipping
jackson-dataformat-cbor-2.10.2.jar was already linted, skipping
jackson-dataformat-smile-2.10.2.jar was already linted, skipping
tigris-0.1.2.jar was already linted, skipping
transit-java-1.0.343.jar was already linted, skipping
core.specs.alpha-0.2.44.jar was already linted, skipping
spec.alpha-0.2.176.jar was already linted, skipping
commons-codec-1.10.jar was already linted, skipping
jaxb-api-2.3.0.jar was already linted, skipping
msgpack-0.6.12.jar was already linted, skipping
json-simple-1.1.1.jar was already linted, skipping
javassist-3.18.1-GA.jar was already linted, skipping
clj-kondo --no-warnings --lint $(clojure -Spath -Sdeps '{:paths []}') 0.01s user 0.01s system 95% cpu 0.022 total
I think it might be a simple 500ms overhead to http://clojure.java.sh/sh... I'm... surprised
I'm considering to extend this optimization to git libs but I just wanted to get this out first