2026-04-16 21:22.17: New job: test hannesm/duration https://github.com/hannesm/duration.git#refs/heads/main (ae4116d0d2f8a6f0ee4b1aa62cb04dd8490203e4) (macos-arm64:macos-homebrew-4.14_arm64_opam-2.5) Base: macos-homebrew-ocaml-4.14 Opam project build To reproduce locally: git clone --recursive "https://github.com/hannesm/duration.git" -b "main" && cd "duration" && git reset --hard ae4116d0 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM macos-homebrew-ocaml-4.14 # macos-homebrew-4.14_arm64_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" RUN ln -f ~/local/bin/opam-2.5 ~/local/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version RUN cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 duration.opam ./src/./ RUN opam pin add -yn duration.dev './src/./' RUN echo '(lang dune 3.0)' > './src/./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.2 fmt.0.11.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 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 cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-04-16 21:22.17: Using cache hint "hannesm/duration-macos-homebrew-ocaml-4.14-macos-homebrew-4.14_arm64_opam-2.5-112ba488c3eb59281715685a7a50978e" 2026-04-16 21:22.17: Using OBuilder spec: ((from macos-homebrew-ocaml-4.14) (comment macos-homebrew-4.14_arm64_opam-2.5) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (run (shell "ln -f ~/local/bin/opam-2.5 ~/local/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src duration.opam) (dst ./src/./)) (run (network host) (shell "opam pin add -yn duration.dev './src/./'")) (run (shell "echo '(lang dune 3.0)' > './src/./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.2 fmt.0.11.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 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 /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y duration.dev $DEPS")) (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst ./src)) (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2026-04-16 21:22.17: Waiting for resource in pool OCluster 2026-04-16 21:22.18: Waiting for worker… 2026-04-16 21:22.18: Got resource from pool OCluster Building on m1-worker-01 HEAD is now at f5bfa4f Document the new microsecond parsing HEAD is now at ae4116d Merge pull request #11 from reynir/of_string-µ (from macos-homebrew-ocaml-4.14) 2026-04-16 21:22.19 ---> using "0c60f117aee57abea8364cb033d47bb1d63ff0f68e5ee97378e032498e8442af" from cache /: (comment macos-homebrew-4.14_arm64_opam-2.5) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (run (shell "ln -f ~/local/bin/opam-2.5 ~/local/bin/opam")) 2026-04-16 21:22.19 ---> using "75b1629629d7f21c50a7e1e39b2ef83e2edb8ace81aab34254c0c8782b814749" from cache /: (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 /Users/mac1000/.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:///Users/mac1000/opam-repository 2026-04-16 21:22.19 ---> using "a61e945ab7671a6fff400f946e3fe88df4d67a783ea1f56fa59dc21595ef1b19" from cache /: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Darwin 24.5.0 The OCaml toplevel, version 4.14.2 2.5.0 2026-04-16 21:22.19 ---> using "11a9923a4c4f0ab256d15330129e4c4938459d2e6239eb4f7bdf0f2620300e09" from cache /: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD 043b6ea343..5f7bb1a6e6 master -> origin/master 5f7bb1a6e6 Merge pull request #29704 from shonfeder/release-dune-3.22.2 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///Users/mac1000/opam-repository 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 - ocaml-config.3 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-16 21:22.19 ---> using "b14579ae280cd8323f5f35223b57e21bff85c0ab5d30339daad34ff9e70be56f" from cache /: (copy (src duration.opam) (dst ./src/./)) 2026-04-16 21:22.19 ---> using "b6fed874ed2b68fce8f778db1222bb8fc4a7d0816c9c5d7fb5517a552c4989b4" from cache /: (run (network host) (shell "opam pin add -yn duration.dev './src/./'")) [duration.dev] synchronised (file:///Users/mac1000/src) duration is now pinned to file:///Users/mac1000/src (version dev) 2026-04-16 21:22.20 ---> using "27e10a9b5447f100bef4065ed37b58ae0c146522871c05c7a65ba1219f406e61" from cache /: (run (shell "echo '(lang dune 3.0)' > './src/./dune-project'")) 2026-04-16 21:22.20 ---> using "68b6617f48a270ffe10e922c8c4f3b4a87cf62989a4b202db9f0ea836327ef59" from cache /: (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.2 fmt.0.11.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 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 /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y duration.dev $DEPS")) + /opt/homebrew/bin/brew "update" - ==> Updating Homebrew... - ==> Downloading https://ghcr.io/v2/homebrew/core/portable-ruby/blobs/sha256:f41c72b891c40623f9d5cd2135f58a1b8a5c014ae04149888289409316276c72 - Already downloaded: /Users/mac1000/Library/Caches/Homebrew/portable-ruby-4.0.2_1.arm64_big_sur.bottle.tar.gz - ==> Pouring portable-ruby-4.0.2_1.arm64_big_sur.bottle.tar.gz - ==> Homebrew collects anonymous analytics. - Read the analytics documentation (and how to opt-out) here: - https://docs.brew.sh/Analytics - No analytics have been recorded yet (nor will be during this `brew` run). - - ==> Homebrew is run entirely by unpaid volunteers. Please consider donating: - https://github.com/Homebrew/brew#donations - - Updated 1 tap (homebrew/cask). <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [duration.dev] synchronised (file:///Users/mac1000/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). # To update the current shell environment, run: eval $(opam env) 2026-04-16 21:22.20 ---> using "156576043d8fe1f73c1ec77c55905e8156c71688dbb222b15b30e239f8bb7dfd" from cache /: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew))) (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 12 packages - install alcotest 1.9.1 - install astring 0.8.5 - install cmdliner 2.1.0 - 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 cmdliner.2.1.0 (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 ocamlbuild.0.16.1 (cached) -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved re.1.14.0 (cached) -> retrieved topkg.1.1.1 (cached) -> retrieved uutf.1.0.4 (cached) -> retrieved dune.3.22.2 (cached) -> installed ocamlfind.1.9.8 -> installed cmdliner.2.1.0 -> 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-16 21:22.20 ---> using "57e6f8cab50a5a68954866528121aa6e639611dde4a973e5f274eb734cbc3291" from cache /: (copy (src .) (dst ./src)) 2026-04-16 21:22.20 ---> using "84a35c69eb8b5525aca5238111ad1cfdaa3eecc628503e7d36dffa6dcb25d9f9" from cache /: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build")) (cd _build/default && ./tests.exe) Testing `Duration tests'. This run has ID `GW7ZC1XF'. [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.002s. 40 tests run. 2026-04-16 21:22.20 ---> using "dc5f33b5078262d793632fb3cfd2561dda249c970733830941d0d9d6fe42e3af" from cache Job succeeded 2026-04-16 21:22.37: Job succeeded