Repository navigation
Description
Summary
No Clojure documentation has ever been published: https://libtmux.org/en/clojure/latest/ returns 403, while the site's port picker already lists Clojure. Clojure publishes only through this repository's docs.yml, as an include-wrappers leg. At libtmux/docs 8245169, the docs commit that adds Clojure to the site, three wrapper legs fail. kotlin and scala stop on their Maven Central README badges, and clojure stops because its leg has no Java checkout. The causes are in libtmux/docs, and libtmux/docs#296 changes all three. This repository's docs pins stay at c5b56f2b9, which predates Clojure, so Clojure stays unpublished until a caller PR moves them to a docs commit that contains #296.
Reproduction
-
Request the Clojure landing page:
$ curl -s -o /dev/null -w '%{http_code}\n' https://libtmux.org/en/clojure/latest/ -
Read the failed legs of the docs run on ci(docs) Refine the pages and list the new ports #147, which moved both pins from
c5b56f2b9to8245169:$ gh run view 42714401041 --repo libtmux/libtmux-java --log-failed
Expected
With the pins on 8245169, the PR build passes for java, kotlin, scala and clojure, and the merge publishes all four.
Actual
- The landing page returns
403(CloudFrontAccessDeniedfor a key that does not exist). Nothing exists underen/clojure/latest/. - Run 42714401041: the java leg passes, and kotlin, scala and clojure fail. ci(docs) Refine the pages and list the new ports #147 was closed unmerged.
- The last publish, push run 42441924627 at
c5b56f2b9, built java, kotlin and scala only. - The
workflow_dispatchlanguageinput offersall, java, kotlin, scala(docs.yml#L23), so a manual Clojure build is reachable only throughall.
Environment
Revisions
- libtmux-java
master:873f3ac6c731202810f6873f046aa32247fdaa54, docs pinsc5b56f2b90002281adb95616a3e523e0a192937c - libtmux/docs
main:8245169584882f09e302881f136512df41aba2a4 - Fix five ports' docs builds and tidy the port landing page docs#296 head:
0149aad13
Evidence
Failing lines of run 42714401041
build / build (latest, trunk, false, false, kotlin) Error: kotlin: unsupported badge https://img.shields.io/maven-central/v/io.github.libtmux/libtmux-kotlin?label=libtmux-kotlin; add a mapping to scripts/lib/badges.mjs
build / build (latest, trunk, false, false, scala) Error: scala: unsupported badge https://img.shields.io/maven-central/v/io.github.libtmux/libtmux-scala_3?label=libtmux-scala_3; add a mapping to scripts/lib/badges.mjs
build / build (latest, trunk, false, false, clojure) Error: java: no checkout at /home/runner/work/libtmux/libtmux-java; set LIBTMUX_DOCS_CHECKOUT_JAVA
Clojure leg, traced at libtmux/docs 8245169:
- On a PR, docs.yml#L62-L64 sets
include-wrappers. port-docs-matrix.mjs#L18then adds every port whoseparentLibraryis java, which includes clojure since feat(site) Add Clojure guides and native API docs#276.- Each leg checks out this repository once and exports only its own
LIBTMUX_DOCS_CHECKOUT_<PORT>(port-docs.yml#L274). build-site.sh#L331-L332runsgen-tmux-usage.mjs --ports clojure, which also reads the Java core.- With no
LIBTMUX_DOCS_CHECKOUT_JAVA,gen-tmux-usage.mjs#L338-L340falls back to the local default path fromports.ts#L1114. That path does not exist on a runner, so it throws at #L506.
Kotlin and scala legs:
libtmux-kotlin/README.mdandlibtmux-scala/README.mdare staged as guides (port-documentation.ts#L225).- The badge renderer added by Render guide badges locally instead of hotlinking shields docs#288 throws on any shields service it does not map (
badges.mjs#L95-L100), and it has nomaven-centralentry. - The java leg passes because its staged guide,
docs/README.md, carries no badges.
Why no check caught it before #147:
- This repository's
docs.ymlruns on pull requests,masterpushes, tags and dispatch, with no schedule. A run only builds the docs commit its pins name. - libtmux/docs CI checks out none of java, kotlin, scala or clojure (
test.yml#L52-L130). - Its shell build runs without
LIBTMUX_DOCS_SOURCE_SHA, so the clojure branch ofbuild-site.shnever runs there.
References
- Fix five ports' docs builds and tidy the port landing page docs#296:
- It maps LuaRocks, Hex and Maven Central badges. Every Maven Central badge in this repository's READMEs maps through
badgeSpecwith it, and the clojure READMEs carry no shields badges. - It exports
LIBTMUX_DOCS_CHECKOUT_JAVAfromLIBTMUX_DOCS_CHECKOUT_CLOJUREbeforegen-tmux-usage.mjs --ports clojure. - A full clojure leg with that change has not run yet.
- It maps LuaRocks, Hex and Maven Central badges. Every Maven Central badge in this repository's READMEs maps through
- feat(site) Add Clojure guides and native API docs#276 adds Clojure to the site, and Render guide badges locally instead of hotlinking shields docs#288 adds build-time badge rendering.
- ci(docs) Refine the pages and list the new ports #147, the caller PR that moved the pins to
8245169, closed unmerged.
Activity