2025-09-10 00:37.33: New job: test mbarbin/dunolint https://github.com/mbarbin/dunolint.git#refs/heads/main (1e3b78dd06094ca7478da7c78b3ef62d994f2e0d) (linux-x86_64:(lint-doc))
Base: ocaml/opam:alpine-3.21-ocaml-4.14@sha256:f150d0ff3306a1eca83d9903df1fb2a938d68e2473334dc0bc014aca30f071e8
Opam project lint documentation
To reproduce locally:
git clone --recursive "https://github.com/mbarbin/dunolint.git" -b "main" && cd "dunolint" && git reset --hard 1e3b78dd
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.21-ocaml-4.14@sha256:f150d0ff3306a1eca83d9903df1fb2a938d68e2473334dc0bc014aca30f071e8
# alpine-3.21-4.14_opam-2.4
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e 109398e2fd61803126becd398df0f1eabc9f3ca2 || git fetch origin master) && git reset -q --hard 109398e2fd61803126becd398df0f1eabc9f3ca2 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam ./
RUN opam pin add -yn dunolint.dev './' && \
opam pin add -yn dunolint-tests.dev './' && \
opam pin add -yn dunolint-lib.dev './' && \
opam pin add -yn dunolint-dev.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 fpath.0.7.3 fpath-sexp0.0.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_compare.v0.16.0 ppx_derivers.1.2.1 ppx_enumerate.v0.16.0 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 re.1.13.2 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.2 --depext-only -y dunolint-lib.dev $DEPS
RUN opam install $DEPS
RUN opam install --yes dune 'odoc>=1.5.0'
COPY --chown=1000:1000 . /src/
RUN ODOC_WARN_ERROR=false opam exec -- dune build --only-packages=dunolint-lib @doc || (echo "dune build @doc failed"; exit 2)
END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK
2025-09-10 00:37.33: Using cache hint "mbarbin/dunolint-ocaml/opam:alpine-3.21-ocaml-4.14@sha256:f150d0ff3306a1eca83d9903df1fb2a938d68e2473334dc0bc014aca30f071e8-alpine-3.21-4.14_opam-2.4-13888dbe729ccd30b0b22745ccfc62aa"
2025-09-10 00:37.33: Using OBuilder spec:
((from ocaml/opam:alpine-3.21-ocaml-4.14@sha256:f150d0ff3306a1eca83d9903df1fb2a938d68e2473334dc0bc014aca30f071e8)
(comment alpine-3.21-4.14_opam-2.4)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(workdir /src)
(run (shell "sudo chown opam /src"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 109398e2fd61803126becd398df0f1eabc9f3ca2 || git fetch origin master) && git reset -q --hard 109398e2fd61803126becd398df0f1eabc9f3ca2 && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam)
(dst ./))
(run (network host)
(shell "opam pin add -yn dunolint.dev './' && \
\nopam pin add -yn dunolint-tests.dev './' && \
\nopam pin add -yn dunolint-lib.dev './' && \
\nopam pin add -yn dunolint-dev.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 fpath.0.7.3 fpath-sexp0.0.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_compare.v0.16.0 ppx_derivers.1.2.1 ppx_enumerate.v0.16.0 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 re.1.13.2 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.2 --depext-only -y dunolint-lib.dev $DEPS"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install --yes dune 'odoc>=1.5.0'"))
(copy (src .) (dst /src/))
(run (shell "ODOC_WARN_ERROR=false opam exec -- dune build --only-packages=dunolint-lib @doc || (echo \"dune build @doc failed\"; exit 2)"))
)
2025-09-10 00:37.33: Waiting for resource in pool OCluster
2025-09-10 01:49.34: Waiting for worker…
2025-09-10 02:15.30: Got resource from pool OCluster
Building on odawa.caelum.ci.dev
All commits already cached
HEAD is now at 1e3b78d Merge pull request #98 from mbarbin/use-versioned-sexp
(from ocaml/opam:alpine-3.21-ocaml-4.14@sha256:f150d0ff3306a1eca83d9903df1fb2a938d68e2473334dc0bc014aca30f071e8)
2025-09-10 02:15.59 ---> saved as "43d61cfc6f489c2c1e9266cce6616416a55ec10ea493569cf90c9474932d48c5"
/: (comment alpine-3.21-4.14_opam-2.4)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam"))
2025-09-10 02:15.59 ---> saved as "7095d03350c0044c61def0f9a69e336fb1ad13aa865d32bc0e8c61df53187903"
/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then from built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [y/n] y
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-09-10 02:16.26 ---> saved as "c419b06264911c9b902885f4f79c5b87a1d08c1568d5a0b107edb8e8b3c0d620"
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 6.8.0-60-generic
The OCaml toplevel, version 4.14.2
2.2.1
2025-09-10 02:16.27 ---> saved as "cbc02f7801f8e53626ee9af3f8c0a9f9b084bbc78e154ae8ec28182fbd343081"
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-09-10 02:16.27 ---> saved as "29be0914fd3e4fd6abc05895c015d46fd001dbecbf8844389eddae6158b4e414"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 109398e2fd61803126becd398df0f1eabc9f3ca2 || git fetch origin master) && git reset -q --hard 109398e2fd61803126becd398df0f1eabc9f3ca2 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
b3b872a94f..ea994caae6 master -> origin/master
109398e2fd Merge pull request #28437 from maiste/release-dune-3.20.2
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository
Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# Run eval $(opam env) to update the current shell environment
2025-09-10 02:16.47 ---> saved as "858c49f64ed51a3bcaa52103131fff173c019581c5cece847f61fe4feb346a7d"
/src: (copy (src dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam)
(dst ./))
2025-09-10 02:16.47 ---> saved as "521abf789177605bdd11fb4bf68b47fedcbb8cc1b47c442e746b0009415328a4"
/src: (run (network host)
(shell "opam pin add -yn dunolint.dev './' && \
\nopam pin add -yn dunolint-tests.dev './' && \
\nopam pin add -yn dunolint-lib.dev './' && \
\nopam pin add -yn dunolint-dev.dev './'"))
[dunolint.dev] synchronised (file:///src)
dunolint is now pinned to file:///src (version dev)
Package dunolint-tests does not exist, create as a NEW package? [y/n] y
[dunolint-tests.dev] synchronised (file:///src)
dunolint-tests is now pinned to file:///src (version dev)
[dunolint-lib.dev] synchronised (file:///src)
dunolint-lib is now pinned to file:///src (version dev)
Package dunolint-dev does not exist, create as a NEW package? [y/n] y
[dunolint-dev.dev] synchronised (file:///src)
dunolint-dev is now pinned to file:///src (version dev)
2025-09-10 02:16.55 ---> saved as "237d00f86dea63c8e34e51ae7eb65215f23e7d1488074cb3bb78abd0ec6640d7"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-09-10 02:16.55 ---> saved as "441a1005b8b9373a384a8f8a162c34ca4e152530645118bd0df51f504f096d99"
/src: (env DEPS "astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 fpath.0.7.3 fpath-sexp0.0.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_compare.v0.16.0 ppx_derivers.1.2.1 ppx_enumerate.v0.16.0 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 re.1.13.2 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0")
/src: (env CI true)
/src: (env OCAMLCI true)
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.2 --depext-only -y dunolint-lib.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.21.4-90-g70bf25b5f6c [https://dl-cdn.alpinelinux.org/alpine/v3.21/main]
- v3.21.4-89-g41f11bf0d41 [https://dl-cdn.alpinelinux.org/alpine/v3.21/community]
- v3.23.0_alpha20250612-5992-g85f1f2142fd [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v3.23.0_alpha20250612-6007-g238b7ec40b0 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v3.23.0_alpha20250612-6004-gf5e14bfd7bd [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59467 distinct packages available
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[dunolint-lib.dev] synchronised (file:///src)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
2025-09-10 02:17.04 ---> saved as "91cce89cac68896b757ed368072c9887a3412b7bd00b171d518872a10a0e7839"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 20 packages
- install astring 0.8.5
- install base v0.16.4
- install csexp 1.5.2
- install dune 3.20.2
- install dune-configurator 3.20.2
- install fpath 0.7.3
- install fpath-sexp0 0.3.1
- install ocaml-compiler-libs v0.12.4
- install ocamlbuild 0.16.1
- install ocamlfind 1.9.8
- install ppx_compare v0.16.0
- install ppx_derivers 1.2.1
- install ppx_enumerate v0.16.0
- install ppx_sexp_conv v0.16.0
- install ppxlib 0.35.0
- install re 1.13.2
- install seq base
- install sexplib0 v0.16.0
- install stdlib-shims 0.3.0
- install topkg 1.1.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved csexp.1.5.2 (cached)
-> retrieved astring.0.8.5 (cached)
-> retrieved base.v0.16.4 (cached)
-> retrieved fpath.0.7.3 (cached)
-> retrieved fpath-sexp0.0.3.1 (cached)
-> retrieved ocaml-compiler-libs.v0.12.4 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ppx_compare.v0.16.0 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ppx_enumerate.v0.16.0 (cached)
-> retrieved ppx_sexp_conv.v0.16.0 (cached)
-> retrieved re.1.13.2 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved sexplib0.v0.16.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved ppxlib.0.35.0 (cached)
-> retrieved topkg.1.1.0 (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2 (cached)
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed topkg.1.1.0
-> installed astring.0.8.5
-> installed fpath.0.7.3
-> installed dune.3.20.2
-> installed ppx_derivers.1.2.1
-> installed csexp.1.5.2
-> installed ocaml-compiler-libs.v0.12.4
-> installed re.1.13.2
-> installed sexplib0.v0.16.0
-> installed stdlib-shims.0.3.0
-> installed fpath-sexp0.0.3.1
-> installed dune-configurator.3.20.2
-> installed base.v0.16.4
-> installed ppxlib.0.35.0
-> installed ppx_enumerate.v0.16.0
-> installed ppx_compare.v0.16.0
-> installed ppx_sexp_conv.v0.16.0
Done.
# Run eval $(opam env) to update the current shell environment
2025-09-10 02:17.51 ---> saved as "ccd026012e4957505a027445695ed006f0d479a391cbc9d922d80678736779ae"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install --yes dune 'odoc>=1.5.0'"))
[NOTE] Package dune is already installed (current version is 3.20.2).
The following actions will be performed:
=== install 10 packages
- install camlp-streams 5.0.1 [required by odoc-parser]
- install cmdliner 1.3.0 [required by odoc]
- install cppo 1.8.0 [required by odoc]
- install crunch 4.0.0 [required by odoc]
- install fmt 0.11.0 [required by odoc]
- install odoc 3.1.0
- install odoc-parser 3.1.0 [required by odoc]
- install ptime 1.2.0 [required by crunch]
- install tyxml 4.6.0 [required by odoc]
- install uutf 1.0.4 [required by tyxml]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved camlp-streams.5.0.1 (cached)
-> retrieved cppo.1.8.0 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved crunch.4.0.0 (cached)
-> retrieved fmt.0.11.0 (cached)
-> retrieved ptime.1.2.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved tyxml.4.6.0 (cached)
-> installed camlp-streams.5.0.1
-> retrieved odoc.3.1.0, odoc-parser.3.1.0 (cached)
-> installed cppo.1.8.0
-> installed ptime.1.2.0
-> installed odoc-parser.3.1.0
-> installed cmdliner.1.3.0
-> installed crunch.4.0.0
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed tyxml.4.6.0
-> installed odoc.3.1.0
Done.
# Run eval $(opam env) to update the current shell environment
2025-09-10 02:18.11 ---> saved as "7d2842eb69bdb1eb5b351462a964003a1bac8ed3428e9ca0e19d9c4045e6e42c"
/src: (copy (src .) (dst /src/))
2025-09-10 02:18.11 ---> saved as "0558336ed9659f53691c70df433e57c2f45b846c69ba76d680d8d1d89690f81b"
/src: (run (shell "ODOC_WARN_ERROR=false opam exec -- dune build --only-packages=dunolint-lib @doc || (echo \"dune build @doc failed\"; exit 2)"))
2025-09-10 02:18.13 ---> saved as "0124a8b90289b7a0f39f4a6924d4059a46b3510199009f31eeacf57f9e543579"
Job succeeded
2025-09-10 02:18.13: Job succeeded