This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-01-13
Channels
- # announcements (13)
- # beginners (52)
- # bitcoin (2)
- # calva (2)
- # cider (7)
- # clara (1)
- # clj-commons (11)
- # clj-kondo (6)
- # cljdoc (14)
- # clojure (68)
- # clojure-belgium (1)
- # clojure-denmark (6)
- # clojure-europe (57)
- # clojure-nl (2)
- # clojure-norway (10)
- # clojure-uk (3)
- # clojurescript (7)
- # code-reviews (17)
- # conjure (1)
- # cursive (5)
- # dev-tooling (11)
- # emacs (9)
- # fulcro (12)
- # hugsql (20)
- # introduce-yourself (6)
- # joyride (2)
- # leiningen (1)
- # lsp (61)
- # malli (30)
- # missionary (11)
- # nbb (6)
- # off-topic (26)
- # portal (5)
- # practicalli (5)
- # re-frame (8)
- # releases (8)
- # sci (21)
- # shadow-cljs (3)
- # sql (17)
- # squint (1)
- # xtdb (3)
I see that Malli's recent https://cljdoc.org/d/metosin/malli/0.10.0/doc/readme has https://app.circleci.com/pipelines/github/cljdoc/builder/39050/workflows/78d6488a-24c0-4e2c-9ba6-fc0ec4e6b0e8/jobs/55424, but reading the stack trace, I can't seem to find the problem. Any suggestions?
No worries, there's no rush
Ah.. ok. The malli lib is not specifying any minimum Clojure version, when cljdoc doesn't see a version specified it currently defaults to 1.10.1, but malli uses :as-alias
which requires 1.11. So easy fix, I think. I'll just have cljdoc default to 1.11.1 when it sees no Clojure version. I shall make it so and report back when done.
Fantastic, thank you so much for looking into that
Currently wrestling with the mundanity of getting cljdoc-analyzer to build again after CircleCI breach.
Ah. Looks like somebody deleted some deploy keys and did not recreate them. (it was me!).
Ok. Finally back in business. Released new version of cljdoc-analyzer and I rebuilt https://cljdoc.org/d/metosin/malli/0.10.0, all looks good to me.
> Ah.. ok. The malli lib is not specifying any minimum Clojure version, when cljdoc doesn't see a version specified it currently defaults to 1.10.1, but malli uses :as-alias
which requires 1.11.
How should a lib specify a min-version of Clojure for cljdoc?
malli does have this in deps.edn:
org.clojure/clojure {:mvn/version "1.11.1"}
Thanks for asking @U05476190!
TL;DR: I don't think malli needs any adjustment here.
Cljdoc only looks at jars so it only sees poms. The https://repo.clojars.org/metosin/malli/0.10.0/malli-0.10.0.pom for malli does not include a org.clojure/clojure
dep.
I'm not sure if it is best practice for a lib to specify a minimum Clojure version as a dep, but it seems like a reasonable thing to do.
I do so for https://repo.clojars.org/rewrite-clj/rewrite-clj/1.1.45/rewrite-clj-1.1.45.pom, which has support for Clojure >= 1.8.0.
That all said:
• this doesn't cover ClojureScript which you don't want to explicitly include as a dep for a cljc lib. For rewrite-clj, for example, I document that I support the current version of ClojureScript only.
• even if malli specified Clojure 1.11.1 in the pom, Clojure analysis would have passed but ClojureScript analysis would have failed because cljdoc was defaulting to a 1.10.x version of ClojureScript
• I think cljdoc should default to the current releases of Clojure and ClojureScript (which it is now doing)
Thanks for clarifying! BTW, in case you missed it on #malli - this particular issue was fixed and malli is 1.10 compatible again. https://github.com/metosin/malli/pull/816