2026-04-22 14:13.06: New job: test hannesm/duration https://github.com/hannesm/duration.git#refs/heads/main (7bf34d3c03586b9a8680a617f2b3a30f16513710) (freebsd-x86_64:freebsd-14.3-5.4_opam-2.5) Base: freebsd-14.3-ocaml-5.4 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 freebsd-14.3-ocaml-5.4 # freebsd-14.3-5.4_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/local/bin/opam-2.5 /usr/local/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-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.1 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 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-22 14:13.06: Using cache hint "hannesm/duration-freebsd-14.3-ocaml-5.4-freebsd-14.3-5.4_opam-2.5-479d0115ba77288130e28315e39467a5" 2026-04-22 14:13.06: Using OBuilder spec: ((from freebsd-14.3-ocaml-5.4) (comment freebsd-14.3-5.4_opam-2.5) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/local/bin/opam-2.5 /usr/local/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-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.1 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 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-22 14:13.06: Waiting for resource in pool OCluster 2026-04-22 14:58.44: Waiting for worker… 2026-04-22 15:48.49: Got resource from pool OCluster Building on rosemary All commits already cached HEAD is now at 7bf34d3 changes for 0.3.1 (from freebsd-14.3-ocaml-5.4) 2026-04-22 15:45.12 ---> using "463e9b939b79b2568bf98b05cff00f85b3ec5717170cf88773a44ae3b08f11e7" from cache /: (comment freebsd-14.3-5.4_opam-2.5) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/local/bin/opam-2.5 /usr/local/bin/opam")) 2026-04-22 15:45.13 ---> using "e61cc6f90204801db314d0aa3481b9199ff82a8a270abed9917e5690810c70ed" from cache /src: (run (shell "opam init --reinit -ni")) No configuration file found, using 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.1 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 1 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=1 --global Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] no changes from git+file:///home/opam/opam-repository 2026-04-22 15:45.13 ---> using "991489237400f99acdd227f8234d37ac98134e18d1f3c091be7204acf59248ac" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) FreeBSD 14.3-RELEASE-p3 The OCaml toplevel, version 5.4.1 2.5.0 2026-04-22 15:45.13 ---> using "add5f681a375911dcea6c14418d3635cba7f82294574aa9177e3a0a9fa01d5bd" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-04-22 15:45.13 ---> using "56f48ccddab22348a30c0beee9b14f69a3990eb0fbd9a0ccd0040d116cc1fce5" 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 The following packages are not being upgraded because the new versions conflict with other installed packages: - ocaml.5.5.0 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. 2026-04-22 15:45.14 ---> using "a59e9e8b30fc610e066b70950d76d735bccf907666272bc868dfdcfacfd22c94" from cache /src: (copy (src duration.opam) (dst ./)) 2026-04-22 15:45.14 ---> saved as "a70916901e51b1e709ea7620ad20c71b06678620cca34d4a161fefc44272370c" /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:45.15 ---> saved as "6a9cba72606ef0427e4e3141def4c2d01f902994b58c884286c00042a4f90663" /src: (run (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-04-22 15:45.16 ---> saved as "f6125b82683fce607f40989f1df0035175c02543680c6936e4b84522373351a6" /src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.1 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 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")) [WARNING] Unknown update command for bsd, skipping system update <><> 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 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml is already installed (current version is 5.4.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-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). 2026-04-22 15:45.24 ---> saved as "1688d0e38148c53c5246bd941613a8899965967bcdc6bf2d620f7617ac0713c6" /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 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml is already installed (current version is 5.4.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-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains 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 ∗ alcotest 1.9.1 ∗ astring 0.8.5 ∗ cmdliner 2.1.1 ∗ dune 3.22.2 ∗ fmt 0.11.0 ∗ 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 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> ⬇ retrieved cmdliner.2.1.1 (cached) ⬇ retrieved astring.0.8.5 (cached) ⬇ retrieved alcotest.1.9.1 (cached) ⬇ retrieved fmt.0.11.0 (cached) ⬇ retrieved ocaml-syntax-shims.1.0.0 (cached) ⬇ retrieved ocamlfind.1.9.8 (cached) ⬇ retrieved re.1.14.0 (cached) ⬇ retrieved ocamlbuild.0.16.1 (cached) ⬇ retrieved stdlib-shims.0.3.0 (cached) ⬇ retrieved topkg.1.1.1 (cached) ⬇ retrieved uutf.1.0.4 (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. 2026-04-22 15:46.23 ---> saved as "907b7a868cc21ea61cb2087db52c126c20e7f02a788fd39c4c31b66001a6187f" /src: (copy (src .) (dst /src)) 2026-04-22 15:46.24 ---> saved as "f023214b176bc587e2a819480c35aceef1cfaea7db46bd8f7b36dd623484bc36" /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 `9N2W0Y3C'. [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.005s. 40 tests run. 2026-04-22 15:46.25 ---> saved as "95613ffa34f3884e1d369131464014ca8d7596c054c6c8498d32d3e0a0f20479" Job succeeded 2026-04-22 15:50.02: Job succeeded