Organisationsrealworldocamlmdx560717 ()(lower-bound)

(lower-bound)

Logs

Show full logs
2025-06-27 06:56.13: New job: test realworldocaml/mdx https://github.com/realworldocaml/mdx.git#refs/pull/468/head (560717840ecf1e1d1c8168da57e6692b6d8926b3) (linux-x86_64:(lower-bound))
Base: ocaml/opam:debian-12-ocaml-4.08@sha256:cc4b148b1fa1916574df02fcec0956fedbec6798bedacd9bfd4417c1c098ce8e
Opam project build

To reproduce locally:

git clone --recursive "https://github.com/realworldocaml/mdx.git" && cd "mdx" && git fetch origin "refs/pull/468/head" && git reset --hard 56071784
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-12-ocaml-4.08@sha256:cc4b148b1fa1916574df02fcec0956fedbec6798bedacd9bfd4417c1c098ce8e
# debian-12-4.08_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.3 /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 48010ffa790be06f04234994c933fa3f7254b6cc || git fetch origin master) && git reset -q --hard 48010ffa790be06f04234994c933fa3f7254b6cc && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 mdx.opam ./
RUN opam pin add -yn mdx.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="alcotest.1.0.1 astring.0.8.3 base-bigarray.base base-bytes.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 conf-m4.1 cppo.1.6.1 csexp.1.3.2 dune.3.5.0 fmt.0.8.8 jbuilder.1.0+beta20.1 logs.0.7.0 lwt.4.2.0 mmap.1.0.2 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1 ocaml-version.3.5.0 ocamlbuild.0.14.0 ocamlfind.1.8.0 re.1.7.2 result.1.5 seq.0.3 stdlib-shims.0.1.0 topkg.1.0.8 uuidm.0.9.7"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y mdx.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

