Organisationsahrefsatd08e5c3 (martin/modules)macos-homebrew-4.14_opam-2.5

macos-homebrew-4.14_opam-2.5

Logs

Show full logs
2026-03-13 20:45.52: New job: test ahrefs/atd https://github.com/ahrefs/atd.git#refs/heads/martin/modules (08e5c375458308b915d16563dedf4a274bd7763c) (macos-x86_64:macos-homebrew-4.14_opam-2.5)
Base: macos-homebrew-ocaml-4.14
Opam project build

To reproduce locally:

git clone --recursive "https://github.com/ahrefs/atd.git" -b "martin/modules" && cd "atd" && git reset --hard 08e5c375
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-4.14
# macos-homebrew-4.14_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 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 atdts.opam atds.opam atdpy.opam atdml.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam ./src/./
RUN opam pin add -yn atdts.dev './src/./' && \
    opam pin add -yn atds.dev './src/./' && \
    opam pin add -yn atdpy.dev './src/./' && \
    opam pin add -yn atdml.dev './src/./' && \
    opam pin add -yn atdj.dev './src/./' && \
    opam pin add -yn atdgen.dev './src/./' && \
    opam pin add -yn atdgen-runtime.dev './src/./' && \
    opam pin add -yn atdgen-codec-runtime.dev './src/./' && \
    opam pin add -yn atdd.dev './src/./' && \
    opam pin add -yn atdcpp.dev './src/./' && \
    opam pin add -yn atd.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 biniou.1.2.2 camlp-streams.5.0.1 cmdliner.2.1.0 conf-python-3.9.0.0 cppo.1.8.0 dune.3.21.1 easy-format.1.3.4 fmt.0.11.0 fpath.0.7.3 menhir.20260209 menhirCST.20260209 menhirGLR.20260209 menhirLib.20260209 menhirSdk.20260209 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 testo.0.4.0 testo-diff.0.4.0 testo-util.0.4.0 topkg.1.1.1 uutf.1.0.4 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.5 --depext-only -y atdts.dev atds.dev atdpy.dev atdml.dev atdj.dev atdgen.dev atdgen-runtime.dev atdgen-codec-runtime.dev atdd.dev atdcpp.dev atd.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-03-13 20:45.52: Using cache hint "ahrefs/atd-macos-homebrew-ocaml-4.14-macos-homebrew-4.14_opam-2.5-b5e6e6f9b3cd825fa334fc8812e3cf69"
