2026-01-20 08:52.59: New job: test NathanReb/ppx_yojson https://github.com/NathanReb/ppx_yojson.git#refs/heads/main (2e94c7011dc606d6de40bf3700ed2e9a29c62176) (linux-arm64:debian-13-5.4_arm64_opam-2.5) Base: ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 Opam project build To reproduce locally: git clone --recursive "https://github.com/NathanReb/ppx_yojson.git" -b "main" && cd "ppx_yojson" && git reset --hard 2e94c701 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 # debian-13-5.4_arm64_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 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 ppx_yojson.opam ./ RUN opam pin add -yn ppx_yojson.dev './' RUN echo '(lang dune 3.0)' > './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 cmdliner.2.1.0 cstruct.6.2.0 dune.3.21.0 ezjsonm.1.3.0 fmt.0.11.0 hex.1.5.0 jsonm.1.0.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.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 ppx_yojson.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-20 08:52.59: Using cache hint "NathanReb/ppx_yojson-ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370-debian-13-5.4_arm64_opam-2.5-a6479c5284bdaad0aa0d8a0aeee46064" 2026-01-20 08:52.59: Using OBuilder spec: ((from ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370) (comment debian-13-5.4_arm64_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 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src ppx_yojson.opam) (dst ./)) (run (network host) (shell "opam pin add -yn ppx_yojson.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-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 cstruct.6.2.0 dune.3.21.0 ezjsonm.1.3.0 fmt.0.11.0 hex.1.5.0 jsonm.1.0.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.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 ppx_yojson.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-20 08:52.59: Waiting for resource in pool OCluster 2026-01-20 13:37.26: Waiting for worker… 2026-01-20 16:53.05: Got resource from pool OCluster Building on ainia.caelum.ci.dev All commits already cached HEAD is now at 2e94c70 Merge pull request #46 from NathanReb/ocamlformat-0-26-1 (from ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370) Unable to find image 'ocaml/opam:debian-13-ocaml-5.4@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370' locally docker.io/ocaml/opam@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370: Pulling from ocaml/opam bdfce8c2bb9c: Pulling fs layer bdfce8c2bb9c: Download complete bdfce8c2bb9c: Pull complete Digest: sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 Status: Downloaded newer image for ocaml/opam@sha256:1733caa24629b4458e1ec6a11272bfd8cf9370838e13b0bb017f4f8779b0b370 2026-01-20 16:53.05 ---> using "9e9b656e9b6bdc237589a9d76f00a1fbae61934b764b5da2a79ad3132262762c" from cache /: (comment debian-13-5.4_arm64_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-20 16:53.05 ---> using "16d8338ac3f28cc60f8ade39bc00db9fc8ea5e4128cc4217b2f8937c548f693e" 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. 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. Continue? [Y/n] y Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-01-20 16:53.05 ---> using "28ed39bc46dc71b63a4db24822d6116d272e3c3b6cf3a4c750ee0816294d8604" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-85-generic The OCaml toplevel, version 5.4.0 2.5.0 2026-01-20 16:53.05 ---> using "59045ffde86693f70a84c038fc17d2b0f4cca4b6e8597706980c949f95211e91" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-20 16:53.05 ---> using "136ef18ba7fbea384565010841d122831b56c12750f60d960037e100311d559f" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD a6b2f19780..1c997ec9e6 master -> origin/master 873cb18c37 Merge pull request #29216 from shonfeder/release-dune-3.21.0 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository Already up-to-date. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2026-01-20 16:53.05 ---> using "77d924d48c2741f6cd2a5373c465c5da3ae556b1242bf3e73d77877e7d788307" from cache /src: (copy (src ppx_yojson.opam) (dst ./)) 2026-01-20 16:53.05 ---> saved as "434b0b4378007995f489132b95fb8452464735e691defeb667e18ece5f784656" /src: (run (network host) (shell "opam pin add -yn ppx_yojson.dev './'")) [ppx_yojson.dev] synchronised (file:///src) ppx_yojson is now pinned to file:///src (version dev) 2026-01-20 16:53.07 ---> saved as "6f9115272126e80fbe2d31164ad33d933ae8942403cdc142051dc55190c78511" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-20 16:53.07 ---> saved as "e52ff7287bae4ffb59f06f8eb37fd1d9828ce408b5a9974ac50f16b13b364d3e" /src: (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 cmdliner.2.1.0 cstruct.6.2.0 dune.3.21.0 ezjsonm.1.3.0 fmt.0.11.0 hex.1.5.0 jsonm.1.0.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.37.0 re.1.14.0 sexplib0.v0.17.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 ppx_yojson.dev $DEPS")) + /usr/bin/sudo "apt-get" "update" - Get:1 http://deb.debian.org/debian trixie InRelease [140 kB] - Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB] - Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB] - Get:4 http://deb.debian.org/debian trixie/main arm64 Packages [9607 kB] - Get:5 http://deb.debian.org/debian-security trixie-security/main arm64 Packages [96.3 kB] - Fetched 9935 kB in 1s (8100 kB/s) - Reading package lists... <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [ppx_yojson.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 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). # To update the current shell environment, run: eval $(opam env) 2026-01-20 16:53.18 ---> saved as "ab330fe96ef8e36b439fc85032a14388e844bce470538369cb09b053879ae03d" /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 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 21 packages - install alcotest 1.9.1 - install astring 0.8.5 - install cmdliner 2.1.0 - install cstruct 6.2.0 - install dune 3.21.0 - install ezjsonm 1.3.0 - install fmt 0.11.0 - install hex 1.5.0 - install jsonm 1.0.2 - install ocaml-compiler-libs v0.17.0 - install ocaml-syntax-shims 1.0.0 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install ppx_derivers 1.2.1 - install ppxlib 0.37.0 - install re 1.14.0 - install sexplib0 v0.17.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 cmdliner.2.1.0 (cached) -> retrieved cstruct.6.2.0 (cached) -> retrieved ezjsonm.1.3.0 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved hex.1.5.0 (cached) -> retrieved jsonm.1.0.2 (cached) -> retrieved ocaml-compiler-libs.v0.17.0 (cached) -> retrieved ocaml-syntax-shims.1.0.0 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ppx_derivers.1.2.1 (cached) -> retrieved re.1.14.0 (cached) -> retrieved ppxlib.0.37.0 (cached) -> retrieved sexplib0.v0.17.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.21.0 (cached) -> installed cmdliner.2.1.0 -> installed ocamlbuild.0.16.1 -> installed ocamlfind.1.9.8 -> installed topkg.1.1.1 -> installed uutf.1.0.4 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed jsonm.1.0.2 -> installed dune.3.21.0 -> installed ppx_derivers.1.2.1 -> installed stdlib-shims.0.3.0 -> installed cstruct.6.2.0 -> installed sexplib0.v0.17.0 -> installed hex.1.5.0 -> installed ezjsonm.1.3.0 -> installed ocaml-syntax-shims.1.0.0 -> installed re.1.14.0 -> installed ocaml-compiler-libs.v0.17.0 -> installed yojson.3.0.0 -> installed alcotest.1.9.1 -> installed ppxlib.0.37.0 Done. # To update the current shell environment, run: eval $(opam env) 2026-01-20 16:54.12 ---> saved as "43158c230d2902c4b15d83a932467c686ace548b20ef1ab4bd7b5f9143cf95d7" /src: (copy (src .) (dst /src)) 2026-01-20 16:54.13 ---> saved as "c2cb2bff6c317f15540f03593fd1cff59ca7ea6d08b49355201936fd97826623" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) (cd _build/default/test/lib && ./test_ppx_yojson_lib.exe -e) Testing `ppx_yojson_lib'. This run has ID `WWD9ESRQ'. [OK] Integer_const 0 is_binary: "0b1". [OK] Integer_const 1 is_binary: "0B1". [OK] Integer_const 2 is_binary: "123". [OK] Integer_const 3 is_octal: "0o1". [OK] Integer_const 4 is_octal: "0O1". [OK] Integer_const 5 is_octal: "123". [OK] Integer_const 6 is_hexadecimal: "0x1". [OK] Integer_const 7 is_hexadecimal: "0X1". [OK] Integer_const 8 is_hexadecimal: "123". [OK] Utils 0 remove: Empty. [OK] Utils 1 remove: First. [OK] Utils 2 remove: Last. [OK] Utils 3 remove: Some. [OK] Utils 4 permutations: Empty. [OK] Utils 5 permutations: One. [OK] Utils 6 permutations: Two. [OK] Utils 7 permutations: Three. Full test results in `/src/_build/default/test/lib/_build/_tests/ppx_yojson_lib'. Test Successful in 0.001s. 17 tests run. File "test/rewriter/yojson.expected.ml", line 1, characters 0-0: /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/rewriter/yojson.expected.ml _build/default/test/rewriter/yojson.actual.ml diff --git a/_build/default/test/rewriter/yojson.expected.ml b/_build/default/test/rewriter/yojson.actual.ml index de77416..dda5013 100644 --- a/_build/default/test/rewriter/yojson.expected.ml +++ b/_build/default/test/rewriter/yojson.actual.ml @@ -26,8 +26,8 @@ let native_int = `Intlit "1" let patterns = ((function | `Null as _null -> () - | `Bool (true) as _true -> () - | `Bool (false) as _false -> () + | `Bool true as _true -> () + | `Bool false as _false -> () | `String "a" as _string -> () | `Int 1 as _int -> () | `Intlit "4611686018427387904" as _int_lit -> () @@ -35,15 +35,14 @@ let patterns = | `Int 1 | `Int 2 as _or_pattern -> () | `Int 1 as _s as _alias -> () | `List ((`Int 1)::(`Int 2)::(`Int 3)::[]) as _array -> () - | `List ((`Bool (true))::(`Int 1)::(`String "a")::[]) as _mixed_array -> - () - | `Assoc (("a", `Bool (true))::("b", `Int 1)::("c", `String "a")::[]) - | `Assoc (("a", `Bool (true))::("c", `String "a")::("b", `Int 1)::[]) - | `Assoc (("b", `Int 1)::("a", `Bool (true))::("c", `String "a")::[]) - | `Assoc (("b", `Int 1)::("c", `String "a")::("a", `Bool (true))::[]) - | `Assoc (("c", `String "a")::("a", `Bool (true))::("b", `Int 1)::[]) - | `Assoc (("c", `String "a")::("b", `Int 1)::("a", `Bool (true))::[]) - as _object -> () + | `List ((`Bool true)::(`Int 1)::(`String "a")::[]) as _mixed_array -> () + | `Assoc (("a", `Bool true)::("b", `Int 1)::("c", `String "a")::[]) + | `Assoc (("a", `Bool true)::("c", `String "a")::("b", `Int 1)::[]) + | `Assoc (("b", `Int 1)::("a", `Bool true)::("c", `String "a")::[]) + | `Assoc (("b", `Int 1)::("c", `String "a")::("a", `Bool true)::[]) + | `Assoc (("c", `String "a")::("a", `Bool true)::("b", `Int 1)::[]) + | `Assoc (("c", `String "a")::("b", `Int 1)::("a", `Bool true)::[]) as + _object -> () | `Assoc (("description", `String "Some written thing")::("authors", `List "/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1 2026-01-20 16:54.17: Job failed: Failed: Build failed