2025-06-27 06:56.13: Using cache hint "realworldocaml/mdx-ocaml/opam:debian-12-ocaml-4.08@sha256:cc4b148b1fa1916574df02fcec0956fedbec6798bedacd9bfd4417c1c098ce8e-debian-12-4.08_opam-2.3-96318ef601cf6cf55e5e2e17f9a7acd0"
2025-06-27 06:56.13: Using OBuilder spec:
((from ocaml/opam:debian-12-ocaml-4.08@sha256:cc4b148b1fa1916574df02fcec0956fedbec6798bedacd9bfd4417c1c098ce8e)
 (comment debian-12-4.08_opam-2.3)
 (user (uid 1000) (gid 1000))
 (env CLICOLOR_FORCE 1)
 (env OPAMCOLOR always)
 (workdir /src)
 (run (shell "sudo ln -f /usr/bin/opam-2.3 /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 48010ffa790be06f04234994c933fa3f7254b6cc || git fetch origin master) && git reset -q --hard 48010ffa790be06f04234994c933fa3f7254b6cc && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src mdx.opam) (dst ./))
 (run (network host)
      (shell "opam pin add -yn mdx.dev './'"))
 (run (network host)
      (shell "echo '(lang dune 3.0)' > './dune-project'"))
 (env DEPS "alcotest.1.0.1 astring.0.8.3 base-bigarray.base base-bytes.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 conf-m4.1 cppo.1.6.1 csexp.1.3.2 dune.3.5.0 fmt.0.8.8 jbuilder.1.0+beta20.1 logs.0.7.0 lwt.4.2.0 mmap.1.0.2 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1 ocaml-version.3.5.0 ocamlbuild.0.14.0 ocamlfind.1.8.0 re.1.7.2 result.1.5 seq.0.3 stdlib-shims.0.1.0 topkg.1.0.8 uuidm.0.9.7")
 (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.3 --depext-only -y mdx.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"))
)

2025-06-27 06:56.13: Waiting for resource in pool OCluster
2025-06-27 06:56.13: Waiting for worker…
2025-06-27 06:56.13: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
HEAD is now at 5607178 Dune pkg GHA: continue on failure

(from ocaml/opam:debian-12-ocaml-4.08@sha256:cc4b148b1fa1916574df02fcec0956fedbec6798bedacd9bfd4417c1c098ce8e)
2025-06-27 06:56.22 ---> saved as "4ea5038d254cfd14663698deb665a2dc4ce1e1383d544c063adebb02ed15ce16"

/: (comment debian-12-4.08_opam-2.3)

/: (user (uid 1000) (gid 1000))

/: (env CLICOLOR_FORCE 1)

/: (env OPAMCOLOR always)

/: (workdir /src)

/src: (run (shell "sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam"))
2025-06-27 06:56.22 ---> saved as "513c9792ce65a5b8ab8e9c5d5d0cb18860fa2e52baa6ff8e91e0f4d91def9aa9"

/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 development 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
2025-06-27 06:56.50 ---> saved as "9eb80386bacfd7938f12d25e194913cafb5894d8e3739476ca8ba44c9606ec01"

/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-141-generic
The OCaml toplevel, version 4.08.1
2.3.0
2025-06-27 06:56.51 ---> saved as "92e2498cc7a78f593d78a8bf54c5bc24658d99052f31b70c33e471d45d365ae6"

/src: (workdir /src)

/src: (run (shell "sudo chown opam /src"))
2025-06-27 06:56.51 ---> saved as "b6f04723b137dea03fa4030960754640f1ca54b23d9fe8aab83e1e48e2509f1f"

/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "cd ~/opam-repository && (git cat-file -e 48010ffa790be06f04234994c933fa3f7254b6cc || git fetch origin master) && git reset -q --hard 48010ffa790be06f04234994c933fa3f7254b6cc && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   c7269f729a..c8e0a6067a  master     -> origin/master
48010ffa79 Restrict non-working ocaml version for dune (#28092)

<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository

Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-06-27 06:57.23 ---> saved as "a13f944cec1259f588b0a7cf069e01a2c636b7630cead4d68880c119c66d127a"

/src: (copy (src mdx.opam) (dst ./))
2025-06-27 06:57.23 ---> saved as "8484829cb2b0406c1c402f8764fa93098d2a048166f20b4bcb613cb925476239"

/src: (run (network host)
           (shell "opam pin add -yn mdx.dev './'"))
[mdx.dev] synchronised (file:///src)
mdx is now pinned to file:///src (version dev)
2025-06-27 06:57.25 ---> saved as "373438c405bd0e529515664f8b28e6baf630995ee6f6b3e3e62ca43ba484bee8"

/src: (run (network host)
           (shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-06-27 06:57.25 ---> saved as "f7410528c28d37a8c284c38ab62da14097ce67010eac163a1526371ff9f1c668"

/src: (env DEPS "alcotest.1.0.1 astring.0.8.3 base-bigarray.base base-bytes.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 conf-m4.1 cppo.1.6.1 csexp.1.3.2 dune.3.5.0 fmt.0.8.8 jbuilder.1.0+beta20.1 logs.0.7.0 lwt.4.2.0 mmap.1.0.2 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-config.1 ocaml-version.3.5.0 ocamlbuild.0.14.0 ocamlfind.1.8.0 re.1.7.2 result.1.5 seq.0.3 stdlib-shims.0.1.0 topkg.1.0.8 uuidm.0.9.7")

/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.3 --depext-only -y mdx.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bookworm InRelease
- Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
- Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
- Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [269 kB]
- Fetched 373 kB in 0s (1223 kB/s)
- Reading package lists...
- 

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[mdx.dev] synchronised (file:///src)

[NOTE] Package ocaml-config is already installed (current version is 1).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1).
[NOTE] Package ocaml is already installed (current version is 4.08.1).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).

The following system packages will first need to be installed:
    m4

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

+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "m4"
- debconf: delaying package configuration, since apt-utils is not installed
- Selecting previously unselected package m4.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 18747 files and directories currently installed.)
- Preparing to unpack .../archives/m4_1.4.19-3_amd64.deb ...
- Unpacking m4 (1.4.19-3) ...
- Setting up m4 (1.4.19-3) ...
2025-06-27 06:57.36 ---> saved as "5f4d284a42322ecd3c647b5cdf56949e217b5d4db3f6bbcb191d7b01d1fd25e7"

/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "opam install $DEPS"))
[NOTE] Package ocaml-config is already installed (current version is 1).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1).
[NOTE] Package ocaml is already installed (current version is 4.08.1).
[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 23 packages
  - install alcotest      1.0.1
  - install astring       0.8.3
  - install base-bytes    base
  - install camlp-streams 5.0.1
  - install cmdliner      1.3.0
  - install conf-m4       1
  - install cppo          1.6.1
  - install csexp         1.3.2
  - install dune          3.5.0
  - install fmt           0.8.8
  - install jbuilder      1.0+beta20.1 (deprecated)
  - install logs          0.7.0
  - install lwt           4.2.0
  - install mmap          1.0.2
  - install ocaml-version 3.5.0
  - install ocamlbuild    0.14.0
  - install ocamlfind     1.8.0
  - install re            1.7.2
  - install result        1.5
  - install seq           0.3
  - install stdlib-shims  0.1.0
  - install topkg         1.0.8
  - install uuidm         0.9.7

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved astring.0.8.3  (cached)
-> installed conf-m4.1
-> retrieved cppo.1.6.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> retrieved csexp.1.3.2  (cached)
-> retrieved fmt.0.8.8  (cached)
-> retrieved jbuilder.1.0+beta20.1  (cached)
-> retrieved alcotest.1.0.1  (cached)
-> retrieved logs.0.7.0  (cached)
-> retrieved dune.3.5.0  (cached)
-> retrieved lwt.4.2.0  (cached)
-> retrieved mmap.1.0.2  (cached)
-> retrieved ocaml-version.3.5.0  (cached)
-> retrieved ocamlbuild.0.14.0  (cached)
-> retrieved ocamlfind.1.8.0  (cached)
-> retrieved re.1.7.2  (cached)
-> retrieved result.1.5  (cached)
-> retrieved seq.0.3  (cached)
-> retrieved stdlib-shims.0.1.0  (cached)
-> retrieved uuidm.0.9.7  (cached)
-> retrieved topkg.1.0.8  (cached)
-> installed cmdliner.1.3.0
-> installed ocamlfind.1.8.0
-> installed base-bytes.base
-> installed ocamlbuild.0.14.0
-> installed jbuilder.1.0+beta20.1
-> installed cppo.1.6.1
-> installed re.1.7.2
-> installed topkg.1.0.8
-> installed uuidm.0.9.7
-> installed astring.0.8.3
-> installed dune.3.5.0
-> installed seq.0.3
-> installed mmap.1.0.2
-> installed ocaml-version.3.5.0
-> installed result.1.5
-> installed stdlib-shims.0.1.0
-> installed camlp-streams.5.0.1
-> installed csexp.1.3.2
-> installed fmt.0.8.8
-> installed alcotest.1.0.1
-> installed lwt.4.2.0
-> installed logs.0.7.0
Done.

<><> jbuilder.1.0+beta20.1 installed successfully <><><><><><><><><><><><><><><>
=> Note: This package is deprecated.
# To update the current shell environment, run: eval $(opam env)
2025-06-27 06:58.14 ---> saved as "7e5a1fb49a005965b89980235a1feb63ee034cb73c5148e463accc6b55a0470f"

/src: (copy (src .) (dst /src))
2025-06-27 06:58.15 ---> saved as "514a6a3e9e07aab886652086fbe6363487aed053de8a2a545fe8932b61d54261"

/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
File "/home/opam/.opam/4.08/lib/re/re.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/emacs/re.emacs.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/glob/re.glob.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/pcre/re.pcre.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/perl/re.perl.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/posix/re.posix.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
File "/home/opam/.opam/4.08/lib/re/str/re.str.dune", line 1, characters 0-0:
Warning: .dune files are ignored since 2.0. Reinstall the library with dune
>= 2.0 to get rid of this warning and enable support for the subsystem this
library provides.
(cd _build/default/test/lib && ./test_mdx_lib.exe)
Testing Mdx.
This run has ID `C147BD94-5071-4537-8461-F6843F25A6A6`.
 ...                Block           0   Header.infer_from_file: "".
[OK]                Block           0   Header.infer_from_file: "".
 ...                Block           1   Header.infer_from_file: "foo".
[OK]                Block           1   Header.infer_from_file: "foo".
 ...                Block           2   Header.infer_from_file: "foo.bar".
[OK]                Block           2   Header.infer_from_file: "foo.bar".
 ...                Block           3   Header.infer_from_file: "dune".
[OK]                Block           3   Header.infer_from_file: "dune".
 ...                Block           4   Header.infer_from_file: "dune-project".
[OK]                Block           4   Header.infer_from_file: "dune-project".
 ...                Block           5   Header.infer_from_file: "foo.sh".
[OK]                Block           5   Header.infer_from_file: "foo.sh".
 ...                Block           6   Header.infer_from_file: "foo/foo/foo.ml".
[OK]                Block           6   Header.infer_from_file: "foo/foo/foo.ml".
 ...                Block           7   mk: "invalid ocaml".
[OK]                Block           7   mk: "invalid ocaml".
 ...                Block           8   mk: "invalid toplevel".
[OK]                Block           8   mk: "invalid toplevel".
 ...                Label           0   raw_parse: "".
[OK]                Label           0   raw_parse: "".
 ...                Label           1   raw_parse: "foo=".
[OK]                Label           1   raw_parse: "foo=".
 ...                Label           2   raw_parse: "foo<>bar".
[OK]                Label           2   raw_parse: "foo<>bar".
 ...                Label           3   raw_parse: "<bar".
[OK]                Label           3   raw_parse: "<bar".
 ...                Label           4   raw_parse: "foo<=bar".
[OK]                Label           4   raw_parse: "foo<=bar".
 ...                Label           5   raw_parse: "foo>bar".
[OK]                Label           5   raw_parse: "foo>bar".
 ...                Label           6   raw_parse: ">=".
[OK]                Label           6   raw_parse: ">=".
 ...                Label           7   raw_parse: "FOO_BAR=foo_bar".
[OK]                Label           7   raw_parse: "FOO_BAR=foo_bar".
 ...                Label           8   interpret: "".
[OK]                Label           8   interpret: "".
 ...                Label           9   interpret: "foo".
[OK]                Label           9   interpret: "foo".
 ...                Label          10   interpret: "skip".
[OK]                Label          10   interpret: "skip".
 ...                Label          11   interpret: "skip".
[OK]                Label          11   interpret: "skip".
 ...                Label          12   interpret: "version".
[OK]                Label          12   interpret: "version".
 ...                Label          13   interpret: "non-deterministic".
[OK]                Label          13   interpret: "non-deterministic".
 ...                Label          14   interpret: "dir".
[OK]                Label          14   interpret: "dir".
 ...                Label          15   interpret: "set-foo".
[OK]                Label          15   interpret: "set-foo".
 ...                Label          16   of_string: "".
[OK]                Label          16   of_string: "".
 ...                Label          17   of_string: ",".
[OK]                Label          17   of_string: ",".
 ...                Label          18   of_string: "skip,".
[OK]                Label          18   of_string: "skip,".
 ...                Label          19   of_string: "skip,file=foo.ml".
[OK]                Label          19   of_string: "skip,file=foo.ml".
 ...                Dep             0   of_block: "Empty".
[OK]                Dep             0   of_block: "Empty".
 ...                Dep             1   of_block: "file:toto.ml".
[OK]                Dep             1   of_block: "file:toto.ml".
 ...                Dep             2   of_block: "dir:tata/".
[OK]                Dep             2   of_block: "dir:tata/".
 ...                Dep             3   of_block: "dir=tata/,skip".
[OK]                Dep             3   of_block: "dir=tata/,skip".
 ...                Dep             4   of_line: "block: file=tikitaka.ml".
[OK]                Dep             4   of_line: "block: file=tikitaka.ml".
 ...                Dep             5   of_line: "skip + file + dir".
[OK]                Dep             5   of_line: "skip + file + dir".
 ...                Dep             6   to_sexp: file.
[OK]                Dep             6   to_sexp: file.
 ...                Dep             7   to_sexp: dir.
[OK]                Dep             7   to_sexp: dir.
 ...                Syntax          0   infer: "".
[OK]                Syntax          0   infer: "".
 ...                Syntax          1   infer: "test.md".
[OK]                Syntax          1   infer: "test.md".
 ...                Syntax          2   infer: "test.t".
[OK]                Syntax          2   infer: "test.t".
 ...                Syntax          3   infer: "test.ml".
[OK]                Syntax          3   infer: "test.ml".
 ...                Syntax          4   infer: "test.mli".
[OK]                Syntax          4   infer: "test.mli".
 ...                Syntax          5   infer: "no_ext".
[OK]                Syntax          5   infer: "no_ext".
 ...                Util            0   String.english_conjonction: single.
[OK]                Util            0   String.english_conjonction: single.
 ...                Util            1   String.english_conjonction: two.
[OK]                Util            1   String.english_conjonction: two.
 ...                Util            2   String.english_conjonction: three.
[OK]                Util            2   String.english_conjonction: three.
 ...                Util            3   String.english_conjonction: more.
[OK]                Util            3   String.english_conjonction: more.
 ...                Parts           0   parse: "".
[OK]                Parts           0   parse: "".
 ...                Parts           1   parse: "foo".
[OK]                Parts           1   parse: "foo".
 ...                Parts           2   parse: "    (* $MDX part-begin=bar *)    ".
[OK]                Parts           2   parse: "    (* $MDX part-begin=bar *)    ".
 ...                Parts           3   parse: "(* $MDX part-begin=bar     ".
[OK]                Parts           3   parse: "(* $MDX part-begin=bar     ".
 ...                Parts           4   parse: "   (* $MDX part-end   *)   ".
[OK]                Parts           4   parse: "   (* $MDX part-end   *)   ".
 ...                Parts           5   parse: "    [@@@part \"foobar\"]    ".
[OK]                Parts           5   parse: "    [@@@part \"foobar\"]    ".
 ...                Parts           6   parse: "[@@@foo \"bar\"]".
[OK]                Parts           6   parse: "[@@@foo \"bar\"]".
 ...                Parts           7   parse: "(* $MDX foo *)".
[OK]                Parts           7   parse: "(* $MDX foo *)".
 ...                Parts           8   parse: "(* $MDX part-end=foo *)".
[OK]                Parts           8   parse: "(* $MDX part-end=foo *)".
The full test results are available in `/src/_build/default/test/lib/_build/_tests/C147BD94-5071-4537-8461-F6843F25A6A6`.
Test Successful in 0.000s. 56 tests run.
2025-06-27 06:58.20 ---> saved as "3cde021b818d3b473de5392e35672f9e05f487d231d58401f1890520f3f610be"
Job succeeded
2025-06-27 06:58.20: Job succeeded