2026-04-22 14:13.06: New job: test hannesm/duration https://github.com/hannesm/duration.git#refs/heads/main (7bf34d3c03586b9a8680a617f2b3a30f16513710) (linux-x86_64:debian-13-4.14+flambda_opam-2.5) Base: ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88 Opam project build To reproduce locally: git clone --recursive "https://github.com/hannesm/duration.git" -b "main" && cd "duration" && git reset --hard 7bf34d3c cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88 # debian-13-4.14+flambda_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 036883c5402b41e0d35f6b200245cc7c3a302395 || git fetch origin master) && git reset -q --hard 036883c5402b41e0d35f6b200245cc7c3a302395 && 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.1 dune.3.22.2 fmt.0.11.0 ocaml.4.14.3 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.3+options 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-22 14:13.06: Using cache hint "hannesm/duration-ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88-debian-13-4.14+flambda_opam-2.5-913e243fb42d1b2014ac109dac849ef4" 2026-04-22 14:13.06: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88) (comment debian-13-4.14+flambda_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 036883c5402b41e0d35f6b200245cc7c3a302395 || git fetch origin master) && git reset -q --hard 036883c5402b41e0d35f6b200245cc7c3a302395 && 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.1 dune.3.22.2 fmt.0.11.0 ocaml.4.14.3 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.3+options 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-22 14:13.06: Waiting for resource in pool OCluster 2026-04-22 15:51.07: Waiting for worker… 2026-04-22 15:53.18: Got resource from pool OCluster Building on doris.caelum.ci.dev All commits already cached HEAD is now at 7bf34d3 changes for 0.3.1 (from ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88) Unable to find image 'ocaml/opam:debian-13-ocaml-4.14-flambda@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88' locally docker.io/ocaml/opam@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88: Pulling from ocaml/opam a7730063fcfe: Already exists 1a27fd2181de: Pulling fs layer c29591c91388: Pulling fs layer 356a64daa753: Pulling fs layer ac02f8f2062b: Pulling fs layer 1a27fd2181de: Waiting aaa2f390e4c8: Pulling fs layer c29591c91388: Waiting 356a64daa753: Waiting b668811757f6: Pulling fs layer ac02f8f2062b: Waiting 32fd4e1a774f: Pulling fs layer aaa2f390e4c8: Waiting b1d486fb8fdf: Pulling fs layer b668811757f6: Waiting cf8a2024f299: Pulling fs layer 32fd4e1a774f: Waiting b1d486fb8fdf: Waiting 8c4a5dac67c3: Pulling fs layer 6adfe24d7b40: Pulling fs layer dccd6e3c0589: Pulling fs layer cf8a2024f299: Waiting 2ee4bcb55cd4: Pulling fs layer 8c4a5dac67c3: Waiting 6adfe24d7b40: Waiting 2dc3b58478d7: Pulling fs layer dccd6e3c0589: Waiting 2ee4bcb55cd4: Waiting daf15e5c44c6: Pulling fs layer 564e978a8088: Pulling fs layer 2dc3b58478d7: Waiting 25a652a8c456: Pulling fs layer daf15e5c44c6: Waiting b3bfea7bff3f: Pulling fs layer 564e978a8088: Waiting a00f2937f570: Pulling fs layer 25a652a8c456: Waiting b3bfea7bff3f: Waiting 78bd1737ebff: Pulling fs layer 4f4fb700ef54: Pulling fs layer 4291a055edd7: Pulling fs layer a00f2937f570: Waiting 3c2b2836d59a: Pulling fs layer 78bd1737ebff: Waiting 4f4fb700ef54: Waiting 7b3e96544a52: Pulling fs layer 4291a055edd7: Waiting 3c2b2836d59a: Waiting c72503effb14: Pulling fs layer bca08df11a10: Pulling fs layer 7b3e96544a52: Waiting 2ab0829b2daf: Pulling fs layer 1d246d4da211: Pulling fs layer bca08df11a10: Waiting a09cb4870027: Pulling fs layer c72503effb14: Waiting 2ce07b4fe7c0: Pulling fs layer 2ab0829b2daf: Waiting 6b96f28d505e: Pulling fs layer 1d246d4da211: Waiting a09cb4870027: Waiting 2ce07b4fe7c0: Waiting b6ad36bba9bf: Pulling fs layer 6b96f28d505e: Waiting 56d62791a0f9: Pulling fs layer 4d60780055d1: Pulling fs layer 43f57a7c44cb: Pulling fs layer b6ad36bba9bf: Waiting 56d62791a0f9: Waiting f21057dc4e85: Pulling fs layer e0d2ca1300ed: Pulling fs layer 9da2f7598f8e: Pulling fs layer 43f57a7c44cb: Waiting cb569bb28593: Pulling fs layer f21057dc4e85: Waiting e0d2ca1300ed: Waiting 4d60780055d1: Waiting c35a156f8c8c: Pulling fs layer 9da2f7598f8e: Waiting cb569bb28593: Waiting cd4659cecde9: Pulling fs layer c35a156f8c8c: Waiting dbb3c6331024: Pulling fs layer 9a75e7905027: Pulling fs layer cd4659cecde9: Waiting dbb3c6331024: Waiting 9a75e7905027: Waiting 1a27fd2181de: Download complete 1a27fd2181de: Pull complete c29591c91388: Download complete c29591c91388: Pull complete 356a64daa753: Download complete 356a64daa753: Pull complete ac02f8f2062b: Download complete ac02f8f2062b: Pull complete aaa2f390e4c8: Download complete b668811757f6: Download complete 32fd4e1a774f: Verifying Checksum 32fd4e1a774f: Download complete b1d486fb8fdf: Verifying Checksum b1d486fb8fdf: Download complete cf8a2024f299: Verifying Checksum cf8a2024f299: Download complete 8c4a5dac67c3: Verifying Checksum 8c4a5dac67c3: Download complete 6adfe24d7b40: Download complete dccd6e3c0589: Verifying Checksum dccd6e3c0589: Download complete 2ee4bcb55cd4: Verifying Checksum 2ee4bcb55cd4: Download complete 2dc3b58478d7: Download complete daf15e5c44c6: Verifying Checksum daf15e5c44c6: Download complete 564e978a8088: Verifying Checksum 564e978a8088: Download complete 25a652a8c456: Download complete aaa2f390e4c8: Pull complete b668811757f6: Pull complete b3bfea7bff3f: Download complete 32fd4e1a774f: Pull complete b1d486fb8fdf: Pull complete a00f2937f570: Verifying Checksum a00f2937f570: Download complete cf8a2024f299: Pull complete 78bd1737ebff: Download complete 8c4a5dac67c3: Pull complete 6adfe24d7b40: Pull complete 4f4fb700ef54: Download complete dccd6e3c0589: Pull complete 4291a055edd7: Download complete 2ee4bcb55cd4: Pull complete 2dc3b58478d7: Pull complete daf15e5c44c6: Pull complete 3c2b2836d59a: Download complete 564e978a8088: Pull complete 7b3e96544a52: Download complete c72503effb14: Download complete 25a652a8c456: Pull complete b3bfea7bff3f: Pull complete a00f2937f570: Pull complete 78bd1737ebff: Pull complete bca08df11a10: Download complete 4f4fb700ef54: Pull complete 4291a055edd7: Pull complete 3c2b2836d59a: Pull complete 7b3e96544a52: Pull complete c72503effb14: Pull complete bca08df11a10: Pull complete 2ab0829b2daf: Download complete 2ab0829b2daf: Pull complete 1d246d4da211: Verifying Checksum 1d246d4da211: Download complete 1d246d4da211: Pull complete a09cb4870027: Download complete a09cb4870027: Pull complete 2ce07b4fe7c0: Download complete 2ce07b4fe7c0: Pull complete 6b96f28d505e: Verifying Checksum 6b96f28d505e: Download complete 6b96f28d505e: Pull complete b6ad36bba9bf: Download complete b6ad36bba9bf: Pull complete 56d62791a0f9: Download complete 56d62791a0f9: Pull complete 43f57a7c44cb: Download complete e0d2ca1300ed: Download complete 9da2f7598f8e: Download complete cb569bb28593: Verifying Checksum cb569bb28593: Download complete 4d60780055d1: Verifying Checksum 4d60780055d1: Download complete 4d60780055d1: Pull complete 43f57a7c44cb: Pull complete f21057dc4e85: Download complete f21057dc4e85: Pull complete e0d2ca1300ed: Pull complete 9da2f7598f8e: Pull complete cb569bb28593: Pull complete cd4659cecde9: Verifying Checksum cd4659cecde9: Download complete dbb3c6331024: Verifying Checksum dbb3c6331024: Download complete 9a75e7905027: Download complete c35a156f8c8c: Verifying Checksum c35a156f8c8c: Download complete c35a156f8c8c: Pull complete cd4659cecde9: Pull complete dbb3c6331024: Pull complete 9a75e7905027: Pull complete Digest: sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88 Status: Downloaded newer image for ocaml/opam@sha256:1c84b7b0f5b503bdda57a43dae691d60ba005e2f1736937ec42b060be3539b88 2026-04-22 15:53.19 ---> using "56f369bc7c73ce6f148f0a2f412d9c3c7c780db13a6ec27166a36753d4875a52" from cache /: (comment debian-13-4.14+flambda_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-22 15:53.19 ---> using "087ed943498ca8425bbfcdbb4626243bbb1e20c97fad6beb9fa73dbfd9213294" 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 [NOTE] The 'jobs' option was reset, its value was 71 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using: opam option jobs=71 --global Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-04-22 15:53.19 ---> using "441cbf86a1a9aa9170c8a971e5eae1f82cb9490c691d2410c5ae67cca3173687" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-106-generic The OCaml toplevel, version 4.14.3 2.5.0 2026-04-22 15:53.19 ---> using "a90eb38da1e52aab49f43fe140d5dee664d6e84900211ead7be06dc1d4786331" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-04-22 15:53.19 ---> using "44d363dbd17fb794423c81b4e021ff25b87f13aa64be5abbecd5b894c6a4d7ee" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 036883c5402b41e0d35f6b200245cc7c3a302395 || git fetch origin master) && git reset -q --hard 036883c5402b41e0d35f6b200245cc7c3a302395 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD 42844088d7..80ba534fc6 master -> origin/master 036883c540 Merge pull request #29788 from dbuenzli/b0-publish-cmdliner.2.1.1 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository default (at git+file:///home/opam/opam-repository): [WARNING] opam is out-of-date. Please consider updating it (https://opam.ocaml.org/doc/Install.html) default (at git+file:///home/opam/opam-repository): [INFO] opam 2.5.1 includes security fixes; please consider upgrading (https://opam.ocaml.org/doc/Install.html) 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-22 15:53.19 ---> using "43211a9396b83cbadd5b1972822772d15294ec1770e1b76a188456494d57f1d7" from cache /src: (copy (src duration.opam) (dst ./)) 2026-04-22 15:53.19 ---> saved as "962271c908099a8d3f319dc377395b9a9d8b91deb07e3db841da7dc32b9d1906" /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-22 15:53.21 ---> saved as "701dcef3837f737fb63e662e53918a75ed763bda026105f0186cd26746cf870c" /src: (run (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-04-22 15:53.22 ---> saved as "4becd25c6cbe3e2a957710c63e37c51022ccf303122ed01ea3d6d4f6e9c550ed" /src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base cmdliner.2.1.1 dune.3.22.2 fmt.0.11.0 ocaml.4.14.3 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.3+options 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 amd64 Packages [127 kB] - Fetched 217 kB in 0s (1842 kB/s) - Reading package lists... <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [duration.dev] synchronised (file:///src) [NOTE] Package ocaml-variants is already installed (current version is 4.14.3+options). [NOTE] Package ocaml-config is already installed (current version is 2). [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-22 15:53.32 ---> saved as "44fbcb9fe97e8b1918ae7b3697ecfbd711438d232b4bbb855328a49bc4e5bb25" /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) [NOTE] Package ocaml-variants is already installed (current version is 4.14.3+options). [NOTE] Package ocaml-config is already installed (current version is 2). [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.1 - install dune 3.22.2 - 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.1 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ocamlbuild.0.16.1 (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.2 (cached) -> installed cmdliner.2.1.1 -> installed ocamlfind.1.9.8 -> installed ocamlbuild.0.16.1 -> installed topkg.1.1.1 -> installed uutf.1.0.4 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed dune.3.22.2 -> 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-22 15:54.18 ---> saved as "1b87c28596ee20bfa83b3baaf061ff42e483b09b7d8273d373c0f6b807559293" /src: (copy (src .) (dst /src)) 2026-04-22 15:54.19 ---> saved as "fe53b05cc07b9e243e91ffb868df251911e510bcde6a0dfcb991f9fd18aa5524" /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 `Q00BO2H3'. [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. [OK] Duration 33 of_string_exn. [OK] Duration 34 of_string_exn: composite. [OK] Duration 35 of_string_exn: duplicate metrics. [OK] Duration 36 of_string_exn: invalid metric. [OK] Duration 37 of_string_exn: malformed input. [OK] Duration 38 of_string_exn: out of range. [OK] Duration 39 of_string_exn: empty string. Full test results in `/src/_build/default/_build/_tests/Duration tests'. Test Successful in 0.003s. 40 tests run. 2026-04-22 15:54.20 ---> saved as "53900387d95909982f4952e1ea89ee064efbd90dd1f067d7f076c076a52a0f1e" Job succeeded 2026-04-22 15:54.20: Job succeeded