2025-12-09 19:39.05: New job: test ahrefs/atd https://github.com/ahrefs/atd.git#refs/heads/yojson3 (9b2abd5bc58e93fd0a38a1de4f4a819e13226e7a) (macos-x86_64:macos-homebrew-5.4_opam-2.4)Base: macos-homebrew-ocaml-5.4Opam project buildTo reproduce locally:git clone --recursive "https://github.com/ahrefs/atd.git" -b "yojson3" && cd "atd" && git reset --hard 9b2abd5bcat > Dockerfile <<'END-OF-DOCKERFILE'FROM macos-homebrew-ocaml-5.4# macos-homebrew-5.4_opam-2.4USER 1000:1000ENV CLICOLOR_FORCE="1"ENV OPAMCOLOR="always"RUN ln -f ~/local/bin/opam-2.4 ~/local/bin/opamRUN opam init --reinit -niRUN uname -rs && opam exec -- ocaml -version && opam --versionRUN cd ~/opam-repository && (git cat-file -e 8a324a5b9945e0e515da441ede437f3756caa83d || git fetch origin master) && git reset -q --hard 8a324a5b9945e0e515da441ede437f3756caa83d && git log --no-decorate -n1 --oneline && opam update -uCOPY --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 ./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 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-domains.base base-effects.base base-nnp.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.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 seq.base stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4 yojson.2.2.2"ENV CI="true"ENV OCAMLCI="true"RUN opam update --depexts && opam install --cli=2.4 --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 $DEPSRUN opam install $DEPSCOPY --chown=1000:1000 . ./srcRUN cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _buildEND-OF-DOCKERFILEdocker build .END-REPRO-BLOCK2025-12-09 19:39.05: Using cache hint "ahrefs/atd-macos-homebrew-ocaml-5.4-macos-homebrew-5.4_opam-2.4-62b2629b23f11a0873ebdc6b080252cf"2025-12-09 19:39.05: Using OBuilder spec:((from macos-homebrew-ocaml-5.4)(comment macos-homebrew-5.4_opam-2.4)(user (uid 1000) (gid 1000))(env CLICOLOR_FORCE 1)(env OPAMCOLOR always)(run (shell "ln -f ~/local/bin/opam-2.4 ~/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 8a324a5b9945e0e515da441ede437f3756caa83d || git fetch origin master) && git reset -q --hard 8a324a5b9945e0e515da441ede437f3756caa83d && 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 ./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 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 (network host)(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))(env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base 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.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 seq.base stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4 yojson.2.2.2")(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.4 --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 /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-12-09 19:39.05: Waiting for resource in pool OCluster2025-12-09 19:39.05: Waiting for worker…2025-12-09 20:26.46: Got resource from pool OClusterBuilding on i7-worker-03HEAD is now at 7757273 Bring back start_any_variantHEAD is now at 9b2abd5 Import the missing Yojson functions 'start_any_variant' and 'start_any_tuple' which were accidentally removed from Yojson.(from macos-homebrew-ocaml-5.4)2025-12-09 20:26.48 ---> using "338135fbf1889e924a607b47198b8b308c32a925cc9436066d65a9bdc402cad5" from cache/: (comment macos-homebrew-5.4_opam-2.4)/: (user (uid 1000) (gid 1000))/: (env CLICOLOR_FORCE 1)/: (env OPAMCOLOR always)/: (run (shell "ln -f ~/local/bin/opam-2.4 ~/local/bin/opam"))2025-12-09 20:26.49 ---> using "c45c11c7286cf606ab2156414383237a0e197bf48b9278e9465cc1693c9332b7" 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 --globalFormat upgrade done.<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>[default] no changes from git+file:///Users/mac1000/opam-repository2025-12-09 20:26.49 ---> using "59a16318ff40c58338bc0b572a2d778111fa14b30a0dc4a11f6465d8abb80bbd" from cache/: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))Darwin 24.5.0The OCaml toplevel, version 5.4.02.4.12025-12-09 20:26.49 ---> using "03cbf303c2ae412068cf1b7f097ec773b09f8e6d693af9a4cf051761664f96f9" 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 8a324a5b9945e0e515da441ede437f3756caa83d || git fetch origin master) && git reset -q --hard 8a324a5b9945e0e515da441ede437f3756caa83d && git log --no-decorate -n1 --oneline && opam update -u"))8a324a5b99 Add: cmdliner.2.1.0 (#28962)<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>[default] synchronised from git+file:///Users/mac1000/opam-repositoryAlready up-to-date.Nothing to do.# To update the current shell environment, run: eval $(opam env)2025-12-09 20:26.50 ---> using "298aca08415c65c197b497e1df5944924fac42732e6930f7c843af61b613bb22" from cache/: (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 ./src/./))2025-12-09 20:26.50 ---> using "ae05ab6e1d02421260e46904d3454732e6014750217cbd4b83cb68afeb05bf0f" from cache/: (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 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)[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)2025-12-09 20:26.50 ---> using "3ff45bb29e07d0b082f41d018586bb52b33672ac0294805282395a43fa021f7d" from cache/: (run (network host)(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))2025-12-09 20:26.51 ---> using "97bf5bd549fb6b75dc3599387762a1200c0fc4a47afeaf538c7e1c36c8104dee" from cache/: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base 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.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 seq.base stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4 yojson.2.2.2")/: (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.4 --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/local/bin/brew "update"- ==> Updating Homebrew...- ==> Homebrew collects anonymous analytics.- Read the analytics documentation (and how to opt-out) here:- https://docs.brew.sh/Analytics- No analytics have been recorded yet (nor will be during this `brew` run).-- ==> Homebrew is run entirely by unpaid volunteers. Please consider donating:- https://github.com/Homebrew/brew#donations-- Updated 1 tap (homebrew/cask).<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>[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)[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 3).[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).[NOTE] Package ocaml is already installed (current version is 5.4.0).[NOTE] Package base-unix is already installed (current version is base).[NOTE] Package base-threads is already installed (current version is base).[NOTE] Package base-nnp is already installed (current version is base).[NOTE] Package base-effects is already installed (current version is base).[NOTE] Package base-domains is already installed (current version is base).[NOTE] Package base-bigarray is already installed (current version is base).The following 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! It will be disabled on 2026-10-15.- ✔︎ Bottle Manifest python@3.9 (3.9.25)- ✔︎ Bottle Manifest gdbm (1.26)- ✔︎ Bottle Manifest mpdecimal (4.0.1)- ✔︎ Bottle Manifest ca-certificates (2025-12-02)- ✔︎ Bottle Manifest openssl@3 (3.6.0)- ✔︎ Bottle Manifest readline (8.3.1)- ✔︎ Bottle Manifest sqlite (3.51.1)- ✔︎ Bottle Manifest xz (5.8.1)- ✔︎ Bottle ca-certificates (2025-12-02)- ✔︎ Bottle gdbm (1.26)- ✔︎ Bottle sqlite (3.51.1)- ✔︎ Bottle mpdecimal (4.0.1)- ✔︎ Bottle readline (8.3.1)- ✔︎ Bottle xz (5.8.1)- ✔︎ Bottle openssl@3 (3.6.0)- ✔︎ Bottle python@3.9 (3.9.25)- ==> 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.sonoma.bottle.tar.gz- 🍺 /usr/local/Cellar/gdbm/1.26: 25 files, 914.1KB- ==> 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.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.0.sequoia.bottle.tar.gz- 🍺 /usr/local/Cellar/openssl@3/3.6.0: 7,609 files, 37.9MB- ==> Installing python@3.9 dependency: readline- ==> Pouring readline--8.3.1.sequoia.bottle.tar.gz- 🍺 /usr/local/Cellar/readline/8.3.1: 56 files, 2.6MB- ==> Installing python@3.9 dependency: sqlite- ==> Pouring sqlite--3.51.1.sequoia.bottle.tar.gz- 🍺 /usr/local/Cellar/sqlite/3.51.1: 13 files, 5.2MB- ==> Installing python@3.9 dependency: xz- ==> Pouring xz--5.8.1.sequoia.bottle.tar.gz- 🍺 /usr/local/Cellar/xz/5.8.1: 96 files, 2.4MB- ==> Installing python@3.9- ==> Pouring python@3.9--3.9.25.sonoma.bottle.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-Python2025-12-09 20:26.51 ---> using "f7af99e7267b962b6419944b2d97fbfa33925f29b09caedea79f5405c2591240" 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 3).[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).[NOTE] Package ocaml is already installed (current version is 5.4.0).[NOTE] Package base-unix is already installed (current version is base).[NOTE] Package base-threads is already installed (current version is base).[NOTE] Package base-nnp is already installed (current version is base).[NOTE] Package base-effects is already installed (current version is base).[NOTE] Package base-domains is already installed (current version is base).[NOTE] Package base-bigarray is already installed (current version is base).The following actions will be performed:=== install 22 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 seq base- install stdlib-shims 0.3.0- install topkg 1.1.1- install uutf 1.0.4- install yojson 2.2.2<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>-> retrieved biniou.1.2.2 (cached)-> retrieved astring.0.8.5 (cached)-> retrieved camlp-streams.5.0.1 (cached)-> retrieved alcotest.1.9.1 (cached)-> retrieved conf-python-3.9.0.0 (https://raw.githubusercontent.com/ocaml/opam-source-archives/main/patches/conf-python-3/test.py)-> retrieved cmdliner.2.1.0 (cached)-> 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 ocamlfind.1.9.8 (cached)-> installed conf-python-3.9.0.0-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912 (cached)-> retrieved seq.base (cached)-> installed seq.base-> retrieved stdlib-shims.0.3.0 (cached)-> retrieved re.1.14.0 (cached)-> retrieved uutf.1.0.4 (cached)-> retrieved topkg.1.1.1 (cached)-> retrieved yojson.2.2.2 (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 easy-format.1.3.4-> installed menhirCST.20250912-> installed camlp-streams.5.0.1-> installed stdlib-shims.0.3.0-> installed menhirLib.20250912-> installed ocaml-syntax-shims.1.0.0-> installed menhirSdk.20250912-> installed biniou.1.2.2-> installed yojson.2.2.2-> installed re.1.14.0-> installed alcotest.1.9.1-> installed menhir.20250912Done.# To update the current shell environment, run: eval $(opam env)2025-12-09 20:26.52 ---> using "66bb1bf36e69ad4ba7887ed46b13e72999f2c191530215bc03bdf158f292d45c" from cache/: (copy (src .) (dst ./src))2025-12-09 20:26.53 ---> saved as "dc4cd3e5c12d577bff2dd714eef1ff19751ca3bfd4858e469141ba41e1b2bf9a"/: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))(cd _build/default && /Users/mac1000/.opam/5.4.0/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.dFile "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 && /Users/mac1000/.opam/5.4.0/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 -bin-annot-occurrences -I atdj/src/.atdj_main.eobjs/byte -I /Users/mac1000/.opam/5.4.0/lib/re -I atd/src/.atd.objs/byte -no-alias-deps -opaque -open Dune__exe -o atdj/src/.atdj_main.eobjs/byte/dune__exe__Atdj_main.cmo -c -impl atdj/src/atdj_main.ml)File "_none_", line 1:Alert ocaml_deprecated_auto_include:OCaml's lib directory layout changed in 5.0. The unix subdirectory has beenautomatically added to the search path, but you should add -I +unix to thecommand-line to silence this alert (e.g. by adding unix to the list oflibraries in your dune file, or adding use_unix to your _tags file forocamlbuild, or using -package unix for ocamlfind).File "atdd/test/dlang-tests/dune", lines 17-26, characters 0-141:17 | (rule18 | (alias runtest)19 | (package atdd)20 | (deps21 | (glob_files *.d))22 | (action23 | (progn24 | (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(cd _build/default && /Users/mac1000/.opam/5.4.0/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 atdj/src/.atdj_main.eobjs/byte -I atdj/src/.atdj_main.eobjs/native -I /Users/mac1000/.opam/5.4.0/lib/re -I atd/src/.atd.objs/byte -I atd/src/.atd.objs/native -cmi-file atdj/src/.atdj_main.eobjs/byte/dune__exe__Atdj_main.cmi -no-alias-deps -opaque -open Dune__exe -o atdj/src/.atdj_main.eobjs/native/dune__exe__Atdj_main.cmx -c -impl atdj/src/atdj_main.ml)File "_none_", line 1:Alert ocaml_deprecated_auto_include:OCaml's lib directory layout changed in 5.0. The unix subdirectory has beenautomatically added to the search path, but you should add -I +unix to thecommand-line to silence this alert (e.g. by adding unix to the list oflibraries in your dune file, or adding use_unix to your _tags file forocamlbuild, or using -package unix for ocamlfind).(cd _build/default/atd/test && ./unit_tests.exe)Testing `atd'.This run has ID `C1NFVUB0'.[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.013s. 32 tests run.File "atds/test/dune", lines 13-22, characters 0-177:13 | (rule14 | (alias runtest)15 | (package atds)16 | (deps17 | AtdsTest.scala18 | argonaut_2.11-6.2.2.jar19 | argonaut_2.12-6.2.2.jar20 | junit-4.8.2.jar21 | 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(cd _build/default/atdts/src/test && ./Main.exe)Testing `atdts'.This run has ID `7K38AUMK'.Full test results in `~/src/_build/default/atdts/src/test/_build/_tests/atdts'.Test Successful in 0.000s. 0 test run.File "atdcat/test/dune", lines 57-87, characters 0-907:57 | (rule58 | (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/atdpy/src/test && ./Main.exe)Testing `atdpy'.This run has ID `XEOPWZZV'.Full test results in `~/src/_build/default/atdpy/src/test/_build/_tests/atdpy'.Test Successful in 0.000s. 0 test run.File "atdpy/test/python-tests/dune", lines 19-29, characters 0-198:19 | (rule20 | (alias runtest)21 | (package atdpy)22 | (deps23 | everything.py24 | (glob_files *.py))25 | (action26 | (progn27 | (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 .)/Library/Developer/CommandLineTools/usr/bin/python3: No module named flake8File "atdj/test/dune", lines 53-61, characters 0-160:53 | (rule54 | (alias runtest)55 | (package atdj)56 | (deps57 | AtdjTest.java58 | json.jar59 | junit-4.8.2.jar60 | (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 "atdgen/test/test2j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/test2j.expected.ml _build/default/atdgen/test/test2j.mldiff --git a/_build/default/atdgen/test/test2j.expected.ml b/_build/default/atdgen/test/test2j.mlindex cea20a4..1f613c7 100644--- a/_build/default/atdgen/test/test2j.expected.ml+++ b/_build/default/atdgen/test/test2j.ml@@ -52,25 +52,7 @@ let string_of__string_option ?(len = 1024) x =let read__string_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->File "atdgen/test/test3j_j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/test3j_j.expected.ml _build/default/atdgen/test/test3j_j.mldiff --git a/_build/default/atdgen/test/test3j_j.expected.ml b/_build/default/atdgen/test/test3j_j.mlindex 5d74e97..77be75a 100644--- a/_build/default/atdgen/test/test3j_j.expected.ml+++ b/_build/default/atdgen/test/test3j_j.ml@@ -261,80 +261,7 @@ let string_of_tf_variant2 ?(len = 1024) x =let read_tf_variant2 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "a" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A x- | "b" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | "Unknown" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- fun p lb ->- Yojson.Safe.read_space p lb;- let std_tuple = Yojson.Safe.start_any_tuple p lb in- let len = ref 0 in- let end_of_tuple = ref false in- (try- let x0 =- let x =- (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- incr len;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- x- in- let x1 =- let x =- (- read__json_nullable- ) p lb- in- incr len;- (try- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- with Yojson.End_of_tuple -> end_of_tuple := true);- x- in- if not !end_of_tuple then (- try- while true do- Yojson.Safe.skip_json p lb;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- done- with Yojson.End_of_tuple -> ()- );- (x0, x1)- with Yojson.End_of_tuple ->- Atdgen_runtime.Oj_run.missing_tuple_fields p !len [ 0; 1 ]);- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Unknown x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -445,30 +372,7 @@ let string_of_tf_variant ?(len = 1024) x =let read_tf_variant = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "a" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A x- | "b" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -1064,30 +968,7 @@ let read_sf_adapted = (Atdgen_runtime.Oj_run.read_with_adapter Atdgen_runtime.Json_adapter.One_field.normalize (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "a" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_bool- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A x- | "b" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -1140,20 +1021,7 @@ let string_of_sample_open_enum ?(len = 1024) x =let read_sample_open_enum = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Alpha" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Alpha- | "Beta" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Beta- | x ->- `Other x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Alpha" ->@@ -1230,25 +1098,7 @@ let string_of__int_nullable_option ?(len = 1024) x =let read__int_nullable_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__int_nullable- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1734,30 +1584,7 @@ let read_adapted_f = (Atdgen_runtime.Oj_run.read_with_adapter (Atdgen_runtime.Json_adapter.normalize_type_field "type") (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "fa" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `FA x- | "fb" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_b- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `FB x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -1820,30 +1647,7 @@ let read_adapted = (Atdgen_runtime.Oj_run.read_with_adapter Atdgen_runtime.Json_adapter.Type_field.normalize (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "a" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A x- | "b" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_b- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->File "atdgen/test/test_ambiguous_variant_j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/test_ambiguous_variant_j.expected.ml _build/default/atdgen/test/test_ambiguous_variant_j.mldiff --git a/_build/default/atdgen/test/test_ambiguous_variant_j.expected.ml b/_build/default/atdgen/test/test_ambiguous_variant_j.mlindex e5432e3..ed1a763 100644--- a/_build/default/atdgen/test/test_ambiguous_variant_j.expected.ml+++ b/_build/default/atdgen/test/test_ambiguous_variant_j.ml@@ -37,30 +37,7 @@ let read_ambiguous' = (Atdgen_runtime.Oj_run.read_with_adapter Json_adapters.Identity.normalize (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Int" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Int x : ambiguous')- | "String" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (String x : ambiguous')- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -123,30 +100,7 @@ let read_ambiguous = (Atdgen_runtime.Oj_run.read_with_adapter Json_adapters.Identity.normalize (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Int" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Int x : ambiguous)- | "String" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (String x : ambiguous)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->File "atdgen/test/test_classic_inline_record_j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/test_classic_inline_record_j.expected.ml _build/default/atdgen/test/test_classic_inline_record_j.mldiff --git a/_build/default/atdgen/test/test_classic_inline_record_j.expected.ml b/_build/default/atdgen/test/test_classic_inline_record_j.mlindex 81f9ccf..ad134fc 100644--- a/_build/default/atdgen/test/test_classic_inline_record_j.expected.ml+++ b/_build/default/atdgen/test/test_classic_inline_record_j.ml@@ -40,129 +40,7 @@ let string_of_foo ?(len = 1024) x =let read_foo = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Foo" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Yojson.Safe.read_space p lb;- Yojson.Safe.read_lcurl p lb;- let field_x = ref (None) in- let field_y = ref (None) in- try- Yojson.Safe.read_space p lb;- Yojson.Safe.read_object_end lb;- Yojson.Safe.read_space p lb;- let f =- fun s pos len ->- if pos < 0 || len < 0 || pos + len > String.length s then- invalid_arg (Printf.sprintf "out-of-bounds substring position or length: string = %S, requested position = %i, requested length = %i" s pos len);- if len = 1 then (- match String.unsafe_get s pos with- | 'x' -> (- 0- )- | 'y' -> (- 1- )- | _ -> (- -1- )- )- else (- -1- )- in- let i = Yojson.Safe.map_ident p f lb in- Atdgen_runtime.Oj_run.read_until_field_value p lb;- (- match i with- | 0 ->- field_x := (- Some (- (- Atdgen_runtime.Oj_run.read_int- ) p lb- )- );- | 1 ->- field_y := (- Some (- (- Atdgen_runtime.Oj_run.read_number- ) p lb- )- );- | _ -> (- Yojson.Safe.skip_json p lb- )- );- while true do- Yojson.Safe.read_space p lb;- Yojson.Safe.read_object_sep p lb;- Yojson.Safe.read_space p lb;- let f =- fun s pos len ->- if pos < 0 || len < 0 || pos + len > String.length s then- invalid_arg (Printf.sprintf "out-of-bounds substring position or length: string = %S, requested position = %i, requested length = %i" s pos len);- if len = 1 then (- match String.unsafe_get s pos with- | 'x' -> (- 0- )- | 'y' -> (- 1- )- | _ -> (- -1- )- )- else (- -1- )- in- let i = Yojson.Safe.map_ident p f lb in- Atdgen_runtime.Oj_run.read_until_field_value p lb;- (- match i with- | 0 ->- field_x := (- Some (- (- Atdgen_runtime.Oj_run.read_int- ) p lb- )- );- | 1 ->- field_y := (- Some (- (- Atdgen_runtime.Oj_run.read_number- ) p lb- )- );- | _ -> (- Yojson.Safe.skip_json p lb- )- );- done;- assert false;- with Yojson.End_of_object -> (- (Foo- {- x = (match !field_x with Some x -> x | None -> Atdgen_runtime.Oj_run.missing_field p "x");- y = (match !field_y with Some x -> x | None -> Atdgen_runtime.Oj_run.missing_field p "y");- }- : foo)- )- ) in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->File "atdgen/test/testjstd_j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/testjstd_j.expected.ml _build/default/atdgen/test/testjstd_j.mldiff --git a/_build/default/atdgen/test/testjstd_j.expected.ml b/_build/default/atdgen/test/testjstd_j.mlindex 21a5fc4..9c3659d 100644--- a/_build/default/atdgen/test/testjstd_j.expected.ml+++ b/_build/default/atdgen/test/testjstd_j.ml@@ -197,34 +197,7 @@ and string_of_p' write__a ?(len = 1024) x =let rec read_p' read__a = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A : 'a p')- | "Bb" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_p' read__a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Bb x : 'a p')- | "Ccccc" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Ccccc x : 'a p')- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -318,29 +291,7 @@ and string_of_r ?(len = 1024) x =let rec read_p = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A- | "B" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_r- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | "C" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `C- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -554,43 +505,7 @@ and _test_variant_list_of_string s =and read_test_variant = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Case1" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case1- | "Case2" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case2 x- | "Case3" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case3 x- | "Case4" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__test_variant_list- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case4 x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Case1" ->@@ -663,34 +578,7 @@ and string_of__int_p ?(len = 1024) x =let rec read__int_p = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A : _ p')- | "Bb" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__int_p- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Bb x : _ p')- | "Ccccc" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Ccccc x : _ p')- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -768,25 +656,7 @@ and string_of_poly write__x write__y ?(len = 1024) x =let rec read__a_b_poly_option read__a read__b = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_poly read__a read__b- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1098,25 +968,7 @@ let string_of__val1_option ?(len = 1024) x =let read__val1_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_val1- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1482,25 +1334,7 @@ let string_of__string_option ?(len = 1024) x =let read__string_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1555,25 +1389,7 @@ let string_of__int_option ?(len = 1024) x =let read__int_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1612,25 +1428,7 @@ let string_of__float_option ?(len = 1024) x =let read__float_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_number- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1669,25 +1467,7 @@ let string_of__bool_option ?(len = 1024) x =let read__bool_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_bool- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -3628,25 +3408,7 @@ let string_of__x_bee1b88 ?(len = 1024) x =let read__x_bee1b88 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -3933,25 +3695,7 @@ let string_of_hello ?(len = 1024) x =let read_hello = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Hello" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Hello x- | "World" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `World- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "World" ->File "atdgen/test/melange/melangespec_j.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/melange/melangespec_j.expected.ml _build/default/atdgen/test/melange/melangespec_j.mldiff --git a/_build/default/atdgen/test/melange/melangespec_j.expected.ml b/_build/default/atdgen/test/melange/melangespec_j.mlindex 5cba12b..c2ed7f4 100644--- a/_build/default/atdgen/test/melange/melangespec_j.expected.ml+++ b/_build/default/atdgen/test/melange/melangespec_j.ml@@ -392,20 +392,7 @@ let string_of_with_open_enum ?(len = 1024) x =let read_with_open_enum = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Alpha" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Alpha- | "Beta" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Beta- | x ->- `Other x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Alpha" ->@@ -467,20 +454,7 @@ let string_of_variant3 ?(len = 1024) x =let read_variant3 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "C" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (C : variant3)- | "B" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (B : variant3)- | x ->- (A x : variant3)- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "C" ->@@ -511,20 +485,7 @@ let string_of_variant2 ?(len = 1024) x =let read_variant2 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A : variant2)- | "C" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (C : variant2)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -560,25 +521,7 @@ let string_of_variant1 ?(len = 1024) x =let read_variant1 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A x : variant1)- | "B" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (B : variant1)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "B" ->@@ -640,30 +583,7 @@ let string_of_v2 ?(len = 1024) x =let read_v2 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "V1_foo" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (V1_foo x : v2)- | "V2_bar" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_bool- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (V2_bar x : v2)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -722,30 +642,7 @@ let string_of_v1 ?(len = 1024) x =let read_v1 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "V1_foo" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_bool- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (V1_foo x : v1)- | "V2_bar" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (V2_bar x : v1)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -923,51 +820,7 @@ let string_of_single_tuple ?(len = 1024) x =let read_single_tuple = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Single_tuple" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- fun p lb ->- Yojson.Safe.read_space p lb;- let std_tuple = Yojson.Safe.start_any_tuple p lb in- let len = ref 0 in- let end_of_tuple = ref false in- (try- let x0 =- let x =- (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- incr len;- (try- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- with Yojson.End_of_tuple -> end_of_tuple := true);- x- in- if not !end_of_tuple then (- try- while true do- Yojson.Safe.skip_json p lb;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- done- with Yojson.End_of_tuple -> ()- );- (x0)- with Yojson.End_of_tuple ->- Atdgen_runtime.Oj_run.missing_tuple_fields p !len [ 0 ]);- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Single_tuple x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->@@ -1096,84 +949,7 @@ let string_of__unit_simple_var ?(len = 1024) x =let read__unit_simple_var = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Foo" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- fun p lb ->- Yojson.Safe.read_space p lb;- let std_tuple = Yojson.Safe.start_any_tuple p lb in- let len = ref 0 in- let end_of_tuple = ref false in- (try- let x0 =- let x =- (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- incr len;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- x- in- let x1 =- let x =- (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- incr len;- (try- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- with Yojson.End_of_tuple -> end_of_tuple := true);- x- in- if not !end_of_tuple then (- try- while true do- Yojson.Safe.skip_json p lb;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- done- with Yojson.End_of_tuple -> ()- );- (x0, x1)- with Yojson.End_of_tuple ->- Atdgen_runtime.Oj_run.missing_tuple_fields p !len [ 0; 1 ]);- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foo x- | "Bar" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Bar- | "Foobar" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_null- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foobar x- | "Foo_id" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_id- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foo_id x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Bar" ->@@ -1334,84 +1110,7 @@ let string_of_simple_var write__a ?(len = 1024) x =let read_simple_var read__a = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Foo" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- fun p lb ->- Yojson.Safe.read_space p lb;- let std_tuple = Yojson.Safe.start_any_tuple p lb in- let len = ref 0 in- let end_of_tuple = ref false in- (try- let x0 =- let x =- (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- incr len;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- x- in- let x1 =- let x =- (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- incr len;- (try- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- with Yojson.End_of_tuple -> end_of_tuple := true);- x- in- if not !end_of_tuple then (- try- while true do- Yojson.Safe.skip_json p lb;- Yojson.Safe.read_space p lb;- Yojson.Safe.read_tuple_sep2 p std_tuple lb;- done- with Yojson.End_of_tuple -> ()- );- (x0, x1)- with Yojson.End_of_tuple ->- Atdgen_runtime.Oj_run.missing_tuple_fields p !len [ 0; 1 ]);- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foo x- | "Bar" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Bar- | "Foobar" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foobar x- | "Foo_id" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_id- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Foo_id x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Bar" ->@@ -2749,30 +2448,7 @@ let read_adapted = (Atdgen_runtime.Oj_run.read_with_adapter Atdgen_codec_runtime.Json_adapter.Type_field.normalize (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A x- | "B" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_b- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| x ->File "atdgen/test/testj.expected.ml", line 1, characters 0-0:/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/atdgen/test/testj.expected.ml _build/default/atdgen/test/testj.mldiff --git a/_build/default/atdgen/test/testj.expected.ml b/_build/default/atdgen/test/testj.mlindex a99920c..74ba600 100644--- a/_build/default/atdgen/test/testj.expected.ml+++ b/_build/default/atdgen/test/testj.ml@@ -197,34 +197,7 @@ and string_of_p' write__a ?(len = 1024) x =let rec read_p' read__a = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A : 'a p')- | "Bb" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_p' read__a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Bb x : 'a p')- | "Ccccc" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__a- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Ccccc x : 'a p')- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -318,29 +291,7 @@ and string_of_r ?(len = 1024) x =let rec read_p = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `A- | "B" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_r- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `B x- | "C" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `C- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -558,43 +509,7 @@ and _test_variant_list_of_string s =and read_test_variant = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Case1" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case1- | "Case2" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case2 x- | "Case3" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case3 x- | "Case4" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__test_variant_list- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Case4 x- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "Case1" ->@@ -667,34 +582,7 @@ and string_of__int_p ?(len = 1024) x =let rec read__int_p = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "A" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (A : _ p')- | "Bb" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read__int_p- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Bb x : _ p')- | "Ccccc" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Ccccc x : _ p')- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "A" ->@@ -772,25 +660,7 @@ and string_of_poly write__x write__y ?(len = 1024) x =let rec read__a_b_poly_option read__a read__b = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_poly read__a read__b- ) p lb- in- Yojson.Safe.read_space p lb;1m- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1112,25 +982,7 @@ let string_of__val1_option ?(len = 1024) x =let read__val1_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- read_val1- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1500,25 +1352,7 @@ let string_of__string_option ?(len = 1024) x =let read__string_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1573,25 +1407,7 @@ let string_of__int_option ?(len = 1024) x =let read__int_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1630,25 +1446,7 @@ let string_of__float_option ?(len = 1024) x =let read__float_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_number- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -1687,25 +1485,7 @@ let string_of__bool_option ?(len = 1024) x =let read__bool_option = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_bool- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -3684,25 +3464,7 @@ let string_of__x_bee1b88 ?(len = 1024) x =let read__x_bee1b88 = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "None" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (None : _ option)- | "Some" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_int- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- (Some x : _ option)- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "None" ->@@ -3989,25 +3751,7 @@ let string_of_hello ?(len = 1024) x =let read_hello = (fun p lb ->Yojson.Safe.read_space p lb;- match Yojson.Safe.start_any_variant p lb with- | `Edgy_bracket -> (- match Yojson.Safe.read_ident p lb with- | "Hello" ->- Atdgen_runtime.Oj_run.read_until_field_value p lb;- let x = (- Atdgen_runtime.Oj_run.read_string- ) p lb- in- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `Hello x- | "World" ->- Yojson.Safe.read_space p lb;- Yojson.Safe.read_gt p lb;- `World- | x ->- Atdgen_runtime.Oj_run.invalid_variant_tag p x- )+ match Atdgen_runtime.Yojson_extra.start_any_variant p lb with| `Double_quote -> (match Yojson.Safe.finish_string p lb with| "World" ->File "atdcpp/test/cpp-tests/dune", lines 19-28, characters 0-183:19 | (rule20 | (alias runtest)21 | (package atdcpp)22 | (deps23 | (glob_files *.cpp))24 | (action25 | (progn26 | (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 found12 | #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 found12 | #include <rapidjson/document.h>| ^~~~~~~~~~~~~~~~~~~~~~1 error generated.File "atdgen/test/melange/dune", lines 48-51, characters 0-85:48 | (rule49 | (alias runtest)50 | (package atdgen)51 | (action (run ./melangespec_roundtrip.exe)))(cd _build/default/atdgen/test/melange && ./melangespec_roundtrip.exe)encode list open enum: Roundtrip failed.Have:[ "Alpha", "other" ]Decoded:exn: Yojson__Common.Json_error("Line 1, bytes 1-19:\nExpected '\"' or '[' but found '<\"Alpha\">,\"other\"]'")backtrace:encode adapted variant b: Roundtrip failed.Have:[ "B", { "thing": 1 } ]Decoded:exn: Yojson__Common.Json_error("Line 1, bytes 0-17:\nExpected '\"' or '[' but found '<\"B\":{\"thing\":1}>'")backtrace:encode adapted variant a: Roundtrip failed.Have:[ "A", { "other_thing": false, "thing": "thing" } ]Decoded:exn: Yojson__Common.Json_error("Line 1, bytes 0-34:\nExpected '\"' or '[' but found '<\"A\":{\"other_thing\":false,\"thing\"'")backtrace:encode 1 tuple: Roundtrip failed.Have:[ "Single_tuple", [ 123 ] ]Decoded:exn: Yojson__Common.Json_error("Line 1, bytes 0-22:\nExpected '\"' or '[' but found '<\"Single_tuple\":(123)>'")backtrace:encode variant: Roundtrip failed.Have:[[ "Foo", [ 123, 456 ] ], "Bar", [ "Foobar", null ], [ "Foo_id", "testing" ]]Decoded:exn: Yojson__Common.Json_error("Line 1, bytes 1-35:\nExpected '\"' or '[' but found '<\"Foo\":(123,456)>,<\"Bar\">,<\"Fooba'")backtrace:(cd _build/default/atdgen/test && ./test_atdgen_main.exe)Testing `atdgen'.This run has ID `XQJXPWFK'.[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 12025-12-09 20:27.08: Job failed: Failed: Build failed