2026-02-24 18:09.28: New job: test robur-coop/dnsvizor https://github.com/robur-coop/dnsvizor.git#refs/heads/main (2d4e701ec03fa096b2ecedd1626c89c09921dc76) (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 2d4e701e 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 f15d82d4876db0d9c8ffca03adbd331cd7612081 || git fetch origin master) && git reset -q --hard f15d82d4876db0d9c8ffca03adbd331cd7612081 && 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.1.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.1 dune-configurator.3.21.1 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.2 ipaddr-cstruct.5.6.2 logs.0.10.0 lru.0.3.1 lwt.6.1.1 lwt-dllist.1.1.0 macaddr.5.6.2 macaddr-cstruct.5.6.2 metrics.0.5.0 mirage-crypto.2.0.3 mirage-crypto-rng.2.0.3 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-02-24 18:09.28: Using cache hint "robur-coop/dnsvizor-ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216-alpine-3.22-4.14_opam-2.5-e3bf50d207449d775724784ae343f830" 2026-02-24 18:09.28: 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 f15d82d4876db0d9c8ffca03adbd331cd7612081 || git fetch origin master) && git reset -q --hard f15d82d4876db0d9c8ffca03adbd331cd7612081 && 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.1.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.1 dune-configurator.3.21.1 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.2 ipaddr-cstruct.5.6.2 logs.0.10.0 lru.0.3.1 lwt.6.1.1 lwt-dllist.1.1.0 macaddr.5.6.2 macaddr-cstruct.5.6.2 metrics.0.5.0 mirage-crypto.2.0.3 mirage-crypto-rng.2.0.3 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-02-24 18:09.28: Waiting for resource in pool OCluster 2026-02-24 18:09.28: Waiting for worker… 2026-02-24 18:17.12: Got resource from pool OCluster Building on odawa.caelum.ci.dev All commits already cached HEAD is now at 2d4e701 add PTR record in dhcp_lease_cb (#128) (from ocaml/opam:alpine-3.22-ocaml-4.14@sha256:1c3a5ef9216cc43d14bea2bc9b42f4b1ee30cd78bf2e6993672b4c0c52909216) 2026-02-24 18:33.51 ---> 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-02-24 18:33.51 ---> 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-02-24 18:33.51 ---> 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-02-24 18:33.51 ---> using "49acb3bbc71f8cee0ac24a0653bcca777fc6f3873bc89b90d919182499bf3c26" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-02-24 18:33.51 ---> 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 f15d82d4876db0d9c8ffca03adbd331cd7612081 || git fetch origin master) && git reset -q --hard f15d82d4876db0d9c8ffca03adbd331cd7612081 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD a6b2f19780..f15d82d487 master -> origin/master f15d82d487 Merge pull request #29449 from raphael-proust/opam-publish-lwt.6.1.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-02-24 18:33.51 ---> using "8229ffa5f29833df1bc891b3132ad222f373239004b12c4ff6c571444cb30fe7" from cache /src: (copy (src dnsvizor.opam) (dst ./)) 2026-02-24 18:33.51 ---> using "5fb46f1a91877ca89409e3b29add3caac1c85b1c5dcc695af29eeee243fd4482" 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-02-24 18:33.51 ---> using "c4646780bc88da1979d6321dfa9fa3e83d7281f8c03dd1ec4e1d43f0455534f6" from cache /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-02-24 18:33.51 ---> using "8c982eb906cac2f529209f2237bf686fb1e3bcec56934b2c77640ffba9f6ba75" 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.1.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.1 dune-configurator.3.21.1 duration.0.2.1 eqaf.0.10 ethernet.3.2.0 fmt.0.11.0 ipaddr.5.6.2 ipaddr-cstruct.5.6.2 logs.0.10.0 lru.0.3.1 lwt.6.1.1 lwt-dllist.1.1.0 macaddr.5.6.2 macaddr-cstruct.5.6.2 metrics.0.5.0 mirage-crypto.2.0.3 mirage-crypto-rng.2.0.3 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.3-43-g7447efb1e76 [https://dl-cdn.alpinelinux.org/alpine/v3.22/main] - v3.22.3-42-g2b363deb3f7 [https://dl-cdn.alpinelinux.org/alpine/v3.22/community] - v20260127-1646-g03ab6cb1221 [https://dl-cdn.alpinelinux.org/alpine/edge/main] - v20260127-1654-gd3fa61ff85b [https://dl-cdn.alpinelinux.org/alpine/edge/community] - v20260127-1652-g98db12245eb [https://dl-cdn.alpinelinux.org/alpine/edge/testing] - OK: 61038 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-02-24 18:33.51 ---> using "81c4e69543789af51ab883020798414ef0d1821f8b263847743762be521dfdb7" 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.1.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.1 - install dune-configurator 3.21.1 - install duration 0.2.1 - install eqaf 0.10 - install ethernet 3.2.0 - install fmt 0.11.0 - install ipaddr 5.6.2 - install ipaddr-cstruct 5.6.2 - install logs 0.10.0 - install lru 0.3.1 - install lwt 6.1.1 - install lwt-dllist 1.1.0 - install macaddr 5.6.2 - install macaddr-cstruct 5.6.2 - install metrics 0.5.0 - install mirage-crypto 2.0.3 - install mirage-crypto-rng 2.0.3 - 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.1.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.2, ipaddr-cstruct.5.6.2, macaddr.5.6.2, macaddr-cstruct.5.6.2 (cached) -> retrieved logs.0.10.0 (cached) -> retrieved lru.0.3.1 (cached) -> retrieved lwt.6.1.1 (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 dune.3.21.1, dune-configurator.3.21.1 (cached) -> retrieved mirage-crypto.2.0.3, mirage-crypto-rng.2.0.3 (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 seq.base (cached) -> retrieved randomconv.0.2.0 (cached) -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved re.1.14.0 (cached) -> retrieved tcpip.9.0.1 (cached) -> installed cmdliner.2.1.0 -> installed seq.base -> retrieved topkg.1.1.1 (cached) -> retrieved uutf.1.0.4 (cached) -> installed ocamlfind.1.9.8 -> installed base-bytes.base -> installed ocamlbuild.0.16.1 -> 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.1 -> 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.2 -> 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.2 -> installed lru.0.3.1 -> installed ipaddr.5.6.2 -> installed ipaddr-cstruct.5.6.2 -> installed digestif.1.3.0 -> installed alcotest.1.9.1 -> installed dune-configurator.3.21.1 -> installed bigstringaf.0.10.0 -> installed angstrom.0.16.1 -> installed mirage-crypto.2.0.3 -> installed lwt.6.1.1 -> installed mirage-flow.5.0.0 -> installed mirage-net.4.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.3 -> installed arp.4.1.0 -> installed tcpip.9.0.1 -> installed charrua.3.1.0 Done. # Run eval $(opam env) to update the current shell environment 2026-02-24 18:33.51 ---> using "0efa4bf99ecb0fcd082d30b9c360198af42021fc202d0353516bbeda1a6cc858" from cache /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.1). 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-02-24 18:33.51 ---> using "480338c10d0f2dbfc160bfc9dc72b7ddc28038cb608abcaa824a100ca0f5aca8" from cache /src: (copy (src .) (dst /src/)) 2026-02-24 18:33.51 ---> saved as "101d0180ac44c7abe2bc1783eae35c1556feb7612308840bc46d2b64e7953008" /src: (run (shell "ODOC_WARN_ERROR=false opam exec -- dune build @doc || (echo \"dune build @doc failed\"; exit 2)")) 2026-02-24 18:33.51 ---> saved as "e6fd9898b11f1e6cbc4d03a8f8674412889eed5669747ccc2c7b1edfe5434a2e" Job succeeded 2026-02-24 18:33.51: Job succeeded