2026-03-13 20:45.52: Using OBuilder spec:
((from macos-homebrew-ocaml-4.14)
 (comment macos-homebrew-4.14_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 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src atdts.opam atds.opam atdpy.opam atdml.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam)
       (dst ./src/./))
 (run (network host)
      (shell  "opam pin add -yn atdts.dev './src/./' && \
             \nopam pin add -yn atds.dev './src/./' && \
             \nopam pin add -yn atdpy.dev './src/./' && \
             \nopam pin add -yn atdml.dev './src/./' && \
             \nopam pin add -yn atdj.dev './src/./' && \
             \nopam pin add -yn atdgen.dev './src/./' && \
             \nopam pin add -yn atdgen-runtime.dev './src/./' && \
             \nopam pin add -yn atdgen-codec-runtime.dev './src/./' && \
             \nopam pin add -yn atdd.dev './src/./' && \
             \nopam pin add -yn atdcpp.dev './src/./' && \
             \nopam pin add -yn atd.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 biniou.1.2.2 camlp-streams.5.0.1 cmdliner.2.1.0 conf-python-3.9.0.0 cppo.1.8.0 dune.3.21.1 easy-format.1.3.4 fmt.0.11.0 fpath.0.7.3 menhir.20260209 menhirCST.20260209 menhirGLR.20260209 menhirLib.20260209 menhirSdk.20260209 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 testo.0.4.0 testo-diff.0.4.0 testo-util.0.4.0 topkg.1.1.1 uutf.1.0.4 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.5 --depext-only -y atdts.dev atds.dev atdpy.dev atdml.dev atdj.dev atdgen.dev atdgen-runtime.dev atdgen-codec-runtime.dev atdd.dev atdcpp.dev atd.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-03-13 20:45.52: Waiting for resource in pool OCluster
2026-03-13 20:45.53: Waiting for worker…
2026-03-13 20:51.18: Got resource from pool OCluster
Building on i7-worker-04
All commits already cached
HEAD is now at 08e5c37 Update example

(from macos-homebrew-ocaml-4.14)
2026-03-13 20:51.30 ---> using "0c60f117aee57abea8364cb033d47bb1d63ff0f68e5ee97378e032498e8442af" from cache

/: (comment macos-homebrew-4.14_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-03-13 20:51.30 ---> 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-03-13 20:51.31 ---> 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-03-13 20:51.31 ---> 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 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   95f7875db7..97a3f8f424  master     -> origin/master
31462e7d24 Merge pull request #29451 from dra27/relocatable-package

<><> 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-03-13 20:52.31 ---> saved as "2a402d8d50550ffb851deda9cf300c45df6e48711a0175bb2781c18bb33d7d7a"

/: (copy (src atdts.opam atds.opam atdpy.opam atdml.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam)
         (dst ./src/./))
2026-03-13 20:52.33 ---> saved as "137a46a324bc8a5eb551ef4df38f3d41e84728cc438eb4f7bd8c3dc96ef9ecf9"

/: (run (network host)
        (shell  "opam pin add -yn atdts.dev './src/./' && \
               \nopam pin add -yn atds.dev './src/./' && \
               \nopam pin add -yn atdpy.dev './src/./' && \
               \nopam pin add -yn atdml.dev './src/./' && \
               \nopam pin add -yn atdj.dev './src/./' && \
               \nopam pin add -yn atdgen.dev './src/./' && \
               \nopam pin add -yn atdgen-runtime.dev './src/./' && \
               \nopam pin add -yn atdgen-codec-runtime.dev './src/./' && \
               \nopam pin add -yn atdd.dev './src/./' && \
               \nopam pin add -yn atdcpp.dev './src/./' && \
               \nopam pin add -yn atd.dev './src/./'"))
[atdts.dev] synchronised (file:///Users/mac1000/src)
atdts is now pinned to file:///Users/mac1000/src (version dev)
[atds.dev] synchronised (file:///Users/mac1000/src)
atds is now pinned to file:///Users/mac1000/src (version dev)
[atdpy.dev] synchronised (file:///Users/mac1000/src)
atdpy is now pinned to file:///Users/mac1000/src (version dev)
[NOTE] Package atdml does not exist in opam repositories registered in the current switch.
[atdml.dev] synchronised (file:///Users/mac1000/src)
atdml is now pinned to file:///Users/mac1000/src (version dev)
[atdj.dev] synchronised (file:///Users/mac1000/src)
atdj is now pinned to file:///Users/mac1000/src (version dev)
[atdgen.dev] synchronised (file:///Users/mac1000/src)
atdgen is now pinned to file:///Users/mac1000/src (version dev)
[atdgen-runtime.dev] synchronised (file:///Users/mac1000/src)
atdgen-runtime is now pinned to file:///Users/mac1000/src (version dev)
[atdgen-codec-runtime.dev] synchronised (file:///Users/mac1000/src)
atdgen-codec-runtime is now pinned to file:///Users/mac1000/src (version dev)
[atdd.dev] synchronised (file:///Users/mac1000/src)
atdd is now pinned to file:///Users/mac1000/src (version dev)
[atdcpp.dev] synchronised (file:///Users/mac1000/src)
atdcpp is now pinned to file:///Users/mac1000/src (version dev)
[atd.dev] synchronised (file:///Users/mac1000/src)
atd is now pinned to file:///Users/mac1000/src (version dev)
2026-03-13 20:53.17 ---> saved as "391d25a66f83cc0bac0d175b41560f0a34301d12e10134810bb143ab91d85de4"

/: (run (shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
2026-03-13 20:53.18 ---> saved as "42611b3c05f79fd3628000be41a16c16a0603b4f76479051d297349345bc899e"

/: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base biniou.1.2.2 camlp-streams.5.0.1 cmdliner.2.1.0 conf-python-3.9.0.0 cppo.1.8.0 dune.3.21.1 easy-format.1.3.4 fmt.0.11.0 fpath.0.7.3 menhir.20260209 menhirCST.20260209 menhirGLR.20260209 menhirLib.20260209 menhirSdk.20260209 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 testo.0.4.0 testo-diff.0.4.0 testo-util.0.4.0 topkg.1.1.1 uutf.1.0.4 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.5 --depext-only -y atdts.dev atds.dev atdpy.dev atdml.dev atdj.dev atdgen.dev atdgen-runtime.dev atdgen-codec-runtime.dev atdd.dev atdcpp.dev atd.dev $DEPS"))
+ /usr/local/bin/brew "update"
- ==> Updating Homebrew...
- Already up-to-date.

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[atdd.dev] synchronised (file:///Users/mac1000/src)
[atdcpp.dev] synchronised (file:///Users/mac1000/src)
[atd.dev] synchronised (file:///Users/mac1000/src)
[atdgen.dev] synchronised (file:///Users/mac1000/src)
[atdgen-codec-runtime.dev] synchronised (file:///Users/mac1000/src)
[atdgen-runtime.dev] synchronised (file:///Users/mac1000/src)
[atdj.dev] synchronised (file:///Users/mac1000/src)
[atdml.dev] synchronised (file:///Users/mac1000/src)
[atdpy.dev] synchronised (file:///Users/mac1000/src)
[atds.dev] synchronised (file:///Users/mac1000/src)
[atdts.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:
    python@3.9

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

+ /usr/local/bin/brew "install" "python@3.9"
- ==> Fetching downloads for: python@3.9
- Warning: python@3.9 has been deprecated because it is deprecated upstream! It will be disabled on 2026-10-15.
- ✔︎ Bottle Manifest python@3.9 (3.9.25)
- ✔︎ Bottle Manifest python@3.9 (3.9.25)
- ✔︎ Bottle Manifest gdbm (1.26)
- ✔︎ Bottle gdbm (1.26)
- ✔︎ Bottle Manifest mpdecimal (4.0.1)
- ✔︎ Bottle mpdecimal (4.0.1)
- ✔︎ Bottle Manifest ca-certificates (2025-12-02)
- ✔︎ Bottle ca-certificates (2025-12-02)
- ✔︎ Bottle Manifest openssl@3 (3.6.1)
- ✔︎ Bottle Manifest readline (8.3.3)
- ✔︎ Bottle Manifest sqlite (3.52.0)
- ✔︎ Bottle Manifest xz (5.8.2)
- ✔︎ Bottle readline (8.3.3)
- ✔︎ Bottle xz (5.8.2)
- ✔︎ Bottle python@3.9 (3.9.25)
- ✔︎ Bottle openssl@3 (3.6.1)
- ✔︎ Bottle sqlite (3.52.0)
- ==> Installing dependencies for python@3.9: gdbm, mpdecimal, ca-certificates, openssl@3, readline, sqlite and xz
- ==> Installing python@3.9 dependency: gdbm
- ==> Pouring gdbm--1.26.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/gdbm/1.26: 25 files, 915.3KB
- ==> Installing python@3.9 dependency: mpdecimal
- ==> Pouring mpdecimal--4.0.1.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/mpdecimal/4.0.1: 22 files, 570.3KB
- ==> Installing python@3.9 dependency: ca-certificates
- ==> Pouring ca-certificates--2025-12-02.all.bottle.1.tar.gz
- ==> Regenerating CA certificate bundle from keychain, this may take a while...
- 🍺  /usr/local/Cellar/ca-certificates/2025-12-02: 4 files, 235.9KB
- ==> Installing python@3.9 dependency: openssl@3
- ==> Pouring openssl@3--3.6.1.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/openssl@3/3.6.1: 7,624 files, 37.8MB
- ==> Installing python@3.9 dependency: readline
- ==> Pouring readline--8.3.3.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/readline/8.3.3: 56 files, 2.6MB
- ==> Installing python@3.9 dependency: sqlite
- ==> Pouring sqlite--3.52.0.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/sqlite/3.52.0: 13 files, 5.2MB
- ==> Installing python@3.9 dependency: xz
- ==> Pouring xz--5.8.2.sequoia.bottle.tar.gz
- 🍺  /usr/local/Cellar/xz/5.8.2: 96 files, 2.4MB
- ==> Installing python@3.9
- ==> Pouring python@3.9--3.9.25.sonoma.bottle.1.tar.gz
- ==> /usr/local/Cellar/python@3.9/3.9.25/bin/python3.9 -Im ensurepip
- ==> /usr/local/Cellar/python@3.9/3.9.25/bin/python3.9 -Im pip install -v --no-index --upgrade --isolated --target=/usr/local/lib/python3.9/site-packages /usr/local/Cellar/python@3.9/3.9.25/Frameworks/Python.framework/Versions/3.9/lib/python3.9/ensurepip/_bundled/setuptools-80.9.0-py3-none-any.whl /usr/local/Cellar/python@3.9/3.9.25/Frameworks/Python.framework/Versions/3.9/lib/python3.9/ensurepip/_bundled/pip-25.3-py3-none-any.whl /usr/local/Cellar/python@3.9/3.9.25/libexec/wheel-0.45.1-py3-none-any.whl
- ==> Caveats
- Python is installed as
-   /usr/local/bin/python3.9
- 
- Unversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to
- `python3.9`, `python3.9-config`, `pip3.9` etc., respectively, are installed into
-   /usr/local/opt/python@3.9/libexec/bin
- 
- You can install Python packages with
-   pip3.9 install <package>
- They will install into the site-package directory
-   /usr/local/lib/python3.9/site-packages
- 
- `idle3.9` requires tkinter, which is available separately:
-   brew install python-tk@3.9
- 
- If you do not need a specific version of Python, and always want Homebrew's `python3` in your PATH:
-   brew install python3
- 
- See: https://docs.brew.sh/Homebrew-and-Python
- ==> Summary
- 🍺  /usr/local/Cellar/python@3.9/3.9.25: 3,037 files, 55MB
- ==> Running `brew cleanup python@3.9`...
- Disable this behaviour by setting `HOMEBREW_NO_INSTALL_CLEANUP=1`.
- Hide these hints with `HOMEBREW_NO_ENV_HINTS=1` (see `man brew`).
- ==> Caveats
- ==> python@3.9
- Python is installed as
-   /usr/local/bin/python3.9
- 
- Unversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to
- `python3.9`, `python3.9-config`, `pip3.9` etc., respectively, are installed into
-   /usr/local/opt/python@3.9/libexec/bin
- 
- You can install Python packages with
-   pip3.9 install <package>
- They will install into the site-package directory
-   /usr/local/lib/python3.9/site-packages
- 
- `idle3.9` requires tkinter, which is available separately:
-   brew install python-tk@3.9
- 
- If you do not need a specific version of Python, and always want Homebrew's `python3` in your PATH:
-   brew install python3
- 
- See: https://docs.brew.sh/Homebrew-and-Python
# To update the current shell environment, run: eval $(opam env)
2026-03-13 20:54.53 ---> saved as "7786c8f63351d9b39badd04e2538dee3ea659ed184796448d59702f8d7d0ffe4"

/: (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 32 packages
  - install alcotest            1.9.1
  - install astring             0.8.5
  - install biniou              1.2.2
  - install camlp-streams       5.0.1
  - install cmdliner            2.1.0
  - install conf-python-3       9.0.0
  - install cppo                1.8.0
  - install dune                3.21.1
  - install easy-format         1.3.4
  - install fmt                 0.11.0
  - install fpath               0.7.3
  - install menhir              20260209
  - install menhirCST           20260209
  - install menhirGLR           20260209
  - install menhirLib           20260209
  - install menhirSdk           20260209
  - install ocaml-compiler-libs v0.12.4
  - install ocaml-syntax-shims  1.0.0
  - install ocamlbuild          0.16.1
  - install ocamlfind           1.9.8
  - install ppx_derivers        1.2.1
  - install ppx_deriving        6.1.1
  - install ppxlib              0.37.0
  - install re                  1.14.0
  - install sexplib0            v0.17.0
  - install stdlib-shims        0.3.0
  - install testo               0.4.0
  - install testo-diff          0.4.0
  - install testo-util          0.4.0
  - install topkg               1.1.1
  - install uutf                1.0.4
  - install yojson              3.0.0

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved biniou.1.2.2  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved conf-python-3.9.0.0  (cached)
-> retrieved alcotest.1.9.1  (cached)
-> installed conf-python-3.9.0.0
-> retrieved cppo.1.8.0  (cached)
-> retrieved cmdliner.2.1.0  (cached)
-> retrieved easy-format.1.3.4  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved menhir.20260209, menhirCST.20260209, menhirGLR.20260209, menhirLib.20260209, menhirSdk.20260209  (cached)
-> retrieved ppx_deriving.6.1.1  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved ppxlib.0.37.0  (cached)
-> retrieved topkg.1.1.1  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved yojson.3.0.0  (cached)
-> retrieved testo.0.4.0, testo-diff.0.4.0, testo-util.0.4.0  (cached)
-> retrieved dune.3.21.1  (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 fpath.0.7.3
-> installed dune.3.21.1
-> installed easy-format.1.3.4
-> installed camlp-streams.5.0.1
-> installed menhirCST.20260209
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed ocaml-syntax-shims.1.0.0
-> installed menhirSdk.20260209
-> installed menhirLib.20260209
-> installed ocaml-compiler-libs.v0.12.4
-> installed menhirGLR.20260209
-> installed sexplib0.v0.17.0
-> installed biniou.1.2.2
-> installed cppo.1.8.0
-> installed re.1.14.0
-> installed yojson.3.0.0
-> installed alcotest.1.9.1
-> installed menhir.20260209
-> installed ppxlib.0.37.0
-> installed ppx_deriving.6.1.1
-> installed testo-diff.0.4.0
-> installed testo-util.0.4.0
-> installed testo.0.4.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-13 20:56.30 ---> saved as "3d2051e7c9e685316dd900bc23a46391cd552d82bb390bc034f5c5c6bb144a1b"

/: (copy (src .) (dst ./src))
2026-03-13 20:56.32 ---> saved as "916475ff5484ff5479bc5ee7829a1039362d6dce8c505115c1896639030c6954"

/: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default && /Users/mac1000/.opam/4.14.2/bin/ocamldep.opt -modules -impl doc/atdgen-tutorial-data/config-file/config_atd.ml) > _build/default/doc/atdgen-tutorial-data/config-file/.config.eobjs/dune__exe__Config_atd.impl.d
File "doc/atdgen-tutorial-data/config-file/config_atd.ml", line 7, characters 18-21:
7 |     <ocaml valid="fun l ->
                      ^^^
Error: Syntax error
(cd _build/default/atd/test && ./unit_tests.exe)
Testing `atd'.
This run has ID `RHBK59E9'.

  [OK]          Annot                0   valid.
  [OK]          Annot                1   invalid1.
  [OK]          Annot                2   invalid2.
  [OK]          Annot                3   invalid3.
  [OK]          Annot                4   invalid4.
  [OK]          Annot                5   invalid5.
  [OK]          Annot                6   invalid6.
  [OK]          Annot                7   invalid7.
  [OK]          Annot                8   invalid8.
  [OK]          Annot                9   invalid9.
  [OK]          Sort                 0   sort.
  [OK]          Unique_name          0   reserved identifiers.
  [OK]          Unique_name          1   reserved prefixes.
  [OK]          Unique_name          2   identifier creation.
  [OK]          Doc                  0   normalize "".
  [OK]          Doc                  1   normalize "a".
  [OK]          Doc                  2   normalize "a b".
  [OK]          Doc                  3   normalize "a\nb".
  [OK]          Doc                  4   normalize "a  b".
  [OK]          Doc                  5   normalize "a \n b".
  [OK]          Doc                  6   normalize "a \n\n b".
  [OK]          Doc                  7   normalize "  a  ".
  [OK]          Doc                  8   normalize "\n\na\n\n".
  [OK]          Doc                  9   normalize "{{}}".
  [OK]          Doc                 10   normalize "{{a}}".
  [OK]          Doc                 11   normalize "{{  a  b\n\nc\n }}".
  [OK]          Doc                 12   normalize "{{ {a} }}".
  [OK]          Doc                 13   normalize "{{{}}}".
  [OK]          Doc                 14   normalize "{{{a}}}".
  [OK]          Doc                 15   normalize "{{{ }}}".
  [OK]          Doc                 16   normalize "{{{ {{a}} }}}".
  [OK]          Doc                 17   normalize "{{{ a\n\n  b }}}".

Full test results in `~/src/_build/default/atd/test/_build/_tests/atd'.
Test Successful in 0.009s. 32 tests run.
File "atdd/test/dlang-tests/dune", lines 17-26, characters 0-141:
17 | (rule
18 |  (alias runtest)
19 |  (package atdd)
20 |  (deps
21 |   (glob_files *.d))
22 |  (action
23 |   (progn
24 |    (bash "ldc2 %{deps} --of test")
25 |    (bash ./test)
26 |   )))
(cd _build/default/atdd/test/dlang-tests && /bin/bash -e -u -o pipefail -c 'ldc2 everything_atd.d test_atdd.d --of test')
/bin/bash: ldc2: command not found
File "atds/test/dune", lines 13-22, characters 0-177:
13 | (rule
14 |  (alias runtest)
15 |  (package atds)
16 |  (deps
17 |   AtdsTest.scala
18 |   argonaut_2.11-6.2.2.jar
19 |   argonaut_2.12-6.2.2.jar
20 |   junit-4.8.2.jar
21 |   test.scala)
22 |  (action (run ./run_test.sh)))
(cd _build/default/atds/test && ./run_test.sh)
./run_test.sh: line 6: scalac: command not found
File "atdcat/test/dune", lines 57-87, characters 0-907:
57 | (rule
58 |  (alias runtest)
59 |  (deps
....
85 |    )
86 |  )
87 | )
(cd _build/default/atdcat/test && /usr/bin/python3 -m jsonschema schema.json -i data.json)
/Library/Developer/CommandLineTools/usr/bin/python3: No module named jsonschema
(cd _build/default/atdts/src/test && ./Main.exe)
Testing `atdts'.
This run has ID `JPVYIY3Y'.


Full test results in `~/src/_build/default/atdts/src/test/_build/_tests/atdts'.
Test Successful in 0.000s. 0 test run.
File "atdj/test/dune", lines 53-61, characters 0-160:
53 | (rule
54 |  (alias runtest)
55 |  (package atdj)
56 |  (deps
57 |   AtdjTest.java
58 |   json.jar
59 |   junit-4.8.2.jar
60 |   (glob_files com/mylife/test/*.java))
61 |  (action (run ./run_test.sh)))
(cd _build/default/atdj/test && ./run_test.sh)
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

File "atdpy/test/python-tests/dune", lines 23-35, characters 0-217:
23 | (rule
24 |  (alias runtest)
25 |  (package atdpy)
....
33 |    (run python3 -m flake8 .)
34 |    (run python3 -m mypy --strict .)
35 |    (run python3 -m pytest .))))
(cd _build/default/atdpy/test/python-tests && /usr/bin/python3 -m flake8 .)
/Library/Developer/CommandLineTools/usr/bin/python3: No module named flake8
(cd _build/default/atdpy/src/test && ./Main.exe)
Testing `atdpy'.
This run has ID `TTYY9OUH'.


Full test results in `~/src/_build/default/atdpy/src/test/_build/_tests/atdpy'.
Test Successful in 0.000s. 0 test run.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -json -o test2j -open Test,Test2,Testj -ntd test2.atd)
Warning: option "-json" is deprecated.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -json -j-gen-modules -o test_ambiguous_record_j -open Test_ambiguous_record_t -ntd test_ambiguous_record.atd)
Warning: option "-json" is deprecated.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -extend Test test.atd -json -o testjstd_j)
Warning: option "-json" is deprecated.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -validate -extend Test test.atd -o testv)
Warning: option "-validate" is deprecated.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -json -j-gen-modules -o test_polymorphic_wrap_j test_polymorphic_wrap.atd)
Warning: option "-json" is deprecated.
(cd _build/default/atdgen/test && ../../../install/default/bin/atdgen -json -extend Test -j-custom-fields 'fun loc s -> Printf.eprintf "Warning: skipping field %s (def: %s)
" s loc' test.atd -o testj)
Warning: option "-json" is deprecated.
File "atdcpp/test/cpp-tests/dune", lines 19-28, characters 0-183:
19 | (rule
20 |  (alias runtest)
21 |  (package atdcpp)
22 |  (deps
23 |   (glob_files *.cpp))
24 |  (action
25 |   (progn
26 |    (bash "g++ -I../../lib/rapidjson/include -std=c++17 %{deps} -o test")
27 |    (bash ./test)
28 |   )))
(cd _build/default/atdcpp/test/cpp-tests && /bin/bash -e -u -o pipefail -c 'g++ -I../../lib/rapidjson/include -std=c++17 everything_atd.cpp test_atdd.cpp -o test')
In file included from everything_atd.cpp:12:
./everything_atd.hpp:12:10: fatal error: 'rapidjson/document.h' file not found
   12 | #include <rapidjson/document.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from test_atdd.cpp:12:
./everything_atd.hpp:12:10: fatal error: 'rapidjson/document.h' file not found
   12 | #include <rapidjson/document.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
1 error generated.
(cd _build/default/atdgen/test && ./test_atdgen_main.exe)
Testing `atdgen'.
This run has ID `94EL9CHO'.

  [OK]          atdgen          0   ocaml internals.
  [OK]          atdgen          1   biniou missing record fields.
  [OK]          atdgen          2   biniou missing tuple fields.
  [OK]          atdgen          3   biniou read/write unit.
  [OK]          atdgen          4   json missing record fields.
  [OK]          atdgen          5   json missing tuple fields.
  [OK]          atdgen          6   json extra field warning.
  [OK]          atdgen          7   json association list.
  [OK]          atdgen          8   json association array.
  [OK]          atdgen          9   json ints derived from ocaml floats.
  [OK]          atdgen         10   biniou correctness.
  [OK]          atdgen         11   json correctness.
  [OK]          atdgen         12   json space.
  [OK]          atdgen         13   validators0.
  [OK]          atdgen         14   validators1.
  [OK]          atdgen         15   validators2.
  [OK]          atdgen         16   validators3.
  [OK]          atdgen         17   validators4.
  [OK]          atdgen         18   json files.
  [OK]          atdgen         19   json streams.
  [OK]          atdgen         20   raw JSON.
  [OK]          atdgen         21   ocaml wrapping - ints.
  [OK]          atdgen         22   ocaml wrapping - double wrapping.
  [OK]          atdgen         23   ocaml wrapping - with validation.
  [OK]          atdgen         24   ocaml wrapping - wrap constructor without...
  [OK]          atdgen         25   check length of floats serialized as floa...
  [OK]          atdgen         26   print JSON floats with maximum number of ...
  [OK]          atdgen         27   read json record with null fields meaning...
  [OK]          atdgen         28   read and write a variant represented as a...
  [OK]          atdgen         29   read and write a variant represented as a...
  [OK]          atdgen         30   test variants represented with single-fie...
  [OK]          atdgen         31   emulate the retired tag_field feature.
  [OK]          atdgen         32   emulate the retired tag_field feature, wi...
  [OK]          atdgen         33   test <json open_enum>.
  [OK]          atdgen         34   test ambiguous record with json adapters.
  [OK]          atdgen         35   test ambiguous classic variants with json...
  [OK]          atdgen         36   test wrapping of polymorphic types.
  [OK]          atdgen         37   json encoding int.
  [OK]          atdgen         38   json encoding & decoding int.
  [OK]          atdgen         39   json encoding int with string representat...
  [OK]          atdgen         40   json encoding & decoding int with string ...
  [OK]          atdgen         41   abstract types.
  [OK]          atdgen         42   untyped json.
  [OK]          atdgen         43   generic.
  [OK]          atdgen         44   inline-records.

Full test results in `~/src/_build/default/atdgen/test/_build/_tests/atdgen'.
Test Successful in 0.013s. 45 tests run.
"/usr/bin/env" "bash" "-c" "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2026-03-13 20:56.46: Job failed: Failed: Build failed