2026-01-09 21:44.43: New job: test ahrefs/atd https://github.com/ahrefs/atd.git#refs/pull/434/head (34704102fb8a80721407d7a99e52f5566e69cd4b) (linux-x86_64:debian-12-4.14_opam-2.5) Base: ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe Opam project build To reproduce locally: git clone --recursive "https://github.com/ahrefs/atd.git" && cd "atd" && git fetch origin "refs/pull/434/head" && git reset --hard 34704102 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe # debian-12-4.14_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 c65fcb116531ae66ad3316b265e233443ef25044 || git fetch origin master) && git reset -q --hard c65fcb116531ae66ad3316b265e233443ef25044 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 atdts.opam atds.opam atdpy.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam ./ RUN opam pin add -yn atdts.dev './' && \ opam pin add -yn atds.dev './' && \ opam pin add -yn atdpy.dev './' && \ opam pin add -yn atdj.dev './' && \ opam pin add -yn atdgen.dev './' && \ opam pin add -yn atdgen-runtime.dev './' && \ opam pin add -yn atdgen-codec-runtime.dev './' && \ opam pin add -yn atdd.dev './' && \ opam pin add -yn atdcpp.dev './' && \ opam pin add -yn atd.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 biniou.1.2.2 camlp-streams.5.0.1 cmdliner.2.1.0 conf-python-3.9.0.0 dune.3.20.2 easy-format.1.3.4 fmt.0.11.0 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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 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 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 opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-01-09 21:44.43: Using cache hint "ahrefs/atd-ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe-debian-12-4.14_opam-2.5-c8665e229470f7b0d44f783a80d4bcbb" 2026-01-09 21:44.43: Using OBuilder spec: ((from ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe) (comment debian-12-4.14_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 c65fcb116531ae66ad3316b265e233443ef25044 || git fetch origin master) && git reset -q --hard c65fcb116531ae66ad3316b265e233443ef25044 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src atdts.opam atds.opam atdpy.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam) (dst ./)) (run (network host) (shell "opam pin add -yn atdts.dev './' && \ \nopam pin add -yn atds.dev './' && \ \nopam pin add -yn atdpy.dev './' && \ \nopam pin add -yn atdj.dev './' && \ \nopam pin add -yn atdgen.dev './' && \ \nopam pin add -yn atdgen-runtime.dev './' && \ \nopam pin add -yn atdgen-codec-runtime.dev './' && \ \nopam pin add -yn atdd.dev './' && \ \nopam pin add -yn atdcpp.dev './' && \ \nopam pin add -yn atd.dev './'")) (run (network host) (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 biniou.1.2.2 camlp-streams.5.0.1 cmdliner.2.1.0 conf-python-3.9.0.0 dune.3.20.2 easy-format.1.3.4 fmt.0.11.0 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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 yojson.3.0.0") (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 atdts.dev atds.dev atdpy.dev atdj.dev atdgen.dev atdgen-runtime.dev atdgen-codec-runtime.dev atdd.dev atdcpp.dev atd.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-01-09 21:44.43: Waiting for resource in pool OCluster 2026-01-09 23:07.34: Waiting for worker… 2026-01-09 23:09.25: Got resource from pool OCluster Building on laodoke.caelum.ci.dev All commits already cached HEAD is now at 3470410 Remove 'mode fallback' lines from atdgen rule generation examples (from ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe) Unable to find image 'ocaml/opam:debian-12-ocaml-4.14@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe' locally docker.io/ocaml/opam@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe: Pulling from ocaml/opam c8443a297fa4: Pulling fs layer 3117594fcbaa: Pulling fs layer 85ca0e82a234: Pulling fs layer 1c1f02d52226: Pulling fs layer fe9d3c2e10e2: Pulling fs layer 2217026faa73: Pulling fs layer 1fef585d5a09: Pulling fs layer 0d0070c18c6d: Pulling fs layer c51172af0160: Pulling fs layer df8875cc93ac: Pulling fs layer 1c1f02d52226: Waiting 67847aef0407: Pulling fs layer fe9d3c2e10e2: Waiting 2217026faa73: Waiting 1fef585d5a09: Waiting 0d0070c18c6d: Waiting c51172af0160: Waiting df8875cc93ac: Waiting 67847aef0407: Waiting 36beb7078293: Pulling fs layer 191136a5f5c0: Pulling fs layer 36beb7078293: Waiting 714757d72e7f: Pulling fs layer 191136a5f5c0: Waiting 68234c5c011d: Pulling fs layer 8df6961c36fa: Pulling fs layer 68234c5c011d: Waiting 714757d72e7f: Waiting afa495f7821e: Pulling fs layer 5f9643dc0d5e: Pulling fs layer c5cd204c27b0: Pulling fs layer 7a188148750f: Pulling fs layer 0c4a275107e2: Pulling fs layer 3ce9f77add31: Pulling fs layer 4f4fb700ef54: Pulling fs layer 9b27f4cec1f5: Pulling fs layer f13f8b8a6ebe: Pulling fs layer 7347d8d6169e: Pulling fs layer d0faf52955c3: Pulling fs layer 02b89d433f3e: Pulling fs layer 1f88f6e46b0c: Pulling fs layer 345b324af9bd: Pulling fs layer a95711b9c003: Pulling fs layer f874b80e803a: Pulling fs layer 82c952ade8b1: Pulling fs layer 8c8b9ca5e561: Pulling fs layer b34ef319e463: Pulling fs layer 888dc0bf1f1f: Pulling fs layer 083ae27b8914: Pulling fs layer 529d05c22b93: Pulling fs layer 0b92011566a7: Pulling fs layer 3e1d10060b32: Pulling fs layer ee8d3043c790: Pulling fs layer e3a60f552012: Pulling fs layer 653f55382a5b: Pulling fs layer 8d14638d4c9a: Pulling fs layer ff60b4d2cd24: Pulling fs layer 8df6961c36fa: Waiting afa495f7821e: Waiting 5f9643dc0d5e: Waiting c5cd204c27b0: Waiting 7a188148750f: Waiting 0c4a275107e2: Waiting 3ce9f77add31: Waiting 4f4fb700ef54: Waiting 9b27f4cec1f5: Waiting f13f8b8a6ebe: Waiting 7347d8d6169e: Waiting d0faf52955c3: Waiting 02b89d433f3e: Waiting 1f88f6e46b0c: Waiting 345b324af9bd: Waiting a95711b9c003: Waiting f874b80e803a: Waiting 82c952ade8b1: Waiting 8c8b9ca5e561: Waiting b34ef319e463: Waiting 888dc0bf1f1f: Waiting 083ae27b8914: Waiting 529d05c22b93: Waiting 0b92011566a7: Waiting 3e1d10060b32: Waiting ee8d3043c790: Waiting e3a60f552012: Waiting 653f55382a5b: Waiting 8d14638d4c9a: Waiting ff60b4d2cd24: Waiting 85ca0e82a234: Download complete 3117594fcbaa: Verifying Checksum 3117594fcbaa: Download complete fe9d3c2e10e2: Verifying Checksum fe9d3c2e10e2: Download complete c8443a297fa4: Verifying Checksum c8443a297fa4: Download complete 1c1f02d52226: Verifying Checksum 1c1f02d52226: Download complete 1fef585d5a09: Verifying Checksum 1fef585d5a09: Download complete 0d0070c18c6d: Verifying Checksum 0d0070c18c6d: Download complete c51172af0160: Download complete df8875cc93ac: Download complete 67847aef0407: Verifying Checksum 67847aef0407: Download complete 2217026faa73: Verifying Checksum 2217026faa73: Download complete 36beb7078293: Verifying Checksum 36beb7078293: Download complete 191136a5f5c0: Download complete 714757d72e7f: Verifying Checksum 714757d72e7f: Download complete 68234c5c011d: Download complete 8df6961c36fa: Verifying Checksum 8df6961c36fa: Download complete afa495f7821e: Verifying Checksum afa495f7821e: Download complete 5f9643dc0d5e: Verifying Checksum 5f9643dc0d5e: Download complete c5cd204c27b0: Verifying Checksum c5cd204c27b0: Download complete 7a188148750f: Verifying Checksum 7a188148750f: Download complete 0c4a275107e2: Download complete 3ce9f77add31: Download complete 4f4fb700ef54: Verifying Checksum 4f4fb700ef54: Download complete 9b27f4cec1f5: Verifying Checksum 9b27f4cec1f5: Download complete f13f8b8a6ebe: Download complete 7347d8d6169e: Verifying Checksum 7347d8d6169e: Download complete d0faf52955c3: Verifying Checksum d0faf52955c3: Download complete 1f88f6e46b0c: Verifying Checksum 1f88f6e46b0c: Download complete 02b89d433f3e: Verifying Checksum 02b89d433f3e: Download complete 345b324af9bd: Download complete a95711b9c003: Verifying Checksum a95711b9c003: Download complete f874b80e803a: Verifying Checksum f874b80e803a: Download complete 8c8b9ca5e561: Download complete 82c952ade8b1: Verifying Checksum 82c952ade8b1: Download complete b34ef319e463: Verifying Checksum b34ef319e463: Download complete 083ae27b8914: Verifying Checksum 083ae27b8914: Download complete 0b92011566a7: Download complete c8443a297fa4: Pull complete 3117594fcbaa: Pull complete 85ca0e82a234: Pull complete 3e1d10060b32: Verifying Checksum 3e1d10060b32: Download complete ee8d3043c790: Download complete 1c1f02d52226: Pull complete fe9d3c2e10e2: Pull complete e3a60f552012: Verifying Checksum e3a60f552012: Download complete 653f55382a5b: Verifying Checksum 653f55382a5b: Download complete 8d14638d4c9a: Verifying Checksum 8d14638d4c9a: Download complete ff60b4d2cd24: Verifying Checksum ff60b4d2cd24: Download complete 888dc0bf1f1f: Verifying Checksum 888dc0bf1f1f: Download complete 529d05c22b93: Verifying Checksum 529d05c22b93: Download complete 2217026faa73: Pull complete 1fef585d5a09: Pull complete 0d0070c18c6d: Pull complete c51172af0160: Pull complete df8875cc93ac: Pull complete 67847aef0407: Pull complete 36beb7078293: Pull complete 191136a5f5c0: Pull complete 714757d72e7f: Pull complete 68234c5c011d: Pull complete 8df6961c36fa: Pull complete afa495f7821e: Pull complete 5f9643dc0d5e: Pull complete c5cd204c27b0: Pull complete 7a188148750f: Pull complete 0c4a275107e2: Pull complete 3ce9f77add31: Pull complete 4f4fb700ef54: Pull complete 9b27f4cec1f5: Pull complete f13f8b8a6ebe: Pull complete 7347d8d6169e: Pull complete d0faf52955c3: Pull complete 02b89d433f3e: Pull complete 1f88f6e46b0c: Pull complete 345b324af9bd: Pull complete a95711b9c003: Pull complete f874b80e803a: Pull complete 82c952ade8b1: Pull complete 8c8b9ca5e561: Pull complete b34ef319e463: Pull complete 888dc0bf1f1f: Pull complete 083ae27b8914: Pull complete 529d05c22b93: Pull complete 0b92011566a7: Pull complete 3e1d10060b32: Pull complete ee8d3043c790: Pull complete e3a60f552012: Pull complete 653f55382a5b: Pull complete 8d14638d4c9a: Pull complete ff60b4d2cd24: Pull complete Digest: sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe Status: Downloaded newer image for ocaml/opam@sha256:a53df5177072d740150fd7867bf57ab82a04bbcdb53a31eb989e5210feb6a8fe 2026-01-09 23:09.26 ---> using "ec68c8b6664fb3aba59d0ad783bcdc1eb1d65a5507850508cc1bdde5936f87fd" from cache /: (comment debian-12-4.14_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-01-09 23:09.26 ---> using "6904a47df833707962bb1f36157d861a2ead392496ef0d0eb6787eeedecbbedd" 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. Continue? [Y/n] y 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. [NOTE] The 'jobs' option was reset, its value was 255 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=255 --global Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-01-09 23:09.26 ---> using "c852358e5bf202a887a7bff52fbe86206e84fb8c9381d24636bfecbb2f5a38b8" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-90-generic The OCaml toplevel, version 4.14.2 2.5.0 2026-01-09 23:09.26 ---> using "e3798ce077c0b3785b77b0e9576de88e82d7972ac1b256e30b4db0081d95f814" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-09 23:09.26 ---> using "5aceebb8c1931d493d24a245f4c6006ab690dfb69f3082dd7fbf55b83092d8ff" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e c65fcb116531ae66ad3316b265e233443ef25044 || git fetch origin master) && git reset -q --hard c65fcb116531ae66ad3316b265e233443ef25044 && git log --no-decorate -n1 --oneline && opam update -u")) c65fcb1165 Merge pull request #29080 from dra27/ocaml-config-urls <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository 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.4.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-01-09 23:09.26 ---> using "14f18f948a35278653092afee210e12302ef5e7b0f45f6f96e7c6e57391f9abe" from cache /src: (copy (src atdts.opam atds.opam atdpy.opam atdj.opam atdgen.opam atdgen-runtime.opam atdgen-codec-runtime.opam atdd.opam atdcpp.opam atd.opam) (dst ./)) 2026-01-09 23:09.26 ---> using "dc99c415721f9c4889b5c0a0d29ba742bd72eeb9832d120e2277725d5020262b" from cache /src: (run (network host) (shell "opam pin add -yn atdts.dev './' && \ \nopam pin add -yn atds.dev './' && \ \nopam pin add -yn atdpy.dev './' && \ \nopam pin add -yn atdj.dev './' && \ \nopam pin add -yn atdgen.dev './' && \ \nopam pin add -yn atdgen-runtime.dev './' && \ \nopam pin add -yn atdgen-codec-runtime.dev './' && \ \nopam pin add -yn atdd.dev './' && \ \nopam pin add -yn atdcpp.dev './' && \ \nopam pin add -yn atd.dev './'")) [atdts.dev] synchronised (file:///src) atdts is now pinned to file:///src (version dev) [atds.dev] synchronised (file:///src) atds is now pinned to file:///src (version dev) [atdpy.dev] synchronised (file:///src) atdpy is now pinned to file:///src (version dev) [atdj.dev] synchronised (file:///src) atdj is now pinned to file:///src (version dev) [atdgen.dev] synchronised (file:///src) atdgen is now pinned to file:///src (version dev) [atdgen-runtime.dev] synchronised (file:///src) atdgen-runtime is now pinned to file:///src (version dev) [atdgen-codec-runtime.dev] synchronised (file:///src) atdgen-codec-runtime is now pinned to file:///src (version dev) [atdd.dev] synchronised (file:///src) atdd is now pinned to file:///src (version dev) [atdcpp.dev] synchronised (file:///src) atdcpp is now pinned to file:///src (version dev) [atd.dev] synchronised (file:///src) atd is now pinned to file:///src (version dev) 2026-01-09 23:09.26 ---> using "0256cad46087c8cee9d56d2f707c2da0d4b0c9330d666ce4d8e07e41f51a0be2" from cache /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-09 23:09.26 ---> using "39e7514b8e631cca86cb35cc4b381e09c43f5dcd3117e5b10c8fe5acff2ad334" from cache /src: (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 dune.3.20.2 easy-format.1.3.4 fmt.0.11.0 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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 yojson.3.0.0") /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 atdts.dev atds.dev atdpy.dev atdj.dev atdgen.dev atdgen-runtime.dev atdgen-codec-runtime.dev atdd.dev atdcpp.dev atd.dev $DEPS")) + /usr/bin/sudo "apt-get" "update" - Hit:1 http://deb.debian.org/debian bookworm InRelease - Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB] - Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] - Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [290 kB] - Fetched 393 kB in 1s (703 kB/s) - Reading package lists... - <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [atd.dev] synchronised (file:///src) [atdcpp.dev] synchronised (file:///src) [atdd.dev] synchronised (file:///src) [atdgen.dev] synchronised (file:///src) [atdgen-codec-runtime.dev] synchronised (file:///src) [atdgen-runtime.dev] synchronised (file:///src) [atdj.dev] synchronised (file:///src) [atdpy.dev] synchronised (file:///src) [atds.dev] synchronised (file:///src) [atdts.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 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: python3 <><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><> + /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "python3" - debconf: delaying package configuration, since apt-utils is not installed - Selecting previously unselected package libpython3.11-minimal:amd64. - (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 18753 files and directories currently installed.) - Preparing to unpack .../libpython3.11-minimal_3.11.2-6+deb12u6_amd64.deb ... - Unpacking libpython3.11-minimal:amd64 (3.11.2-6+deb12u6) ... - Selecting previously unselected package python3.11-minimal. - Preparing to unpack .../python3.11-minimal_3.11.2-6+deb12u6_amd64.deb ... - Unpacking python3.11-minimal (3.11.2-6+deb12u6) ... - Setting up libpython3.11-minimal:amd64 (3.11.2-6+deb12u6) ... - Setting up python3.11-minimal (3.11.2-6+deb12u6) ... - Selecting previously unselected package python3-minimal. - (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19060 files and directories currently installed.) - Preparing to unpack .../python3-minimal_3.11.2-1+b1_amd64.deb ... - Unpacking python3-minimal (3.11.2-1+b1) ... - Selecting previously unselected package media-types. - Preparing to unpack .../media-types_10.0.0_all.deb ... - Unpacking media-types (10.0.0) ... - Selecting previously unselected package libpython3.11-stdlib:amd64. - Preparing to unpack .../libpython3.11-stdlib_3.11.2-6+deb12u6_amd64.deb ... - Unpacking libpython3.11-stdlib:amd64 (3.11.2-6+deb12u6) ... - Selecting previously unselected package python3.11. - Preparing to unpack .../python3.11_3.11.2-6+deb12u6_amd64.deb ... - Unpacking python3.11 (3.11.2-6+deb12u6) ... - Selecting previously unselected package libpython3-stdlib:amd64. - Preparing to unpack .../libpython3-stdlib_3.11.2-1+b1_amd64.deb ... - Unpacking libpython3-stdlib:amd64 (3.11.2-1+b1) ... - Setting up python3-minimal (3.11.2-1+b1) ... - Selecting previously unselected package python3. - (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19470 files and directories currently installed.) - Preparing to unpack .../python3_3.11.2-1+b1_amd64.deb ... - Unpacking python3 (3.11.2-1+b1) ... - Setting up media-types (10.0.0) ... - Setting up libpython3.11-stdlib:amd64 (3.11.2-6+deb12u6) ... - Setting up libpython3-stdlib:amd64 (3.11.2-1+b1) ... - Setting up python3.11 (3.11.2-6+deb12u6) ... - Setting up python3 (3.11.2-1+b1) ... - running python rtupdate hooks for python3.11... - running python post-rtupdate hooks for python3.11... # To update the current shell environment, run: eval $(opam env) 2026-01-09 23:09.37 ---> saved as "538e352b8b5243e85542e7dd3061e10e21c569a4bdc21003d04759c4bf432d13" /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 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 21 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 dune 3.20.2 - install easy-format 1.3.4 - install fmt 0.11.0 - install menhir 20250912 - install menhirCST 20250912 - install menhirLib 20250912 - install menhirSdk 20250912 - 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 - install yojson 3.0.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved alcotest.1.9.1 (cached) -> retrieved astring.0.8.5 (cached) -> retrieved biniou.1.2.2 (cached) -> retrieved conf-python-3.9.0.0 (cached) -> retrieved camlp-streams.5.0.1 (cached) -> retrieved cmdliner.2.1.0 (cached) -> installed conf-python-3.9.0.0 -> retrieved easy-format.1.3.4 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912 (cached) -> retrieved ocamlfind.1.9.8 (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 yojson.3.0.0 (cached) -> retrieved dune.3.20.2 (cached) -> installed cmdliner.2.1.0 -> 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.20.2 -> installed camlp-streams.5.0.1 -> installed easy-format.1.3.4 -> installed stdlib-shims.0.3.0 -> installed menhirCST.20250912 -> installed menhirSdk.20250912 -> installed biniou.1.2.2 -> installed ocaml-syntax-shims.1.0.0 -> installed menhirLib.20250912 -> installed re.1.14.0 -> installed yojson.3.0.0 -> installed alcotest.1.9.1 -> installed menhir.20250912 Done. # To update the current shell environment, run: eval $(opam env) 2026-01-09 23:11.04 ---> saved as "ce8bc24e9146c65d07b8386341edcfb5c320b6b7a86a2a3f3305808fd70235fc" /src: (copy (src .) (dst /src)) 2026-01-09 23:11.05 ---> saved as "ac80d49e7ff908ff0a6b775beb89f38846efeaa6902c71f871a808110fde0197" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) 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) /usr/bin/python3: No module named jsonschema File "atdpy/test/python-tests/dune", lines 19-29, characters 0-198: 19 | (rule 20 | (alias runtest) 21 | (package atdpy) 22 | (deps 23 | everything.py 24 | (glob_files *.py)) 25 | (action 26 | (progn 27 | (run python3 -m flake8 .) 28 | (run python3 -m mypy --strict .) 29 | (run python3 -m pytest .)))) (cd _build/default/atdpy/test/python-tests && /usr/bin/python3 -m flake8 .) /usr/bin/python3: No module named flake8 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: 6: scalac: not found 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 && /usr/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: No such file or directory 12 | #include <rapidjson/document.h> | ^~~~~~~~~~~~~~~~~~~~~~ compilation terminated. In file included from test_atdd.cpp:12: everything_atd.hpp:12:10: fatal error: rapidjson/document.h: No such file or directory 12 | #include <rapidjson/document.h> | ^~~~~~~~~~~~~~~~~~~~~~ compilation terminated. (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/spec_js/.spec_js.objs/byte -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Spec_js__ -o atdgen/test/spec_js/.spec_js.objs/byte/spec_js__Spec_j.cmo -c -impl atdgen/test/spec_js/spec_j.ml) File "atdgen/test/spec_js/spec_j.ml", line 72, characters 10-39: 72 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/.test_atdgen_main.eobjs/byte -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/byte/dune__exe__Test_classic_inline_record_j.cmo -c -impl atdgen/test/test_classic_inline_record_j.ml) File "atdgen/test/test_classic_inline_record_j.ml", line 43, characters 10-39: 43 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/spec_js/.spec_js.objs/byte -I atdgen/test/spec_js/.spec_js.objs/native -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Spec_js__ -o atdgen/test/spec_js/.spec_js.objs/native/spec_js__Spec_j.cmx -c -impl atdgen/test/spec_js/spec_j.ml) File "atdgen/test/spec_js/spec_j.ml", line 72, characters 10-39: 72 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/.test_atdgen_main.eobjs/byte -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/byte/dune__exe__Test3j_j.cmo -c -impl atdgen/test/test3j_j.ml) File "atdgen/test/test3j_j.ml", line 264, characters 10-39: 264 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/.test_atdgen_main.eobjs/byte -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/byte/dune__exe__Test_ambiguous_variant_j.cmo -c -impl atdgen/test/test_ambiguous_variant_j.ml) File "atdgen/test/test_ambiguous_variant_j.ml", line 40, characters 12-41: 40 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I doc/atdgen-tutorial-data/validate/.resume.eobjs/byte -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/validate/.resume.eobjs/byte/dune__exe__Resume_j.cmo -c -impl doc/atdgen-tutorial-data/validate/resume_j.ml) File "doc/atdgen-tutorial-data/validate/resume_j.ml", line 237, characters 10-39: 237 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I doc/atdgen-tutorial-data/config-file/.config.eobjs/byte -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/config-file/.config.eobjs/byte/dune__exe__Config_j.cmo -c -impl doc/atdgen-tutorial-data/config-file/config_j.ml) File "doc/atdgen-tutorial-data/config-file/config_j.ml", line 194, characters 10-39: 194 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/spec_js/.test_mel.eobjs/byte -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen/test/spec_js/.spec_js.objs/byte -no-alias-deps -opaque -o atdgen/test/spec_js/.test_mel.eobjs/byte/dune__exe__Test_mel.cmo -c -impl atdgen/test/spec_js/test_mel.ml) File "atdgen/test/spec_js/test_mel.ml", lines 3-28, characters 11-6: 3 | ...........Spec_js.Make(struct 4 | open Spec_js.Mel 5 | 6 | let r1 = make write_r1 7 | let r2 = make write_r2 ... 25 | let ages = make write_ages 26 | let open_enum = make write_open_enum 27 | let open_enum_list = make write_open_enum_list 28 | end) Error: Modules do not match: sig val r1 : Spec_js.Mel.r1 -> Atdgen_codec_runtime.Json.t val r2 : Spec_js__Spec_t.r2 -> Atdgen_codec_runtime.Json.t val r3 : Spec_js__Spec_t.r3 -> Atdgen_codec_runtime.Json.t val r4 : Spec_js__Spec_t.r4 -> Atdgen_codec_runtime.Json.t val r5 : Spec_js__Spec_t.r5 -> Atdgen_codec_runtime.Json.t val r6 : Spec_js__Spec_t.r6 -> Atdgen_codec_runtime.Json.t val r7 : Spec_js__Spec_t.r7 -> Atdgen_codec_runtime.Json.t val r8 : Spec_js__Spec_t.r8 -> Atdgen_codec_runtime.Json.t val j1 : Spec_js__.Spec_t.j1 -> Atdgen_codec_runtime.Json.t val j2 : unit -> Atdgen_codec_runtime.Json.t val j3 : Spec_js__.Spec_t.j3 -> Atdgen_codec_runtime.Json.t val j4 : char -> Atdgen_codec_runtime.Json.t val o1 : Spec_js__.Spec_t.o1 -> Atdgen_codec_runtime.Json.t val o2 : Spec_js__.Spec_t.o2 -> Atdgen_codec_runtime.Json.t val t1 : Spec_js__Spec_t.t1 -> Atdgen_codec_runtime.Json.t val t2 : Spec_js__Spec_t.t2 -> Atdgen_codec_runtime.Json.t val v1list : Spec_js__.Spec_t.v1list -> Atdgen_codec_runtime.Json.t val v2 : Spec_js__Spec_t.v2 -> Atdgen_codec_runtime.Json.t val v3list : Spec_js__.Spec_t.v3list -> Atdgen_codec_runtime.Json.t val ages : Spec_js__.Spec_t.ages -> Atdgen_codec_runtime.Json.t val open_enum : Spec_js__Spec_t.open_enum -> Atdgen_codec_runtime.Json.t val open_enum_list : Spec_js__.Spec_t.open_enum_list -> Atdgen_codec_runtime.Json.t end is not included in Spec_js.Json Values do not match: val r1 : Spec_js__Spec_t.r1 -> Atdgen_codec_runtime.Json.t is not included in val r1 : Spec_js__Spec_t.r1 Spec_js.j The type Spec_js__Spec_t.r1 -> Atdgen_codec_runtime.Json.t is not compatible with the type Spec_js__Spec_t.r1 Spec_js.j = Spec_js__Spec_t.r1 -> Yojson.Safe.t Type Atdgen_codec_runtime.Json.t = [ `Assoc of (string * Atdgen_codec_runtime.Json.t) list | `Bool of bool | `Float of float | `Int of int | `Intlit of string | `List of Atdgen_codec_runtime.Json.t list | `Null | `String of string | `Tuple of Atdgen_codec_runtime.Json.t list | `Variant of string * Atdgen_codec_runtime.Json.t option ] is not compatible with type Yojson.Safe.t = [ `Assoc of (string * Yojson.Safe.t) list | `Bool of bool | `Float of float | `Int of int | `Intlit of string | `List of Yojson.Safe.t list | `Null | `String of string ] The second variant type does not allow tag(s) `Tuple, `Variant File "atdgen/test/spec_js/spec_js.ml", line 9, characters 2-27: Expected declaration File "atdgen/test/spec_js/test_mel.ml", line 6, characters 8-10: Actual declaration (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/melange/.melangespec_roundtrip.eobjs/byte -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen/test/melange/.melangespec_mel.objs/byte -I atdgen/test/melange/.melangespec_types.objs/byte -no-alias-deps -opaque -open Dune__exe -o atdgen/test/melange/.melangespec_roundtrip.eobjs/byte/dune__exe__Melangespec_roundtrip.cmo -c -impl atdgen/test/melange/melangespec_roundtrip.ml) File "atdgen/test/melange/melangespec_roundtrip.ml", line 29, characters 18-60: 29 | ; of_yojson = Atdgen_codec_runtime.Decode.decode melange ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: This expression has type Atdgen_codec_runtime.Json.t -> 'a but an expression was expected of type Yojson.Safe.t -> 'b Type Atdgen_codec_runtime.Json.t = [ `Assoc of (string * Atdgen_codec_runtime.Json.t) list | `Bool of bool | `Float of float | `Int of int | `Intlit of string | `List of Atdgen_codec_runtime.Json.t list | `Null | `String of string | `Tuple of Atdgen_codec_runtime.Json.t list | `Variant of string * Atdgen_codec_runtime.Json.t option ] is not compatible with type Yojson.Safe.t = [ `Assoc of (string * Yojson.Safe.t) list | `Bool of bool | `Float of float | `Int of int | `Intlit of string | `List of Yojson.Safe.t list | `Null | `String of string ] The second variant type does not allow tag(s) `Tuple, `Variant (cd _build/default/atdpy/src/test && ./Main.exe) Testing `atdpy'. This run has ID `I9BJYL5Y'. Full test results in `/src/_build/default/atdpy/src/test/_build/_tests/atdpy'. Test Successful in 0.000s. 0 test run. (cd _build/default/atdts/src/test && ./Main.exe) Testing `atdts'. This run has ID `2NVCVXRP'. Full test results in `/src/_build/default/atdts/src/test/_build/_tests/atdts'. Test Successful in 0.000s. 0 test run. (cd _build/default/atd/test && ./unit_tests.exe) Testing `atd'. This run has ID `DLULTMVW'. [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.008s. 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 && /usr/bin/bash -e -u -o pipefail -c 'ldc2 everything_atd.d test_atdd.d --of test') /usr/bin/bash: line 1: ldc2: command not found 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) ./run_test.sh: 5: javac: not found ./run_test.sh: 6: javac: not found ./run_test.sh: 7: javadoc: not found ./run_test.sh: 10: java: not found (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/.test_atdgen_main.eobjs/byte -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/byte/dune__exe__Testjstd.cmo -c -impl atdgen/test/testjstd.ml) File "atdgen/test/testjstd.ml", line 200, characters 10-39: 200 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/.test_atdgen_main.eobjs/byte -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/byte/dune__exe__Testj.cmo -c -impl atdgen/test/testj.ml) File "atdgen/test/testj.ml", line 200, characters 10-39: 200 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I doc/atdgen-tutorial-data/modularity/.main.eobjs/byte -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/modularity/.main.eobjs/byte/dune__exe__Part3_j.cmo -c -impl doc/atdgen-tutorial-data/modularity/part3_j.ml) File "doc/atdgen-tutorial-data/modularity/part3_j.ml", line 32, characters 10-39: 32 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -bin-annot -I atdgen/test/melange/.melangespec_roundtrip.eobjs/byte -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen/test/melange/.melangespec_mel.objs/byte -I atdgen/test/melange/.melangespec_types.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/melange/.melangespec_roundtrip.eobjs/byte/dune__exe__Melangespec_j.cmo -c -impl atdgen/test/melange/melangespec_j.ml) File "atdgen/test/melange/melangespec_j.ml", line 395, characters 10-39: 395 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I doc/atdgen-tutorial-data/config-file/.config.eobjs/byte -I doc/atdgen-tutorial-data/config-file/.config.eobjs/native -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/config-file/.config.eobjs/native/dune__exe__Config_j.cmx -c -impl doc/atdgen-tutorial-data/config-file/config_j.ml) File "doc/atdgen-tutorial-data/config-file/config_j.ml", line 194, characters 10-39: 194 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I doc/atdgen-tutorial-data/modularity/.main.eobjs/byte -I doc/atdgen-tutorial-data/modularity/.main.eobjs/native -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/modularity/.main.eobjs/native/dune__exe__Part3_j.cmx -c -impl doc/atdgen-tutorial-data/modularity/part3_j.ml) File "doc/atdgen-tutorial-data/modularity/part3_j.ml", line 32, characters 10-39: 32 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I doc/atdgen-tutorial-data/validate/.resume.eobjs/byte -I doc/atdgen-tutorial-data/validate/.resume.eobjs/native -I /home/opam/.opam/4.14/lib/yojson -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o doc/atdgen-tutorial-data/validate/.resume.eobjs/native/dune__exe__Resume_j.cmx -c -impl doc/atdgen-tutorial-data/validate/resume_j.ml) File "doc/atdgen-tutorial-data/validate/resume_j.ml", line 237, characters 10-39: 237 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/.test_atdgen_main.eobjs/byte -I atdgen/test/.test_atdgen_main.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/native/dune__exe__Test_ambiguous_variant_j.cmx -c -impl atdgen/test/test_ambiguous_variant_j.ml) File "atdgen/test/test_ambiguous_variant_j.ml", line 40, characters 12-41: 40 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/melange/.melangespec_roundtrip.eobjs/byte -I atdgen/test/melange/.melangespec_roundtrip.eobjs/native -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/byte -I atdgen-codec-runtime/src/.atdgen_codec_runtime.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -I atdgen/test/melange/.melangespec_mel.objs/byte -I atdgen/test/melange/.melangespec_mel.objs/native -I atdgen/test/melange/.melangespec_types.objs/byte -I atdgen/test/melange/.melangespec_types.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/melange/.melangespec_roundtrip.eobjs/native/dune__exe__Melangespec_j.cmx -c -impl atdgen/test/melange/melangespec_j.ml) File "atdgen/test/melange/melangespec_j.ml", line 395, characters 10-39: 395 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/.test_atdgen_main.eobjs/byte -I atdgen/test/.test_atdgen_main.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/native/dune__exe__Test3j_j.cmx -c -impl atdgen/test/test3j_j.ml) File "atdgen/test/test3j_j.ml", line 264, characters 10-39: 264 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/.test_atdgen_main.eobjs/byte -I atdgen/test/.test_atdgen_main.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/native/dune__exe__Test_classic_inline_record_j.cmx -c -impl atdgen/test/test_classic_inline_record_j.ml) File "atdgen/test/test_classic_inline_record_j.ml", line 43, characters 10-39: 43 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/.test_atdgen_main.eobjs/byte -I atdgen/test/.test_atdgen_main.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/native/dune__exe__Testj.cmx -c -impl atdgen/test/testj.ml) File "atdgen/test/testj.ml", line 200, characters 10-39: 200 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -27 -safe-string -g -I atdgen/test/.test_atdgen_main.eobjs/byte -I atdgen/test/.test_atdgen_main.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/biniou -I /home/opam/.opam/4.14/lib/yojson -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -I atdgen-runtime/src/.atdgen_runtime.objs/byte -I atdgen-runtime/src/.atdgen_runtime.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o atdgen/test/.test_atdgen_main.eobjs/native/dune__exe__Testjstd.cmx -c -impl atdgen/test/testjstd.ml) File "atdgen/test/testjstd.ml", line 200, characters 10-39: 200 | match Yojson.Safe.start_any_variant p lb with ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: Unbound value Yojson.Safe.start_any_variant "/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1 2026-01-09 23:11.17: Job failed: Failed: Build failed