Organisationsocaml-communityyojsond692c1 (master)ubuntu-26.04-4.14_opam-2.5

ubuntu-26.04-4.14_opam-2.5

Logs

Show full logs
2026-05-05 14:41.36: New job: test ocaml-community/yojson https://github.com/ocaml-community/yojson.git#refs/heads/master (d692c15dc630a1a1635719b5426299df6f02c5ef) (linux-x86_64:ubuntu-26.04-4.14_opam-2.5)
Base: ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d
Opam project build

To reproduce locally:

git clone --recursive "https://github.com/ocaml-community/yojson.git" -b "master" && cd "yojson" && git reset --hard d692c15d
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d
# ubuntu-26.04-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 a70af20c7161f9d2e1ede477647f5f9e06d6e78f || git fetch origin master) && git reset -q --hard a70af20c7161f9d2e1ede477647f5f9e06d6e78f && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 yojson.opam yojson-five.opam yojson-bench.opam ./
RUN opam pin add -yn yojson.dev './' && \
    opam pin add -yn yojson-five.dev './' && \
    opam pin add -yn yojson-bench.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 benchmark.1.7 cmdliner.2.1.1 dune.3.23.0 fmt.0.11.0 gen.1.1 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.38.0 re.1.14.0 sedlex.3.7 seq.base sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.5 --depext-only -y yojson.dev yojson-five.dev yojson-bench.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-05-05 14:41.36: Using cache hint "ocaml-community/yojson-ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d-ubuntu-26.04-4.14_opam-2.5-bd83597c7938ae2f99dc15ad7d18b221"
