2025-06-29 17:55.30: New job: test jmid/mutaml https://github.com/jmid/mutaml.git#refs/heads/main (983230ac24d5433c1d42e18e97ac0ac70149ca62) (macos-arm64:macos-homebrew-4.14_arm64_opam-2.3)
Base: macos-homebrew-ocaml-4.14
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/jmid/mutaml.git" -b "main" && cd "mutaml" && git reset --hard 983230ac
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-4.14
# macos-homebrew-4.14_arm64_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
RUN ln -f ~/local/bin/opam-2.3 ~/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 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 mutaml.opam ./src/./
RUN opam pin add -yn mutaml.dev './src/./'
RUN echo '(lang dune 3.0)' > './src/./dune-project'
ENV DEPS="base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y mutaml.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
2025-06-29 17:55.30: Using cache hint "jmid/mutaml-macos-homebrew-ocaml-4.14-macos-homebrew-4.14_arm64_opam-2.3-693c5128a82836e28007ffdaa512b75b"
2025-06-29 17:55.30: Using OBuilder spec:
((from macos-homebrew-ocaml-4.14)
(comment macos-homebrew-4.14_arm64_opam-2.3)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(run (shell "ln -f ~/local/bin/opam-2.3 ~/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 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src mutaml.opam) (dst ./src/./))
(run (network host)
(shell "opam pin add -yn mutaml.dev './src/./'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
(env DEPS "base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
(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.3 --depext-only -y mutaml.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"))
)
2025-06-29 17:55.30: Waiting for resource in pool OCluster
2025-06-29 17:55.30: Waiting for worker…
2025-06-29 18:40.43: Got resource from pool OCluster
Building on m1-worker-03
All commits already cached
HEAD is now at 983230a Merge pull request #41 from jmid/avoid-opam-patching
(from macos-homebrew-ocaml-4.14)
2025-06-29 18:40.43 ---> using "0c60f117aee57abea8364cb033d47bb1d63ff0f68e5ee97378e032498e8442af" from cache
/: (comment macos-homebrew-4.14_arm64_opam-2.3)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (run (shell "ln -f ~/local/bin/opam-2.3 ~/local/bin/opam"))
2025-06-29 18:40.43 ---> using "d185bb362ab7a62e22c76fe28c4578fe7a4e17f7cc7bc09a3073972dfb5efd3b" 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
2025-06-29 18:40.43 ---> using "1a239dab0512a5f76e4948de67b26faca67b4de935df003aa7f81d4e2d68958d" from cache
/: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Darwin 23.4.0
The OCaml toplevel, version 4.14.2
2.3.0
2025-06-29 18:40.43 ---> using "f52eecff7be584d99550d2f8c42b8f22f9135c2276c46c827a485f089226c5ac" 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 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
11bdbee611..af17e9cece master -> origin/master
4f977ccb61 Merge pull request #28109 from mseri/frama-c
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///Users/mac1000/opam-repository
Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
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, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-06-29 18:40.44 ---> using "91a36070e5a45a54fd2bfa193303f745cecefae664d78d78853b27a46c523deb" from cache
/: (copy (src mutaml.opam) (dst ./src/./))
2025-06-29 18:40.44 ---> using "8438255876711f090a6711adff0dc36afa22fde1515cd90895381e656bba179e" from cache
/: (run (network host)
(shell "opam pin add -yn mutaml.dev './src/./'"))
[mutaml.dev] synchronised (file:///Users/mac1000/src)
mutaml is now pinned to file:///Users/mac1000/src (version dev)
2025-06-29 18:40.44 ---> using "6e5a7717750432d44dc6e2d70fd1fcac08cb83ca76a8b88cb58bfafad57d3c2d" from cache
/: (run (network host)
(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
2025-06-29 18:40.44 ---> using "53f958895ea8c81c19e0a75e056a7b7c31705542948b5179dbd7365743cb0bf2" from cache
/: (env DEPS "base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
/: (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.3 --depext-only -y mutaml.dev $DEPS"))
+ /opt/homebrew/bin/brew "update"
- ==> Updating Homebrew...
- ==> Downloading https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:fd162df7a06190ee800a9e6afd28f4466d33548821a480ba043cd927b44d60f7
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/portable-ruby-3.4.4.arm64_big_sur.bottle.tar.gz
- ==> Pouring portable-ruby-3.4.4.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 2 taps (homebrew/core and homebrew/cask).
- ==> New Casks
- font-libertinus-sans
- font-libertinus-serif
- font-nata-sans
- ==> Outdated Formulae
- gpatch
-
- You have 1 outdated formula installed.
- You can upgrade it with brew upgrade
- or list it with brew outdated.
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[mutaml.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).
The following system packages will first need to be installed:
coreutils diffutils
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
+ /opt/homebrew/bin/brew "install" "coreutils" "diffutils"
- ==> Downloading https://ghcr.io/v2/homebrew/core/coreutils/manifests/9.7
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/42f4c2e61aba25d3ead49fbfc09e225ee50c3adbc35e4b6ce7a72d4ebe4a3460--coreutils-9.7.bottle_manifest.json
- ==> Fetching dependencies for coreutils: gmp
- ==> Downloading https://ghcr.io/v2/homebrew/core/gmp/manifests/6.3.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/70a72a71216843d66a953c06ff6337445ce9bc94fae9f0e301e2f59005274a8e--gmp-6.3.0.bottle_manifest.json
- ==> Fetching gmp
- ==> Downloading https://ghcr.io/v2/homebrew/core/gmp/blobs/sha256:6683d73d6677d28e1e8d1b92d6ebfbc068c1d33e19b79114a22a648a99ba5991
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/a0c4a56cc56ffac0cb3f0aa5deb1b3a614002dabf65a81e14d87129c89eb7bde--gmp--6.3.0.arm64_sequoia.bottle.tar.gz
- ==> Fetching coreutils
- ==> Downloading https://ghcr.io/v2/homebrew/core/coreutils/blobs/sha256:5d3e3c74de367a4d8ae6f22457732a8e5d39030c46f8f585b1780c0a916d0c8e
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/c9ccae12238e2a1cd135ab7c3f464c828533a61898d3bb24391ffcc0350112de--coreutils--9.7.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/diffutils/manifests/3.12
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/df7a9d1fb56fe293861f95e08610548604677a410e1f7627d8b3847e2a4b9a81--diffutils-3.12.bottle_manifest.json
- ==> Fetching diffutils
- ==> Downloading https://ghcr.io/v2/homebrew/core/diffutils/blobs/sha256:f1439a94ab4fc8928a92a20d939e88ae0a77fb350a9d93e4d1101570a9590b4b
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/2636218705a875a47993c7f281ffd0a76669912a671897848d1aa42588335be4--diffutils--3.12.arm64_sequoia.bottle.tar.gz
- ==> Installing dependencies for coreutils: gmp
- ==> Installing coreutils dependency: gmp
- ==> Downloading https://ghcr.io/v2/homebrew/core/gmp/manifests/6.3.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/70a72a71216843d66a953c06ff6337445ce9bc94fae9f0e301e2f59005274a8e--gmp-6.3.0.bottle_manifest.json
- ==> Pouring gmp--6.3.0.arm64_sequoia.bottle.tar.gz
- 🍺 /opt/homebrew/Cellar/gmp/6.3.0: 22 files, 3.3MB
- ==> Installing coreutils
- ==> Pouring coreutils--9.7.arm64_sequoia.bottle.tar.gz
- ==> Caveats
- Commands also provided by macOS and the commands dir, dircolors, vdir have been installed with the prefix "g".
- If you need to use these commands with their normal names, you can add a "gnubin" directory to your PATH with:
- PATH="/opt/homebrew/opt/coreutils/libexec/gnubin:$PATH"
- ==> Summary
- 🍺 /opt/homebrew/Cellar/coreutils/9.7: 465 files, 11.8MB
- ==> Running `brew cleanup coreutils`...
- Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
- Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
- ==> Pouring diffutils--3.12.arm64_sequoia.bottle.tar.gz
- 🍺 /opt/homebrew/Cellar/diffutils/3.12: 18 files, 951.3KB
- ==> Running `brew cleanup diffutils`...
- ==> Caveats
- ==> coreutils
- Commands also provided by macOS and the commands dir, dircolors, vdir have been installed with the prefix "g".
- If you need to use these commands with their normal names, you can add a "gnubin" directory to your PATH with:
- PATH="/opt/homebrew/opt/coreutils/libexec/gnubin:$PATH"
2025-06-29 18:40.44 ---> using "cfd0782c980dad14619cb7dba8dbea20dec4aa3ef6319142638c48ad731f6939" 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 22 packages
- install base v0.16.4
- install conf-diffutils 2
- install conf-timeout 1
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.19.1
- install dune-configurator 3.19.1
- install ocaml-compiler-libs v0.12.4
- install ocamlfind 1.9.8
- install octavius 1.2.2
- install ounit2 2.2.7
- install ppx_derivers 1.2.1
- install ppx_deriving 6.0.3
- install ppx_js_style v0.16.0
- install ppx_yojson_conv v0.16.0
- install ppx_yojson_conv_lib v0.16.0
- install ppxlib 0.35.0
- install seq base
- install sexplib0 v0.16.0
- install stdlib-random 1.2.0
- install stdlib-shims 0.3.0
- install yojson 3.0.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved csexp.1.5.2 (cached)
-> installed conf-timeout.1
-> installed conf-diffutils.2
-> retrieved cppo.1.8.0 (cached)
-> retrieved base.v0.16.4 (cached)
-> retrieved ocaml-compiler-libs.v0.12.4 (cached)
-> retrieved octavius.1.2.2 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ounit2.2.2.7 (cached)
-> retrieved ppx_deriving.6.0.3 (cached)
-> retrieved ppx_js_style.v0.16.0 (cached)
-> retrieved ppx_yojson_conv.v0.16.0 (cached)
-> retrieved ppx_yojson_conv_lib.v0.16.0 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved sexplib0.v0.16.0 (cached)
-> retrieved stdlib-random.1.2.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved yojson.3.0.0 (cached)
-> retrieved ppxlib.0.35.0 (cached)
-> retrieved dune.3.19.1, dune-configurator.3.19.1 (cached)
-> installed ocamlfind.1.9.8
-> installed dune.3.19.1
-> installed stdlib-shims.0.3.0
-> installed ppx_derivers.1.2.1
-> installed csexp.1.5.2
-> installed ounit2.2.2.7
-> installed yojson.3.0.0
-> installed sexplib0.v0.16.0
-> installed octavius.1.2.2
-> installed ocaml-compiler-libs.v0.12.4
-> installed cppo.1.8.0
-> installed ppx_yojson_conv_lib.v0.16.0
-> installed stdlib-random.1.2.0
-> installed dune-configurator.3.19.1
-> installed base.v0.16.4
-> installed ppxlib.0.35.0
-> installed ppx_js_style.v0.16.0
-> installed ppx_deriving.6.0.3
-> installed ppx_yojson_conv.v0.16.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-06-29 18:40.44 ---> using "75bab113eb21186e7b0153568b3d62cc9554d43979870b738f24d67b5a6f3013" from cache
/: (copy (src .) (dst ./src))
2025-06-29 18:40.45 ---> saved as "00298b3cc552d7fb7e3ba79881e66d419a1dfb89e21b2453042aaa187508b210"
/: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/examples/testproj-2-modules/test && ./ounittest.exe)
..
Ran: 2 tests in: 0.18 seconds.
OK
(cd _build/default/examples/testproj-1-module && ./ounittest.exe)
....
Ran: 4 tests in: 0.21 seconds.
OK
2025-06-29 18:41.25 ---> saved as "e19069bb1adda28b011b8d903049823743cac8ab0afa35e76a565da8af2fbcd2"
Job succeeded
2025-06-29 18:41.32: Job succeeded