2026-04-13 10:23.20: New job: test hannesm/duration https://github.com/hannesm/duration.git#refs/heads/main (42b811fcf5c0e07ccf17601d9a8a2c7f11e6f272) (linux-arm64:debian-13-4.14_arm64_opam-2.5) Base: ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109 Opam project build To reproduce locally: git clone --recursive "https://github.com/hannesm/duration.git" -b "main" && cd "duration" && git reset --hard 42b811fc cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109 # debian-13-4.14_arm64_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 d06cfb1853afceb1dc127f88edaac3f8110bf6cc || git fetch origin master) && git reset -q --hard d06cfb1853afceb1dc127f88edaac3f8110bf6cc && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 duration.opam ./ RUN opam pin add -yn duration.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.1 fmt.0.11.0 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y duration.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-04-13 10:23.20: Using cache hint "hannesm/duration-ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109-debian-13-4.14_arm64_opam-2.5-8443bdcb30f0dcfef175315e01b3cb68" 2026-04-13 10:23.20: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109) (comment debian-13-4.14_arm64_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 d06cfb1853afceb1dc127f88edaac3f8110bf6cc || git fetch origin master) && git reset -q --hard d06cfb1853afceb1dc127f88edaac3f8110bf6cc && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src duration.opam) (dst ./)) (run (network host) (shell "opam pin add -yn duration.dev './'")) (run (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.1 fmt.0.11.0 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 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.5 --depext-only -y duration.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-04-13 10:23.20: Waiting for resource in pool OCluster 2026-04-13 10:25.11: Waiting for worker… 2026-04-13 10:48.02: Got resource from pool OCluster Building on kydoime.caelum.ci.dev All commits already cached HEAD is now at 42b811f add maintenance intent (from ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109) Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109' locally docker.io/ocaml/opam@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109: Pulling from ocaml/opam Digest: sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109 Status: Downloaded newer image for ocaml/opam@sha256:8989701a486d9f3ff71f44dde5724ff413e23b6d564a6bd5c6e16f34b3e2f109 2026-04-13 10:48.03 ---> using "853e3fdac7d8137a097410d60184de0a363c7c18364d78eaac3fa862c4d4862b" from cache /: (comment debian-13-4.14_arm64_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-04-13 10:48.03 ---> using "08ea8f836be9d9dbc14b98292c65edba305af4c661e7cc2804e3b5ce5fe2519e" 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-04-13 10:48.03 ---> using "b40aea51f0301344ae3f42fcd7534cc2abca62a171f9ac0dbe434190a7a52f5e" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-107-generic The OCaml toplevel, version 4.14.3 2.5.0 2026-04-13 10:48.03 ---> using "496ba401a603502712c0f8c7dc229480b2690d50c4cbcb035289331a652d2ab3" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-04-13 10:48.03 ---> using "6817a84d7a32db085e0d3669870aebe83f18b6dfb95e1e56d33055a33ca58097" 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")) 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 at these versions (e.g. "opam upgrade ocaml.5.5.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-04-13 10:48.03 ---> using "425d93cdb2572c0affdfea9caddba896d335ecc199c3dcc1b1dfc97e16805f43" from cache /src: (copy (src duration.opam) (dst ./)) 2026-04-13 10:48.03 ---> using "2d47e9caea45544468315ef8a46202b162d21909574f0357854766b21119b121" from cache /src: (run (network host) (shell "opam pin add -yn duration.dev './'")) [duration.dev] synchronised (file:///src) duration is now pinned to file:///src (version dev) 2026-04-13 10:48.03 ---> using "2f53836c0d83a86eef9ebccf85cba6801214f1a5cd44a3ee9093476de01d04c8" from cache /src: (run (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-04-13 10:48.03 ---> using "abfd5e94fed6991165d4d65db0c27b4a795af4a5d0ec7169535315f4a8568abe" from cache /src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.1 fmt.0.11.0 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 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.5 --depext-only -y duration.dev $DEPS")) + /usr/bin/sudo "apt-get" "update" - Hit:1 http://deb.debian.org/debian trixie InRelease - 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-security trixie-security/main arm64 Packages [122 kB] - Fetched 213 kB in 0s (509 kB/s) - Reading package lists... - <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [duration.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.3). [NOTE] Package ocaml is already installed (current version is 4.14.3). [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). # To update the current shell environment, run: eval $(opam env) 2026-04-13 10:48.03 ---> using "58dc3487eea210827ce7cdbb5e96b345978c300632c6f1d79765f680f37fbe17" 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.3). [NOTE] Package ocaml is already installed (current version is 4.14.3). [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 12 packages - install alcotest 1.9.1 - install astring 0.8.5 - install cmdliner 2.1.0 - install dune 3.22.1 - install fmt 0.11.0 - install ocaml-syntax-shims 1.0.0 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install re 1.14.0 - install stdlib-shims 0.3.0 - install topkg 1.1.1 - install uutf 1.0.4 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved alcotest.1.9.1 (cached) -> retrieved astring.0.8.5 (cached) -> retrieved cmdliner.2.1.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved re.1.14.0 (cached) -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved uutf.1.0.4 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved dune.3.22.1 (cached) -> installed cmdliner.2.1.0 -> installed ocamlbuild.0.16.1 -> installed ocamlfind.1.9.8 -> installed topkg.1.1.1 -> installed uutf.1.0.4 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed dune.3.22.1 -> installed stdlib-shims.0.3.0 -> installed ocaml-syntax-shims.1.0.0 -> installed re.1.14.0 -> installed alcotest.1.9.1 Done. # To update the current shell environment, run: eval $(opam env) 2026-04-13 10:48.51 ---> saved as "2130dd53f3ece51225673da4343ab9616652ee8535cd569a9d7e1cdc5ec637bf" /src: (copy (src .) (dst /src)) 2026-04-13 10:48.52 ---> saved as "76d95bffa52753a7dac04c8ca66b27eecce564cae212bdf852e84608b05f94c4" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) (cd _build/default && ./tests.exe) Testing `Duration tests'. This run has ID `9E8OMBV1'. [OK] Duration 0 of_us is good. [OK] Duration 1 to_us is good. [OK] Duration 2 inverse of/to_us. [OK] Duration 3 of_us is good. [OK] Duration 4 to_us is good. [OK] Duration 5 inverse of/to_us. [OK] Duration 6 of_ms is good. [OK] Duration 7 to_ms is good. [OK] Duration 8 inverse of/to_ms. [OK] Duration 9 of_ms is good. [OK] Duration 10 to_ms is good. [OK] Duration 11 inverse of/to_ms. [OK] Duration 12 of_sec is good. [OK] Duration 13 to_sec is good. [OK] Duration 14 inverse of/to_sec. [OK] Duration 15 of_sec is good. [OK] Duration 16 to_sec is good. [OK] Duration 17 inverse of/to_sec. [OK] Duration 18 of_min is good. [OK] Duration 19 to_min is good. [OK] Duration 20 inverse of/to_min. [OK] Duration 21 of_hour is good. [OK] Duration 22 to_hour is good. [OK] Duration 23 inverse of/to_hour. [OK] Duration 24 of_day is good. [OK] Duration 25 to_day is good. [OK] Duration 26 inverse of/to_day. [OK] Duration 27 of_year is good. [OK] Duration 28 to_year is good. [OK] Duration 29 inverse of/to_year. [OK] Duration 30 of_f is good. [OK] Duration 31 to_f is good. [OK] Duration 32 inverse of/to_f. Full test results in `/src/_build/default/_build/_tests/Duration tests'. Test Successful in 0.002s. 33 tests run. 2026-04-13 10:48.54 ---> saved as "b54f9755a9cc7eb1320a84978773c90a48d62648c4793e5c39cf25e75e73e5ae" Job succeeded 2026-04-13 10:48.55: Job succeeded