2026-04-03 11:38.07: New job: test mirage/mirage-clock https://github.com/mirage/mirage-clock.git#refs/heads/main (f457572bfedb9586c8bf9eaa9ece7e53677856e3) (linux-x86_64:(lint-doc)) Base: ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47 Opam project lint documentation To reproduce locally: git clone --recursive "https://github.com/mirage/mirage-clock.git" -b "main" && cd "mirage-clock" && git reset --hard f457572b cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47 # debian-13-4.08_opam-2.5 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 d06cfb1853afceb1dc127f88edaac3f8110bf6cc || git fetch origin master) && git reset -q --hard d06cfb1853afceb1dc127f88edaac3f8110bf6cc && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 mirage-clock.opam mirage-clock-unix.opam mirage-clock-solo5.opam ./ RUN opam pin add -yn mirage-clock.dev './' && \ opam pin add -yn mirage-clock-unix.dev './' && \ opam pin add -yn mirage-clock-solo5.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.1 dune-configurator.3.22.1 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.2 --depext-only -y mirage-clock.dev mirage-clock-unix.dev mirage-clock-solo5.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 @doc || (echo "dune build @doc failed"; exit 2) END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-04-03 11:38.07: Using cache hint "mirage/mirage-clock-ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47-debian-13-4.08_opam-2.5-e980d183fa228f23bc404e04e5be7736" 2026-04-03 11:38.07: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47) (comment debian-13-4.08_opam-2.5) (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 d06cfb1853afceb1dc127f88edaac3f8110bf6cc || git fetch origin master) && git reset -q --hard d06cfb1853afceb1dc127f88edaac3f8110bf6cc && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src mirage-clock.opam mirage-clock-unix.opam mirage-clock-solo5.opam) (dst ./)) (run (network host) (shell "opam pin add -yn mirage-clock.dev './' && \ \nopam pin add -yn mirage-clock-unix.dev './' && \ \nopam pin add -yn mirage-clock-solo5.dev './'")) (run (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.1 dune-configurator.3.22.1 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1") (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 mirage-clock.dev mirage-clock-unix.dev mirage-clock-solo5.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 @doc || (echo \"dune build @doc failed\"; exit 2)")) ) 2026-04-03 11:38.07: Waiting for resource in pool OCluster 2026-04-03 21:05.18: Waiting for worker… 2026-04-03 21:07.35: Got resource from pool OCluster Building on laodoke.caelum.ci.dev All commits already cached HEAD is now at f457572 Merge pull request #53 from samoht/CHANGES-v4.2 (from ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47) 2026-04-03 21:08.05 ---> using "867303d7f04cee0d3e23016229d2a45a69516628a14dbff52754cd3cb283f66f" from cache /: (comment debian-13-4.08_opam-2.5) /: (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")) 2026-04-03 21:08.05 ---> using "84e1fc87343884e1d5c327fca2d33e2afa85e1eaf1b4c893d8301d60eabe4d56" from cache /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. Continue? [y/n] y 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. Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-04-03 21:08.05 ---> using "a125a60e5eccb505fd0bde45c9a7654bae2eb7eab13fa01be7c55cd2f87d6234" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-106-generic The OCaml toplevel, version 4.08.1 2.2.1 2026-04-03 21:08.05 ---> using "0407529f1042a28815bd61683d1dc7a2be9d395b6680bdf3553558a27842326a" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-04-03 21:08.05 ---> using "f27fcd2ece061e1cf1de6842a86dfe335065cc7f1de2f39ff10db06e5ae2f5b5" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e d06cfb1853afceb1dc127f88edaac3f8110bf6cc || git fetch origin master) && git reset -q --hard d06cfb1853afceb1dc127f88edaac3f8110bf6cc && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD ffb54b9bdd..d28e8bf13a master -> origin/master d06cfb1853 Merge pull request #29632 from shonfeder/release-dune-3.22.1 <><> 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 2026-04-03 21:08.05 ---> using "d3fe9f6d42e3743723d43965a404ceffa267a6c164b74feb3b01bc3343c398a7" from cache /src: (copy (src mirage-clock.opam mirage-clock-unix.opam mirage-clock-solo5.opam) (dst ./)) 2026-04-03 21:08.05 ---> saved as "4592c28c263fc84677db523f476722cb64623d5d0dfaca73c84d71d7bad8afcc" /src: (run (network host) (shell "opam pin add -yn mirage-clock.dev './' && \ \nopam pin add -yn mirage-clock-unix.dev './' && \ \nopam pin add -yn mirage-clock-solo5.dev './'")) [mirage-clock.dev] synchronised (file:///src) mirage-clock is now pinned to file:///src (version dev) [mirage-clock-unix.dev] synchronised (file:///src) mirage-clock-unix is now pinned to file:///src (version dev) Package mirage-clock-solo5 does not exist, create as a NEW package? [y/n] y [mirage-clock-solo5.dev] synchronised (file:///src) mirage-clock-solo5 is now pinned to file:///src (version dev) 2026-04-03 21:08.14 ---> saved as "fd1aa7df8b7123bb19ef41ed8685f9574f795c542c5ca13169375c626d578819" /src: (run (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-04-03 21:08.15 ---> saved as "56cea59414d6deadba8ecb9204ff0dd1385d03399276f0c7b620db342029540d" /src: (env DEPS "base-bigarray.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.1 dune-configurator.3.22.1 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1") /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 mirage-clock.dev mirage-clock-unix.dev mirage-clock-solo5.dev $DEPS")) + /usr/bin/sudo "apt-get" "update" - Get:1 http://deb.debian.org/debian trixie InRelease [140 kB] - Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB] - Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB] - Get:4 http://deb.debian.org/debian trixie/main amd64 Packages [9671 kB] - Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [119 kB] - Fetched 10.0 MB in 2s (4155 kB/s) - Reading package lists... - <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [mirage-clock.dev] synchronised (file:///src) [mirage-clock-solo5.dev] synchronised (file:///src) [mirage-clock-unix.dev] synchronised (file:///src) [NOTE] Package ocaml-config is already installed (current version is 1). [NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1). [NOTE] Package ocaml is already installed (current version is 4.08.1). [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). 2026-04-03 21:08.40 ---> saved as "30bebd0a51dc3d165c1aeaebe61f92bac47f5a2156ef1f94cbcc9fc7e52ce354" /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) [NOTE] Package ocaml-config is already installed (current version is 1). [NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1). [NOTE] Package ocaml is already installed (current version is 4.08.1). [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 3 packages - install csexp 1.5.2 - install dune 3.22.1 - install dune-configurator 3.22.1 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved csexp.1.5.2 (cached) -> retrieved dune.3.22.1, dune-configurator.3.22.1 (cached) -> installed dune.3.22.1 -> installed csexp.1.5.2 -> installed dune-configurator.3.22.1 Done. # Run eval $(opam env) to update the current shell environment 2026-04-03 21:10.26 ---> saved as "1797cf2e0fd40c51c18326b8348683e8e7a9901dea701786278e23277fa2ad82" /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.22.1). The following actions will be performed: === install 17 packages - install astring 0.8.5 [required by odoc] - install camlp-streams 5.0.1 [required by odoc-parser] - install cmdliner 2.1.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 fpath 0.7.3 [required by odoc] - install ocamlbuild 0.16.1 [required by fmt, astring, fpath] - install ocamlfind 1.9.8 [required by fmt, astring, fpath] - install odoc 3.1.0 - install odoc-parser 3.1.0 [required by odoc] - install ptime 1.2.0 [required by crunch] - install re 1.11.0 [required by tyxml] - install seq base [required by tyxml] - install topkg 1.1.1 [required by fmt, astring, fpath] - 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 astring.0.8.5 (cached) -> retrieved cmdliner.2.1.0 (cached) -> retrieved crunch.4.0.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved fpath.0.7.3 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ptime.1.2.0 (cached) -> retrieved seq.base (cached) -> installed seq.base -> installed camlp-streams.5.0.1 -> retrieved re.1.11.0 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved tyxml.4.6.0 (cached) -> retrieved uutf.1.0.4 (cached) -> retrieved odoc.3.1.0, odoc-parser.3.1.0 (cached) -> installed cppo.1.8.0 -> installed re.1.11.0 -> installed ocamlfind.1.9.8 -> installed cmdliner.2.1.0 -> installed ocamlbuild.0.16.1 -> installed topkg.1.1.1 -> installed uutf.1.0.4 -> installed ptime.1.2.0 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed crunch.4.0.0 -> installed fpath.0.7.3 -> installed odoc-parser.3.1.0 -> installed tyxml.4.6.0 -> installed odoc.3.1.0 Done. # Run eval $(opam env) to update the current shell environment 2026-04-03 21:11.42 ---> saved as "a07459c693558b3941c587aa741b517008e234629fc0367237e7f4abdbcd0280" /src: (copy (src .) (dst /src/)) 2026-04-03 21:11.43 ---> saved as "a08a28b3cb264ed02351db23d9bb694e3db4fe75e99acf9318051fc074530ac6" /src: (run (shell "ODOC_WARN_ERROR=false opam exec -- dune build @doc || (echo \"dune build @doc failed\"; exit 2)")) 2026-04-03 21:11.43 ---> saved as "3304f85b96517deff66bdd8cb4e2905b5b0f5d4520aac1d7b762810aa3f94137" Job succeeded 2026-04-03 21:11.43: Job succeeded