2026-05-05 14:41.36: Using OBuilder spec:
((from ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d)
 (comment ubuntu-26.04-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 a70af20c7161f9d2e1ede477647f5f9e06d6e78f || git fetch origin master) && git reset -q --hard a70af20c7161f9d2e1ede477647f5f9e06d6e78f && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src yojson.opam yojson-five.opam yojson-bench.opam) (dst ./))
 (run (network host)
      (shell  "opam pin add -yn yojson.dev './' && \
             \nopam pin add -yn yojson-five.dev './' && \
             \nopam pin add -yn yojson-bench.dev './'"))
 (run (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 benchmark.1.7 cmdliner.2.1.1 dune.3.23.0 fmt.0.11.0 gen.1.1 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.38.0 re.1.14.0 sedlex.3.7 seq.base sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4")
 (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 yojson.dev yojson-five.dev yojson-bench.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-05-05 14:41.36: Waiting for resource in pool OCluster
2026-05-05 19:31.53: Waiting for worker…
2026-05-05 19:39.03: Got resource from pool OCluster
Building on doris.caelum.ci.dev
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint: 
hint: 	git config --global init.defaultBranch <name>
hint: 
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint: 
hint: 	git branch -m <name>
Initialized empty Git repository in /var/cache/obuilder/ocluster/git/yojson.git-94d92a5fc7853768992cd13718ce0b42b823f9ef/.git/
HEAD is now at d692c15 Merge pull request #200 from Leonidas-from-XIV/better-docs

(from ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d)
Unable to find image 'ocaml/opam:ubuntu-26.04-ocaml-4.14@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d' locally
docker.io/ocaml/opam@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d: Pulling from ocaml/opam
5f528443f346: Already exists
9d7db96ef8a1: Already exists
69cd0ed39c32: Already exists
8ddd605780bc: Already exists
b3563cf9c718: Already exists
0ff6404f2cf9: Already exists
0fd106322b2a: Already exists
6cfb66f33040: Already exists
b054a68819af: Already exists
935df48738cf: Already exists
6d7855f07084: Already exists
baf8b6b1404d: Already exists
d11a2bc559d8: Already exists
47b449369e16: Already exists
8821a6dafec4: Already exists
de6cbfe58b17: Already exists
4789d14f0dba: Already exists
dc40a97042b2: Already exists
5ba7a82e9924: Already exists
5ba7a82e9924: Already exists
1bd9b354e379: Already exists
d95538300577: Already exists
ccb31d3e72ef: Already exists
d5ec08a27795: Already exists
4f4fb700ef54: Already exists
cace1535e380: Already exists
6abc7b96ebc8: Already exists
31baaf291736: Already exists
d7ee8870a44e: Already exists
bec0e40ffcad: Already exists
8e3943b026f0: Already exists
2a4924aaac32: Already exists
4761365b4e53: Already exists
1a958ae6c150: Already exists
65cf788ac9e8: Already exists
549c069a431e: Already exists
d41918af1eb8: Already exists
b07a459306ae: Already exists
7a4d6fbc7167: Already exists
d0314755e705: Already exists
9fe4679cfa16: Already exists
3da651ad3c12: Already exists
d706efa35e7e: Already exists
bb595e942949: Pulling fs layer
755a09591609: Pulling fs layer
61e99e660ae4: Pulling fs layer
5db38511abe8: Pulling fs layer
877491a221b2: Pulling fs layer
bb595e942949: Waiting
755a09591609: Waiting
5db38511abe8: Waiting
61e99e660ae4: Waiting
877491a221b2: Waiting
bb595e942949: Verifying Checksum
bb595e942949: Download complete
61e99e660ae4: Download complete
5db38511abe8: Download complete
877491a221b2: Download complete
bb595e942949: Pull complete
755a09591609: Verifying Checksum
755a09591609: Download complete
755a09591609: Pull complete
61e99e660ae4: Pull complete
5db38511abe8: Pull complete
877491a221b2: Pull complete
Digest: sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d
Status: Downloaded newer image for ocaml/opam@sha256:2f255185d21e68bfa168a0f0e7340692071da4b94eb69bf97e318398f8494c2d
2026-05-05 19:39.05 ---> using "45d158ca078290bcc17e9facee88fdfae9286d7b57e1f5b30c01b2448818c3bd" from cache

/: (comment ubuntu-26.04-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-05-05 19:39.05 ---> using "f6c43e1eb203c06f8e009c1a61b1d92ed9f33cbff3bd56606096d07c0fa867d4" 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
[NOTE] The 'jobs' option was reset, its value was 71 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=71 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[ERROR] Could not update repository "ocaml-patches-overlay": "/usr/bin/git fetch -q" exited with code 128 "fatal: unable to access 'https://github.com/ocurrent/opam-repository/': Could not resolve host: github.com"
[default] Initialised
2026-05-05 19:39.05 ---> using "3cd5921a1a77cde0bded94a3ae9c2be02a276433ee3eecb4f00f96f441dc2cab" from cache

/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 6.8.0-110-generic
The OCaml toplevel, version 4.14.3
2.5.1
2026-05-05 19:39.05 ---> using "96875a3243d933ed78cb42d880d055428d081fe4bb85b555f703a57f9483c469" from cache

/src: (workdir /src)

/src: (run (shell "sudo chown opam /src"))
2026-05-05 19:39.05 ---> using "a705e06972f3ea31f4b259a07fc825477bf4557bcb84a744e7f0168593cebd2c" from cache

/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "cd ~/opam-repository && (git cat-file -e a70af20c7161f9d2e1ede477647f5f9e06d6e78f || git fetch origin master) && git reset -q --hard a70af20c7161f9d2e1ede477647f5f9e06d6e78f && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   045748b2d8..163a32c4d5  master     -> origin/master
a70af20c71 Merge pull request #29844 from shonfeder/release-dune-3.23.0

<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository
[ocaml-patches-overlay] no changes from git+https://github.com/ocurrent/opam-repository#patches

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.5.0"), which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2026-05-05 19:39.05 ---> using "46fd4bf066b64bff5b319178a239519ff46abaa4be44ee1dd3308400886c14cb" from cache

/src: (copy (src yojson.opam yojson-five.opam yojson-bench.opam) (dst ./))
2026-05-05 19:39.05 ---> saved as "c4334d1f416e8dfecc966b149e26c09897b5e003994f13f68ad0480b72a2e235"

/src: (run (network host)
           (shell  "opam pin add -yn yojson.dev './' && \
                  \nopam pin add -yn yojson-five.dev './' && \
                  \nopam pin add -yn yojson-bench.dev './'"))
[yojson.dev] synchronised (file:///src)
yojson is now pinned to file:///src (version dev)
[yojson-five.dev] synchronised (file:///src)
yojson-five is now pinned to file:///src (version dev)
[yojson-bench.dev] synchronised (file:///src)
yojson-bench is now pinned to file:///src (version dev)
2026-05-05 19:39.09 ---> saved as "d4e45960a6ec2bd7dfe2709da7e35d411cd8bf12b97bc288515a7e48cd7adce1"

/src: (run (shell "echo '(lang dune 3.0)' > './dune-project'"))
2026-05-05 19:39.10 ---> saved as "c60a65380fb3b32a92c994fcd87af890be28db557fad3351736f23dfb4ba4057"

/src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-threads.base base-unix.base benchmark.1.7 cmdliner.2.1.1 dune.3.23.0 fmt.0.11.0 gen.1.1 ocaml.4.14.3 ocaml-base-compiler.4.14.3 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 ppxlib.0.38.0 re.1.14.0 sedlex.3.7 seq.base sexplib0.v0.17.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4")

/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 yojson.dev yojson-five.dev yojson-bench.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Get:1 http://security.ubuntu.com/ubuntu resolute-security InRelease [136 kB]
- Hit:2 http://archive.ubuntu.com/ubuntu resolute InRelease
- Get:3 http://security.ubuntu.com/ubuntu resolute-security/main amd64 Packages [22.0 kB]
- Get:4 http://security.ubuntu.com/ubuntu resolute-security/universe amd64 Packages [33.5 kB]
- Get:5 http://archive.ubuntu.com/ubuntu resolute-updates InRelease [136 kB]
- Hit:6 http://archive.ubuntu.com/ubuntu resolute-backports InRelease
- Get:7 http://archive.ubuntu.com/ubuntu resolute-updates/universe amd64 Packages [33.5 kB]
- Get:8 http://archive.ubuntu.com/ubuntu resolute-updates/restricted amd64 Packages [34.7 kB]
- Get:9 http://archive.ubuntu.com/ubuntu resolute-updates/main amd64 Packages [64.6 kB]
- Fetched 459 kB in 1s (660 kB/s)
- Reading package lists...
- 

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[yojson.dev] synchronised (file:///src)
[yojson-bench.dev] synchronised (file:///src)
[yojson-five.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.3).
[NOTE] Package ocaml is already installed (current version is 4.14.3).
[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).
# To update the current shell environment, run: eval $(opam env)
2026-05-05 19:39.19 ---> saved as "9be1b5901b300ac546f57032bde48edf29ce3a422df84e0b24d94a26449ff11a"

/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.3).
[NOTE] Package ocaml is already installed (current version is 4.14.3).
[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 20 packages
  - install alcotest            1.9.1
  - install astring             0.8.5
  - install benchmark           1.7
  - install cmdliner            2.1.1
  - install dune                3.23.0
  - install fmt                 0.11.0
  - install gen                 1.1
  - install ocaml-compiler-libs v0.12.4
  - install ocaml-syntax-shims  1.0.0
  - install ocamlbuild          0.16.1
  - install ocamlfind           1.9.8
  - install ppx_derivers        1.2.1
  - install ppxlib              0.38.0
  - install re                  1.14.0
  - install sedlex              3.7
  - install seq                 base
  - install sexplib0            v0.17.0
  - install stdlib-shims        0.3.0
  - install topkg               1.1.1
  - install uutf                1.0.4

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved benchmark.1.7  (cached)
-> retrieved cmdliner.2.1.1  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved gen.1.1  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved sedlex.3.7  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved ppxlib.0.38.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 dune.3.23.0  (cached)
-> installed cmdliner.2.1.1
-> 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 dune.3.23.0
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed benchmark.1.7
-> installed sexplib0.v0.17.0
-> installed gen.1.1
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed re.1.14.0
-> installed alcotest.1.9.1
-> installed ppxlib.0.38.0
-> installed sedlex.3.7
Done.
# To update the current shell environment, run: eval $(opam env)
2026-05-05 19:40.10 ---> saved as "db7687d596dfbfa4ea6f159b4cf3c56cca5552d97e204f273ad4526382cf6ed5"

/src: (copy (src .) (dst /src))
2026-05-05 19:40.10 ---> saved as "0f26c71d33a6fa535ed865c98fc717f7a1c9845910fae09bff4baa637fb4fb07"

/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test && ./test.exe)
Testing `Yojson'.
This run has ID `M24OCLU4'.

  [OK]          equality          0   Scalar equality.
  [OK]          equality          1   List equality.
  [OK]          equality          2   Assoc equality.
  [OK]          read              0   from_string.
  [OK]          read              1   from_crlf_string.
  [OK]          read              2   from_string_fail_simple.
  [OK]          read              3   from_string_fail_lines.
  [OK]          read              4   from_string_fail_bytes.
  [OK]          read              5   from_string_fail_unterminated.
  [OK]          read              6   from_string_fail_nested_unterminated.
  [OK]          read              7   from_string_fail_unterminated_structure.
  [OK]          read              8   from_string_fail_unstarted_structure.
  [OK]          read              9   from_string_fail_unstarted_object.
  [OK]          read             10   from_string_fail_large_int.
  [OK]          read             11   from_string_fail_escaped_char.
  [OK]          read             12   from_file.
  [OK]          read             13   unquoted_from_string.
  [OK]          read             14   map_ident.
  [OK]          write             0   to_file with default settings.
  [OK]          write             1   to_file with newline.
  [OK]          write             2   to_file without newline.
  [OK]          write             3   to_string with default settings.
  [OK]          write             4   to_string with newline.
  [OK]          write             5   to_string without newline.
  [OK]          write             6   seq_to_file with default settings.
  [OK]          write             7   seq_to_file with newline.
  [OK]          write             8   seq_to_file without newline.
  [OK]          util              0   empty path.
  [OK]          util              1   non-existing path.
  [OK]          util              2   traversal.

Full test results in `/src/_build/default/test/_build/_tests/Yojson'.
Test Successful in 0.003s. 30 tests run.
(cd _build/default/test_json5 && ./test.exe)
Testing `JSON5'.
This run has ID `7XWWG94G'.

  [OK]          parsing          0   Unexpected line break.
  [OK]          parsing          1   true.
  [OK]          parsing          2   false.
  [OK]          parsing          3   null.
  [OK]          parsing          4   double quotes string.
  [OK]          parsing          5   single quotes string.
  [OK]          parsing          6   float.
  [OK]          parsing          7   hex.
  [OK]          parsing          8   hex escape sequence.
  [OK]          parsing          9   unicode escape sequence.
  [OK]          parsing         10   more string escaping.
  [OK]          parsing         11   escaping quotes.
  [OK]          parsing         12   more escaping quotes.
  [OK]          parsing         13   escaping other chars.
  [OK]          parsing         14   built in escapes.
  [OK]          parsing         15   null byte string.
  [OK]          parsing         16   octal string.
  [OK]          parsing         17   null and octal string.
  [OK]          parsing         18   int.
  [OK]          parsing         19   backslash escape.
  [OK]          parsing         20   line break.
  [OK]          parsing         21   string and comment.
  [OK]          parsing         22   empty object.
  [OK]          parsing         23   object with double quote string.
  [OK]          parsing         24   object with single quote string.
  [OK]          parsing         25   object with unquoted string.
  [OK]          parsing         26   trailing comma in object.
  [OK]          parsing         27   colon in key.
  [OK]          parsing         28   multiple trailing commas in object.
  [OK]          parsing         29   just trailing comma in object.
  [OK]          parsing         30   just trailing commas in object.
  [OK]          parsing         31   multiple colons in object.
  [OK]          parsing         32   newline in key.
  [OK]          parsing         33   empty list.
  [OK]          parsing         34   heterogenous list.
  [OK]          parsing         35   trailing comma in list.
  [OK]          parsing         36   trailing comma with space list.
  [OK]          parsing         37   newlines in list.
  [OK]          parsing         38   multiple trailing commas in list.
  [OK]          parsing         39   just trailing comma in list.
  [OK]          parsing         40   multiple trailing commas in list.
  [OK]          parsing         41   More elaborated.
  [OK]          parsing         42   unexpected EOF in list.
  [OK]          parsing         43   unexpected EOF on different line.
  [OK]          parsing         44   unexpected EOF in assoc.
  [OK]          parsing         45   missing colon in assoc.
  [OK]          parsing         46   bad identifier in assoc.
  [OK]          writing          0   Empty object.
  [OK]          writing          1   Empty list.
  [OK]          writing          2   true.
  [OK]          writing          3   false.
  [OK]          writing          4   null.
  [OK]          writing          5   string.
  [OK]          writing          6   float.
  [OK]          writing          7   hex.
  [OK]          writing          8   int.

Full test results in `/src/_build/default/test_json5/_build/_tests/JSON5'.
Test Successful in 0.004s. 56 tests run.
2026-05-05 19:40.13 ---> saved as "09e25987df070472f6b026a7230adf34762db43509b2d67f6cf758c113c4d4c3"
Job succeeded
2026-05-05 19:40.13: Job succeeded