2026-01-16 11:40.55: New job: test mirage/spamtacus https://github.com/mirage/spamtacus.git#refs/heads/main (2d10c6f114e63621bb26999fefd7881f3e673bad) (linux-x86_64:debian-13-4.09_opam-2.5) Base: ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3 Opam project build To reproduce locally: git clone --recursive "https://github.com/mirage/spamtacus.git" -b "main" && cd "spamtacus" && git reset --hard 2d10c6f1 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3 # debian-13-4.09_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.5 /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 spamtacus.opam spamtacus-mirage.opam spamtacus-bayesian.opam ./ RUN opam pin add -yn spamtacus.dev './' && \ opam pin add -yn spamtacus-mirage.dev './' && \ opam pin add -yn spamtacus-bayesian.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="angstrom.0.16.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.2 bigarray-overlap.0.2.1 bigstringaf.0.10.0 cmdliner.2.1.0 coin.0.1.5 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 emile.1.1 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 ke.0.6 logs.0.8.0 lwt.5.9.2 macaddr.5.6.1 mrmime.0.7.0 ocaml.4.09.1 ocaml-base-compiler.4.09.1 ocaml-config.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 pecu.0.7 prettym.0.0.3 ptime.1.2.0 rosetta.0.4.0 rresult.0.7.0 topkg.1.1.1 unstrctrd.0.4 uutf.1.0.4 uuuu.0.4.0 yuscii.0.3.0" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y spamtacus.dev spamtacus-mirage.dev spamtacus-bayesian.dev $DEPS RUN opam install $DEPS COPY --chown=1000:1000 . /src RUN opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-01-16 11:40.55: Using cache hint "mirage/spamtacus-ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3-debian-13-4.09_opam-2.5-e98be3240eab56061221f28c93d59e31" 2026-01-16 11:40.55: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3) (comment debian-13-4.09_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.5 /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 spamtacus.opam spamtacus-mirage.opam spamtacus-bayesian.opam) (dst ./)) (run (network host) (shell "opam pin add -yn spamtacus.dev './' && \ \nopam pin add -yn spamtacus-mirage.dev './' && \ \nopam pin add -yn spamtacus-bayesian.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "angstrom.0.16.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.2 bigarray-overlap.0.2.1 bigstringaf.0.10.0 cmdliner.2.1.0 coin.0.1.5 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 emile.1.1 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 ke.0.6 logs.0.8.0 lwt.5.9.2 macaddr.5.6.1 mrmime.0.7.0 ocaml.4.09.1 ocaml-base-compiler.4.09.1 ocaml-config.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 pecu.0.7 prettym.0.0.3 ptime.1.2.0 rosetta.0.4.0 rresult.0.7.0 topkg.1.1.1 unstrctrd.0.4 uutf.1.0.4 uuuu.0.4.0 yuscii.0.3.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.5 --depext-only -y spamtacus.dev spamtacus-mirage.dev spamtacus-bayesian.dev $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst /src)) (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2026-01-16 11:40.55: Waiting for resource in pool OCluster 2026-01-16 15:46.53: Waiting for worker… 2026-01-16 15:50.09: Got resource from pool OCluster Building on clete All commits already cached HEAD is now at 2d10c6f Merge pull request #12 from mirage/lint (from ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3) Unable to find image 'ocaml/opam:debian-13-ocaml-4.09@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3' locally docker.io/ocaml/opam@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3: Pulling from ocaml/opam 281b80c799de: Already exists 00fc4ac50d5e: Already exists 7dc48a314bea: Already exists 8f654937f9e3: Already exists 1240f6fbe8cc: Already exists f77f967230a1: Already exists 1b4ac3d9a8c2: Already exists 27b61414175d: Already exists 26fabf9b20e0: Already exists b4426e2c299b: Already exists 9c12df827e83: Already exists 9a5608646906: Already exists 2a83342677ae: Already exists 5cbaedd36b85: Already exists 750a9830ac77: Already exists 400560080670: Already exists bad13195b6fa: Already exists b51fe78b498e: Already exists 185ce27e889b: Already exists 8a483dc1e759: Already exists 4de9d6d54a13: Already exists 0c268a22c8a0: Already exists 4f4fb700ef54: Already exists e61881bc2621: Already exists c864a4af1ff0: Already exists 42d012f62ad9: Already exists ccb2ed78fa2e: Already exists 84c22434b2f6: Already exists 18c972827b32: Already exists 4c6dcdff9e80: Already exists 280bf9d33ca6: Already exists 51ce8c29753c: Already exists 5ac80663b9d2: Already exists 93f877c915e3: Already exists 8573ccc6bb69: Already exists d26192cd75ec: Already exists c7cce15b715e: Already exists c998ca7b5976: Already exists 3cd1b61d806b: Already exists 19a26ec5319e: Already exists b1f6813045f3: Already exists 3848f8e0de1f: Already exists 45634817fff9: Already exists 1a80835458d6: Already exists 322b3693140a: Already exists Digest: sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3 Status: Downloaded newer image for ocaml/opam@sha256:0adeafd144dbbf1cc8e6bfcc22b6e35fa89db7df15e22a70313fe366bbfb73d3 2026-01-16 15:50.09 ---> using "c6ce586cd6ccd9ec41cde7e4cc1e2aa0d36fcef65a985a5f4637343d676e3caa" from cache /: (comment debian-13-4.09_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.5 /usr/bin/opam")) 2026-01-16 15:50.09 ---> using "b570d8f7e316265b8126f0a344fdfb298f430c13b4c4132c799ef9c4ad19e3be" 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 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:50.09 ---> using "832309a63b6e07e0d43274d87231766a77e49a04a05ac7bd27fedcddb9341b5d" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-90-generic The OCaml toplevel, version 4.09.1 2.5.0 2026-01-16 15:50.09 ---> using "e9bc9bb2ca6cf40e3ec6478894fe31b11a8ac3d323dc4e66eff2a0725c26ec83" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-16 15:50.09 ---> using "6299ef7f51601a63ad7a614e6d4eeb63b16cdf204e4a9894c9af7cd6a5ea59b5" 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..92679ed614 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 at these versions (e.g. "opam upgrade ocaml.5.4.0"), which will ask permission to downgrade or uninstall the conflicting packages. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2026-01-16 15:50.09 ---> using "b0f4b74a6e5381264c2acf8293d1b04c0809a00ba3d0e35073f86e7873645344" from cache /src: (copy (src spamtacus.opam spamtacus-mirage.opam spamtacus-bayesian.opam) (dst ./)) 2026-01-16 15:50.10 ---> saved as "dc3c1890a23fffdcdd011a1df5c0cd5f5d5964801ad296c099ade805569ef33b" /src: (run (network host) (shell "opam pin add -yn spamtacus.dev './' && \ \nopam pin add -yn spamtacus-mirage.dev './' && \ \nopam pin add -yn spamtacus-bayesian.dev './'")) [NOTE] Package spamtacus does not exist in opam repositories registered in the current switch. [spamtacus.dev] synchronised (file:///src) spamtacus is now pinned to file:///src (version dev) [NOTE] Package spamtacus-mirage does not exist in opam repositories registered in the current switch. [spamtacus-mirage.dev] synchronised (file:///src) spamtacus-mirage is now pinned to file:///src (version dev) [NOTE] Package spamtacus-bayesian does not exist in opam repositories registered in the current switch. [spamtacus-bayesian.dev] synchronised (file:///src) spamtacus-bayesian is now pinned to file:///src (version dev) 2026-01-16 15:50.19 ---> saved as "6ee61de821c9fcb1004cba80296caf66a04fb7714a81f7d87af636407935843b" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-16 15:50.20 ---> saved as "4b819e0ab5079404d347a802dce47e936222d3562ce522a616665ae97f5d5ad5" /src: (env DEPS "angstrom.0.16.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.2 bigarray-overlap.0.2.1 bigstringaf.0.10.0 cmdliner.2.1.0 coin.0.1.5 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 domain-name.0.5.0 dune.3.21.0 dune-configurator.3.21.0 emile.1.1 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 ke.0.6 logs.0.8.0 lwt.5.9.2 macaddr.5.6.1 mrmime.0.7.0 ocaml.4.09.1 ocaml-base-compiler.4.09.1 ocaml-config.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 pecu.0.7 prettym.0.0.3 ptime.1.2.0 rosetta.0.4.0 rresult.0.7.0 topkg.1.1.1 unstrctrd.0.4 uutf.1.0.4 uuuu.0.4.0 yuscii.0.3.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.5 --depext-only -y spamtacus.dev spamtacus-mirage.dev spamtacus-bayesian.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 [9670 kB] - Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [95.9 kB] - Fetched 9997 kB in 2s (4759 kB/s) - Reading package lists... - <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [spamtacus.dev] synchronised (file:///src) [spamtacus-bayesian.dev] synchronised (file:///src) [spamtacus-mirage.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.09.1). [NOTE] Package ocaml is already installed (current version is 4.09.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 system packages will first need to be installed: pkg-config <><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><> + /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "pkg-config" - Selecting previously unselected package libpkgconf3:amd64. - (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20622 files and directories currently installed.) - Preparing to unpack .../libpkgconf3_1.8.1-4_amd64.deb ... - Unpacking libpkgconf3:amd64 (1.8.1-4) ... - Selecting previously unselected package pkgconf-bin. - Preparing to unpack .../pkgconf-bin_1.8.1-4_amd64.deb ... - Unpacking pkgconf-bin (1.8.1-4) ... - Selecting previously unselected package pkgconf:amd64. - Preparing to unpack .../pkgconf_1.8.1-4_amd64.deb ... - Unpacking pkgconf:amd64 (1.8.1-4) ... - Selecting previously unselected package pkg-config:amd64. - Preparing to unpack .../pkg-config_1.8.1-4_amd64.deb ... - Unpacking pkg-config:amd64 (1.8.1-4) ... - Setting up libpkgconf3:amd64 (1.8.1-4) ... - Setting up pkgconf-bin (1.8.1-4) ... - Setting up pkgconf:amd64 (1.8.1-4) ... - Setting up pkg-config:amd64 (1.8.1-4) ... - Processing triggers for libc-bin (2.41-12) ... # To update the current shell environment, run: eval $(opam env) 2026-01-16 15:50.51 ---> saved as "6760cbfde17bd67fd51eba5d487c70d5aecbb81ba790a5015ed8fbeb05c444d9" /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.09.1). [NOTE] Package ocaml is already installed (current version is 4.09.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 37 packages - install angstrom 0.16.1 - install astring 0.8.5 - install base-bytes base - install base64 3.5.2 - install bigarray-overlap 0.2.1 - install bigstringaf 0.10.0 - install cmdliner 2.1.0 - install coin 0.1.5 - install conf-pkg-config 4 - install cppo 1.8.0 - install csexp 1.5.2 - install domain-name 0.5.0 - install dune 3.21.0 - install dune-configurator 3.21.0 - install emile 1.1 - install fmt 0.11.0 - install fpath 0.7.3 - install ipaddr 5.6.1 - install ke 0.6 - install logs 0.8.0 - install lwt 5.9.2 - install macaddr 5.6.1 - install mrmime 0.7.0 - install ocaml-syntax-shims 1.0.0 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install ocplib-endian 1.2 - install pecu 0.7 - install prettym 0.0.3 - install ptime 1.2.0 - install rosetta 0.4.0 - install rresult 0.7.0 - install topkg 1.1.1 - install unstrctrd 0.4 - install uutf 1.0.4 - install uuuu 0.4.0 - install yuscii 0.3.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved angstrom.0.16.1 (cached) -> retrieved astring.0.8.5 (cached) -> retrieved base64.3.5.2 (cached) -> retrieved bigarray-overlap.0.2.1 (cached) -> retrieved bigstringaf.0.10.0 (cached) -> retrieved cmdliner.2.1.0 (cached) -> retrieved coin.0.1.5 (cached) -> retrieved cppo.1.8.0 (cached) -> installed conf-pkg-config.4 -> retrieved csexp.1.5.2 (cached) -> retrieved domain-name.0.5.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved emile.1.1 (cached) -> retrieved fpath.0.7.3 (cached) -> retrieved ipaddr.5.6.1, macaddr.5.6.1 (cached) -> retrieved ke.0.6 (cached) -> retrieved logs.0.8.0 (cached) -> retrieved lwt.5.9.2 (cached) -> retrieved mrmime.0.7.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocplib-endian.1.2 (cached) -> retrieved pecu.0.7 (cached) -> retrieved prettym.0.0.3 (cached) -> retrieved rosetta.0.4.0 (cached) -> retrieved rresult.0.7.0 (cached) -> retrieved ptime.1.2.0 (cached) -> retrieved unstrctrd.0.4 (cached) -> retrieved uutf.1.0.4 (cached) -> retrieved uuuu.0.4.0 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved yuscii.0.3.0 (cached) -> retrieved dune.3.21.0, dune-configurator.3.21.0 (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 rresult.0.7.0 -> installed uutf.1.0.4 -> installed ptime.1.2.0 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed fpath.0.7.3 -> installed dune.3.21.0 -> installed bigarray-overlap.0.2.1 -> installed csexp.1.5.2 -> installed base64.3.5.2 -> installed coin.0.1.5 -> installed cppo.1.8.0 -> installed domain-name.0.5.0 -> installed ke.0.6 -> installed macaddr.5.6.1 -> installed ocaml-syntax-shims.1.0.0 -> installed pecu.0.7 -> installed uuuu.0.4.0 -> installed yuscii.0.3.0 -> installed ocplib-endian.1.2 -> installed rosetta.0.4.0 -> installed ipaddr.5.6.1 -> installed dune-configurator.3.21.0 -> installed bigstringaf.0.10.0 -> installed angstrom.0.16.1 -> installed prettym.0.0.3 -> installed unstrctrd.0.4 -> installed emile.1.1 -> installed mrmime.0.7.0 -> installed lwt.5.9.2 -> installed logs.0.8.0 Done. # To update the current shell environment, run: eval $(opam env) 2026-01-16 15:53.19 ---> saved as "937054863507baba5c44ee921cbbfac73a4c94f0da4f9718496625709f73c723" /src: (copy (src .) (dst /src)) 2026-01-16 15:53.20 ---> saved as "fb0fca6513c3ec1f30dcbe8dae61a73a9834be43a6743e69a9dd28e972a1fe60" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) 2026-01-16 15:54.17 ---> saved as "1a26ec31e1e1a098245b2769770586af2b35977cdaad3bf260994f9d69656f10" Job succeeded 2026-01-16 15:54.17: Job succeeded