2026-01-16 11:39.18: New job: test robur-coop/dnsvizor https://github.com/robur-coop/dnsvizor.git#refs/heads/main (dd1f438cedb5f2ded3977ea5c7b430cd246ef2cd) (linux-x86_64:(lint-doc)) Base: ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216 Opam project lint documentation To reproduce locally: git clone --recursive "https://github.com/robur-coop/dnsvizor.git" -b "main" && cd "dnsvizor" && git reset --hard dd1f438c cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216 # alpine-3.22-4.14_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 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 dnsvizor.opam ./ RUN opam pin add -yn dnsvizor.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="alcotest.1.9.1 angstrom.0.16.1 arp.4.1.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bigstringaf.0.10.0 charrua.3.0.0 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 digestif.1.3.0 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.1 ipaddr-cstruct.5.6.1 logs.0.10.0 lru.0.3.1 lwt.6.0.0 lwt-dllist.1.1.0 macaddr.5.6.1 macaddr-cstruct.5.6.1 metrics.0.5.0 mirage-crypto.2.0.2 mirage-crypto-rng.2.0.2 mirage-flow.5.0.0 mirage-mtime.5.2.0 mirage-net.4.0.0 mirage-sleep.4.1.0 mtime.2.1.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 psq.0.2.1 randomconv.0.2.0 re.1.14.0 seq.base stdlib-shims.0.3.0 tcpip.9.0.1 topkg.1.1.1 uutf.1.0.4" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.2 --depext-only -y dnsvizor.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-01-16 11:39.18: Using cache hint "robur-coop/dnsvizor-ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216-alpine-3.22-4.14_opam-2.5-cdcd6623ef12a5fe788080a82428d84c" 2026-01-16 11:39.18: Using OBuilder spec: ((from ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216) (comment alpine-3.22-4.14_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 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src dnsvizor.opam) (dst ./)) (run (network host) (shell "opam pin add -yn dnsvizor.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "alcotest.1.9.1 angstrom.0.16.1 arp.4.1.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bigstringaf.0.10.0 charrua.3.0.0 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 digestif.1.3.0 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.1 ipaddr-cstruct.5.6.1 logs.0.10.0 lru.0.3.1 lwt.6.0.0 lwt-dllist.1.1.0 macaddr.5.6.1 macaddr-cstruct.5.6.1 metrics.0.5.0 mirage-crypto.2.0.2 mirage-crypto-rng.2.0.2 mirage-flow.5.0.0 mirage-mtime.5.2.0 mirage-net.4.0.0 mirage-sleep.4.1.0 mtime.2.1.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 psq.0.2.1 randomconv.0.2.0 re.1.14.0 seq.base stdlib-shims.0.3.0 tcpip.9.0.1 topkg.1.1.1 uutf.1.0.4") (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 dnsvizor.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-01-16 11:39.18: Waiting for resource in pool OCluster 2026-01-16 14:59.33: Waiting for worker… 2026-01-16 15:03.17: Got resource from pool OCluster Building on asteria.caelum.ci.dev All commits already cached HEAD is now at dd1f438 Merge pull request #120 from robur-coop/base64-result (from ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216) 2026-01-16 15:03.17 ---> using "d1cef22083ba59d6db4e2f107091c68dd70ebdcc64c3894ad7db7be62ad17f4a" from cache /: (comment alpine-3.22-4.14_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-01-16 15:03.17 ---> using "aa238cb861d3c6c581edbbf37b9748fbb3955a0301f8754f1330522d31bdea95" 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. 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 2026-01-16 15:03.17 ---> using "3012e725308508d0de531ee578ee1e8781d13d01e7b7e084a1a8ab6b2e9dfc3c" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-87-generic The OCaml toplevel, version 4.14.2 2.2.1 2026-01-16 15:03.17 ---> using "49acb3bbc71f8cee0ac24a0653bcca777fc6f3873bc89b90d919182499bf3c26" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-16 15:03.17 ---> using "834d8ad0726c0946994af4beac26783ef6bb1014f63b7b5e9de6455c8090386e" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD a6b2f19780..873cb18c37 master -> origin/master 873cb18c37 Merge pull request #29216 from shonfeder/release-dune-3.21.0 <><> 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-01-16 15:03.17 ---> using "ea4426e849d938ebd90ba9a44dd62c3b5886c5282c0815e4c28c40a99c86dd59" from cache /src: (copy (src dnsvizor.opam) (dst ./)) 2026-01-16 15:03.17 ---> using "66e9f72a482e3a290e820f93cca572ba37b66f6ee42aaa79bf0fedb765a4ac7a" from cache /src: (run (network host) (shell "opam pin add -yn dnsvizor.dev './'")) Package dnsvizor does not exist, create as a NEW package? [y/n] y [dnsvizor.dev] synchronised (file:///src) dnsvizor is now pinned to file:///src (version dev) 2026-01-16 15:03.17 ---> using "09e11d839fa2a125fd07bbe9a9c21a4e9be80a8112513020479a77e3196abf4d" from cache /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-16 15:03.17 ---> using "c2f14b1aaffb58db344fc68fc41dd867b0662f722d3198a5368ed0ff73321445" from cache /src: (env DEPS "alcotest.1.9.1 angstrom.0.16.1 arp.4.1.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bigstringaf.0.10.0 charrua.3.0.0 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 digestif.1.3.0 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.1 ipaddr-cstruct.5.6.1 logs.0.10.0 lru.0.3.1 lwt.6.0.0 lwt-dllist.1.1.0 macaddr.5.6.1 macaddr-cstruct.5.6.1 metrics.0.5.0 mirage-crypto.2.0.2 mirage-crypto-rng.2.0.2 mirage-flow.5.0.0 mirage-mtime.5.2.0 mirage-net.4.0.0 mirage-sleep.4.1.0 mtime.2.1.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 psq.0.2.1 randomconv.0.2.0 re.1.14.0 seq.base stdlib-shims.0.3.0 tcpip.9.0.1 topkg.1.1.1 uutf.1.0.4") /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 dnsvizor.dev $DEPS")) + /usr/bin/sudo "apk" "update" - fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/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.22.2-345-g80278e42c54 [https://dl-cdn.alpinelinux.org/alpine/v3.22/main] - v3.22.2-350-ga346423740a [https://dl-cdn.alpinelinux.org/alpine/v3.22/community] - v20251224-1517-g76c24b64e20 [https://dl-cdn.alpinelinux.org/alpine/edge/main] - v20251224-1496-g03a612442a1 [https://dl-cdn.alpinelinux.org/alpine/edge/community] - v20251224-1495-g0eba70fbcb6 [https://dl-cdn.alpinelinux.org/alpine/edge/testing] - OK: 60721 distinct packages available <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [dnsvizor.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). 2026-01-16 15:03.17 ---> using "af6714a4a4b139b5007543c0ab5ddfb5b818c8af06cda75fa2261905b334f8f1" from cache /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 49 packages - install alcotest 1.9.1 - install angstrom 0.16.1 - install arp 4.1.0 - install astring 0.8.5 - install base-bytes base - install bigstringaf 0.10.0 - install charrua 3.0.0 - install cmdliner 2.1.0 - install cppo 1.8.0 - install csexp 1.5.2 - install cstruct 6.2.0 - install cstruct-lwt 6.2.0 - install digestif 1.3.0 - install domain-name 0.5.0 - install dune 3.21.0 - install dune-configurator 3.21.0 - install duration 0.2.1 - install eqaf 0.10 - install ethernet 3.2.0 - install fmt 0.11.0 - install ipaddr 5.6.1 - install ipaddr-cstruct 5.6.1 - install logs 0.10.0 - install lru 0.3.1 - install lwt 6.0.0 - install lwt-dllist 1.1.0 - install macaddr 5.6.1 - install macaddr-cstruct 5.6.1 - install metrics 0.5.0 - install mirage-crypto 2.0.2 - install mirage-crypto-rng 2.0.2 - install mirage-flow 5.0.0 - install mirage-mtime 5.2.0 - install mirage-net 4.0.0 - install mirage-sleep 4.1.0 - install mtime 2.1.0 - install ocaml-syntax-shims 1.0.0 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install ocplib-endian 1.2 - install ohex 0.2.0 - install psq 0.2.1 - install randomconv 0.2.0 - install re 1.14.0 - install seq base - install stdlib-shims 0.3.0 - install tcpip 9.0.1 - install topkg 1.1.1 - install uutf 1.0.4 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved arp.4.1.0 (cached) -> retrieved angstrom.0.16.1 (cached) -> retrieved astring.0.8.5 (cached) -> retrieved bigstringaf.0.10.0 (cached) -> retrieved alcotest.1.9.1 (cached) -> retrieved charrua.3.0.0 (cached) -> retrieved cmdliner.2.1.0 (cached) -> retrieved cppo.1.8.0 (cached) -> retrieved csexp.1.5.2 (cached) -> retrieved cstruct.6.2.0, cstruct-lwt.6.2.0 (cached) -> retrieved domain-name.0.5.0 (cached) -> retrieved duration.0.2.1 (cached) -> retrieved eqaf.0.10 (cached) -> retrieved ethernet.3.2.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved ipaddr.5.6.1, ipaddr-cstruct.5.6.1, macaddr.5.6.1, macaddr-cstruct.5.6.1 (cached) -> retrieved logs.0.10.0 (cached) -> retrieved lru.0.3.1 (cached) -> retrieved lwt.6.0.0 (cached) -> retrieved lwt-dllist.1.1.0 (cached) -> retrieved metrics.0.5.0 (cached) -> retrieved digestif.1.3.0 (cached) -> retrieved mirage-flow.5.0.0 (cached) -> retrieved mirage-mtime.5.2.0 (cached) -> retrieved mirage-net.4.0.0 (cached) -> retrieved mirage-sleep.4.1.0 (cached) -> retrieved mtime.2.1.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ocplib-endian.1.2 (cached) -> retrieved ohex.0.2.0 (cached) -> retrieved psq.0.2.1 (cached) -> retrieved randomconv.0.2.0 (cached) -> retrieved re.1.14.0 (cached) -> retrieved seq.base (cached) -> installed seq.base -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved tcpip.9.0.1 (cached) -> retrieved mirage-crypto.2.0.2, mirage-crypto-rng.2.0.2 (cached) -> retrieved dune.3.21.0, dune-configurator.3.21.0 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved uutf.1.0.4 (cached) -> installed cmdliner.2.1.0 -> installed ocamlbuild.0.16.1 -> installed ocamlfind.1.9.8 -> installed base-bytes.base -> installed topkg.1.1.1 -> installed uutf.1.0.4 -> installed mtime.2.1.0 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed dune.3.21.0 -> installed csexp.1.5.2 -> installed cppo.1.8.0 -> installed cstruct.6.2.0 -> installed domain-name.0.5.0 -> installed duration.0.2.1 -> installed eqaf.0.10 -> installed lwt-dllist.1.1.0 -> installed macaddr.5.6.1 -> installed metrics.0.5.0 -> installed mirage-mtime.5.2.0 -> installed ocaml-syntax-shims.1.0.0 -> installed ohex.0.2.0 -> installed psq.0.2.1 -> installed randomconv.0.2.0 -> installed re.1.14.0 -> installed stdlib-shims.0.3.0 -> installed ocplib-endian.1.2 -> installed macaddr-cstruct.5.6.1 -> installed lru.0.3.1 -> installed ipaddr.5.6.1 -> installed ipaddr-cstruct.5.6.1 -> installed digestif.1.3.0 -> installed alcotest.1.9.1 -> installed dune-configurator.3.21.0 -> installed bigstringaf.0.10.0 -> installed angstrom.0.16.1 -> installed mirage-crypto.2.0.2 -> installed lwt.6.0.0 -> installed mirage-net.4.0.0 -> installed mirage-flow.5.0.0 -> installed cstruct-lwt.6.2.0 -> installed mirage-sleep.4.1.0 -> installed logs.0.10.0 -> installed ethernet.3.2.0 -> installed mirage-crypto-rng.2.0.2 -> installed arp.4.1.0 -> installed tcpip.9.0.1 -> installed charrua.3.0.0 Done. # Run eval $(opam env) to update the current shell environment 2026-01-16 15:03.36 ---> saved as "f93902598ae3b5894e75940f471d85adc8d453b8d332a3bc9467f86010b6cd04" /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.21.0). The following actions will be performed: === install 7 packages - install camlp-streams 5.0.1 [required by odoc-parser] - install crunch 4.0.0 [required by odoc] - install fpath 0.7.3 [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] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved camlp-streams.5.0.1 (cached) -> retrieved crunch.4.0.0 (cached) -> retrieved fpath.0.7.3 (cached) -> retrieved ptime.1.2.0 (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 fpath.0.7.3 -> installed ptime.1.2.0 -> installed crunch.4.0.0 -> 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-01-16 15:03.55 ---> saved as "7c4755fae51efb4a5becf8dd2a84a460e1cf328c235b9c057bdec5f69d76850c" /src: (copy (src .) (dst /src/)) 2026-01-16 15:03.55 ---> saved as "a7ae319d62a6ff029f8c6a518ee21fa6273b876440c8eadb1f809743c5d24aaf" /src: (run (shell "ODOC_WARN_ERROR=false opam exec -- dune build @doc || (echo \"dune build @doc failed\"; exit 2)")) 2026-01-16 15:03.56 ---> saved as "def81ed9bc5b56ab5261065e68e39c34d7aa307136b05938f7d7216c427676b5" Job succeeded 2026-01-16 15:03.56: Job succeeded