cljdoc

2023-01-13T17:04:19.493969Z

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?

pithyless 2023-01-15T17:45:27.152399Z

> 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"}

lread 2023-01-15T20:52:31.974949Z

Thanks for asking @pithyless! 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)

pithyless 2023-01-16T06:46:32.518499Z

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

lread 2023-01-16T14:31:09.902749Z

Ah, cool thanks for sharing. I'm selfishly glad malli was temporarily bound to Clojure 1.11+. It helped to find a problem in cljdoc! simple_smile

lread 2023-01-13T19:11:48.312899Z

I am happy to take a look in a bit @nbtheduke

👍 1
2023-01-13T19:12:04.742529Z

No worries, there's no rush

lread 2023-01-13T20:04:58.008889Z

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.

👍 1
2023-01-13T20:16:23.949129Z

Fantastic, thank you so much for looking into that

lread 2023-01-13T20:26:50.869009Z

My pleasure!

lread 2023-01-13T21:55:16.215659Z

Currently wrestling with the mundanity of getting cljdoc-analyzer to build again after CircleCI breach.

lread 2023-01-13T22:21:14.643929Z

Ah. Looks like somebody deleted some deploy keys and did not recreate them. (it was me!).

😂 1
lread 2023-01-13T22:40:55.266679Z

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.

lread 2023-01-13T22:41:19.531379Z

Thanks for raising this @nbtheduke, much appreciated!

🎉 1