2026-01-16 13:57.18: New job: test realworldocaml/mdx https://github.com/realworldocaml/mdx.git#refs/heads/main (5c97b27cf8723d87fd00d350b75e7f32f021c8d6) (linux-x86_64:alpine-3.22-5.4_opam-2.5)Base: ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5Opam project buildTo reproduce locally:git clone --recursive "https://github.com/realworldocaml/mdx.git" -b "main" && cd "mdx" && git reset --hard 5c97b27ccat > Dockerfile <<'END-OF-DOCKERFILE'FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5# alpine-3.22-5.4_opam-2.5USER 1000:1000ENV CLICOLOR_FORCE="1"ENV OPAMCOLOR="always"WORKDIR /srcRUN sudo ln -f /usr/bin/opam-2.5 /usr/bin/opamRUN opam init --reinit -niRUN uname -rs && opam exec -- ocaml -version && opam --versionWORKDIR /srcRUN sudo chown opam /srcRUN 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 -uCOPY --chown=1000:1000 mdx.opam ./RUN opam pin add -yn mdx.dev './'RUN echo '(lang dune 3.0)' > './dune-project'ENV DEPS="alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 logs.0.10.0 lwt.6.0.0 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 ocaml-version.4.0.3 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.14.0 result.1.5 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 mdx.dev $DEPSRUN opam install $DEPSCOPY --chown=1000:1000 . /srcRUN opam exec -- dune build @install @check @runtest && rm -rf _buildEND-OF-DOCKERFILEdocker build .END-REPRO-BLOCK2026-01-16 13:57.18: Using cache hint "realworldocaml/mdx-ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5-alpine-3.22-5.4_opam-2.5-3e885998169855a0cc4d9665bebb64d9"2026-01-16 13:57.18: Using OBuilder spec:((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5)(comment alpine-3.22-5.4_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 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.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 logs.0.10.0 lwt.6.0.0 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 ocaml-version.4.0.3 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.14.0 result.1.5 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 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")))2026-01-16 13:57.18: Waiting for resource in pool OCluster2026-01-16 17:02.51: Waiting for worker…2026-01-16 17:07.27: Got resource from pool OClusterBuilding on eumacheAll commits already cachedHEAD is now at 5c97b27 Merge pull request #472 from jonludlam/release-2.5.1(from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5)Unable to find image 'ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5' locallydocker.io/ocaml/opam@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5: Pulling from ocaml/opam2d35ebdb57d9: Already existsadfc86c1accf: Already existsd09377907434: Already existsa699cf44908b: Already existsc088e74f1f31: Already exists7e99e6eaa847: Already existsdb4b89a22482: Already existsf1f17593da04: Already existsbb79fbf72548: Already existscf69890848e3: Already exists80e325d6146c: Already exists66a526c41d4c: Already exists347d38b311ac: Already exists984612fde4c4: Already exists0ac0da982daa: Already exists209c9bca9b0e: Already exists3d3356d548ff: Already existsc072da09f122: Already exists4f4fb700ef54: Already existseff3d806a4a8: Already existsf5c413f5234b: Already exists09ddc5430e22: Already exists2c7c283b1afc: Already exists4af9a971b585: Already existsdf8d9be3e30d: Already exists5e55ae3325a7: Already exists635cb27b4304: Already exists898fbde8ad42: Already exists66c0ffc92413: Already existsc8cca855638d: Already exists45d2501a899c: Already exists10b0fe6926c2: Already exists0a1d7b83a687: Already exists2c3441915309: Already exists3d1a575b1bb0: Already exists6e5fa830b59d: Already exists72225f5a6449: Already exists76933219c737: Already existse40a4a6bb223: Already exists57877bdece39: Already exists7f25b65fc90c: Already exists83104ccb4b47: Already exists448ea50ba83e: Already existsDigest: sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5Status: Downloaded newer image for ocaml/opam@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e52026-01-16 17:07.28 ---> using "8e7368a35b514e2f693b7ef97549c85525e506baecfd9cb71dfa7c1285b9bf9e" from cache/: (comment alpine-3.22-5.4_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-16 17:07.28 ---> using "5de1607ed24a4d9a94f038b30a5d26051019ad9d567bd9b920207c8a8790958e" 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 255 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:opam option jobs=255 --globalFormat upgrade done.<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>[default] Initialised2026-01-16 17:07.28 ---> using "9a9c4e5cee84ea1f4dd03ef20c73db2f8677135dce421b26bfc6a84a6e4cec86" from cache/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))Linux 5.15.0-131-genericThe OCaml toplevel, version 5.4.02.5.02026-01-16 17:07.28 ---> using "667074f5be2334a92415ceab74ec15bb59d47bdf0e2beb825eaa389555f40c78" from cache/src: (workdir /src)/src: (run (shell "sudo chown opam /src"))2026-01-16 17:07.28 ---> using "33c7b91e3a3fd17dd0b670dfb64c2fe390ea331270d4439429317512d6a40df2" 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_HEADa6b2f19780..92679ed614 master -> origin/master873cb18c37 Merge pull request #29216 from shonfeder/release-dune-3.21.0<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>[default] synchronised from git+file:///home/opam/opam-repositoryAlready up-to-date.Nothing to do.# To update the current shell environment, run: eval $(opam env)2026-01-16 17:07.28 ---> using "4184b41a9a82b3669f30a95932bd76a185cc6536c8f133518b5ae3e7d0ad06aa" from cache/src: (copy (src mdx.opam) (dst ./))2026-01-16 17:07.28 ---> saved as "6ff366abebe9f9a2e5f7f07fac169ae0ff8423e8b98ad952a40e5f38d34b88d4"/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)2026-01-16 17:07.34 ---> saved as "36d2f28f230d9501b509f888cb4d506469b71f9738139b17f85e6832fa7cc991"/src: (run (network host)(shell "echo '(lang dune 3.0)' > './dune-project'"))2026-01-16 17:07.34 ---> saved as "7e2821a03e52ec5e2cea9d55acc8f3a834ccbc73d99cc1351fa9955688648654"/src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.2.1.0 cppo.1.8.0 csexp.1.5.2 dune.3.21.0 dune-configurator.3.21.0 fmt.0.11.0 logs.0.10.0 lwt.6.0.0 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 ocaml-version.4.0.3 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.14.0 result.1.5 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 mdx.dev $DEPS"))+ /usr/bin/sudo "apk" "update"- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz- v3.22.2-345-g80278e42c54 [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]- v3.22.2-350-ga346423740a [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]- v20251224-1517-g76c24b64e20 [https://dl-cdn.alpinelinux.org/alpine/edge/main]- v20251224-1496-g03a612442a1 [https://dl-cdn.alpinelinux.org/alpine/edge/community]- v20251224-1495-g0eba70fbcb6 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]- OK: 60721 distinct packages available<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>[mdx.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-16 17:07.59 ---> saved as "2a948116c20817178df732963d5f924b2f72968025455036e4984320192d1818"/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 22 packages- install alcotest 1.9.1- install astring 0.8.5- install base-bytes base- install camlp-streams 5.0.1- install cmdliner 2.1.0- install cppo 1.8.0- install csexp 1.5.2- install dune 3.21.0- install dune-configurator 3.21.0- install fmt 0.11.0- install logs 0.10.0- install lwt 6.0.0- install ocaml-syntax-shims 1.0.0- install ocaml-version 4.0.3- install ocamlbuild 0.16.1- install ocamlfind 1.9.8- install ocplib-endian 1.2- install re 1.14.0- install result 1.5- 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 camlp-streams.5.0.1 (cached)-> retrieved cmdliner.2.1.0 (cached)-> retrieved cppo.1.8.0 (cached)-> retrieved csexp.1.5.2 (cached)-> retrieved fmt.0.11.0 (cached)-> retrieved logs.0.10.0 (cached)-> retrieved ocaml-syntax-shims.1.0.0 (cached)-> retrieved ocaml-version.4.0.3 (cached)-> retrieved lwt.6.0.0 (cached)-> retrieved ocamlbuild.0.16.1 (cached)-> retrieved ocamlfind.1.9.8 (cached)-> retrieved ocplib-endian.1.2 (cached)-> retrieved re.1.14.0 (cached)-> retrieved result.1.5 (cached)-> retrieved stdlib-shims.0.3.0 (cached)-> retrieved uutf.1.0.4 (cached)-> retrieved topkg.1.1.1 (cached)-> retrieved dune.3.21.0, dune-configurator.3.21.0 (cached)-> installed cmdliner.2.1.0-> installed ocamlbuild.0.16.1-> installed ocamlfind.1.9.8-> installed base-bytes.base-> installed topkg.1.1.1-> installed uutf.1.0.4-> installed fmt.0.11.0-> installed astring.0.8.5-> installed dune.3.21.0-> installed csexp.1.5.2-> installed camlp-streams.5.0.1-> installed cppo.1.8.0-> installed ocaml-syntax-shims.1.0.0-> installed ocaml-version.4.0.3-> installed re.1.14.0-> installed result.1.5-> installed stdlib-shims.0.3.0-> installed ocplib-endian.1.2-> installed alcotest.1.9.1-> installed dune-configurator.3.21.0-> installed lwt.6.0.0-> installed logs.0.10.0Done.# To update the current shell environment, run: eval $(opam env)2026-01-16 17:09.46 ---> saved as "467f1dfa2e6132c8521cbc19ea4b702065b89806f43f1b4c950e934e7a913465"/src: (copy (src .) (dst /src))2026-01-16 17:09.47 ---> saved as "6eda2987c112b2b95604c95310fa6f32ac82fe5c78d1095c3c3fc0063e1b1539"/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))(cd _build/default/test/lib && ./test_mdx_lib.exe)Testing `Mdx'.This run has ID `RWKPF8YO'.[OK] Block 0 Header.infer_from_file: "".[OK] Block 1 Header.infer_from_file: "foo".[OK] Block 2 Header.infer_from_file: "foo.bar".[OK] Block 3 Header.infer_from_file: "dune".[OK] Block 4 Header.infer_from_file: "dune-project".[OK] Block 5 Header.infer_from_file: "foo.sh".[OK] Block 6 Header.infer_from_file: "foo/foo/foo.ml".[OK] Block 7 mk: "invalid ocaml".[OK] Block 8 mk: "invalid toplevel".[OK] Label 0 raw_parse: "".[OK] Label 1 raw_parse: "foo=".[OK] Label 2 raw_parse: "foo<>bar".[OK] Label 3 raw_parse: "<bar".[OK] Label 4 raw_parse: "foo<=bar".[OK] Label 5 raw_parse: "foo>bar".[OK] Label 6 raw_parse: ">=".[OK] Label 7 raw_parse: "FOO_BAR=foo_bar".[OK] Label 8 interpret: "".[OK] Label 9 interpret: "foo".[OK] Label 10 interpret: "skip".[OK] Label 11 interpret: "skip".[OK] Label 12 interpret: "version".[OK] Label 13 interpret: "non-deterministic".[OK] Label 14 interpret: "dir".[OK] Label 15 interpret: "set-foo".[OK] Label 16 of_string: "".[OK] Label 17 of_string: ",".[OK] Label 18 of_string: "skip,".[OK] Label 19 of_string: "skip,file=foo.ml".[OK] Dep 0 of_block: "Empty".[OK] Dep 1 of_block: "file:toto.ml".[OK] Dep 2 of_block: "dir:tata/".[OK] Dep 3 of_block: "dir=tata/,skip".[OK] Dep 4 of_line: "block: file=tikitaka.ml".[OK] Dep 5 of_line: "skip + file + dir".[OK] Dep 6 to_sexp: file.[OK] Dep 7 to_sexp: dir.[OK] Syntax 0 infer: "".[OK] Syntax 1 infer: "test.md".[OK] Syntax 2 infer: "test.t".[OK] Syntax 3 infer: "test.ml".[OK] Syntax 4 infer: "test.mli".[OK] Syntax 5 infer: "no_ext".[OK] Util 0 String.english_conjonction: single.[OK] Util 1 String.english_conjonction: two.[OK] Util 2 String.english_conjonction: three.[OK] Util 3 String.english_conjonction: more.[OK] Parts 0 parse: "".[OK] Parts 1 parse: "foo".[OK] Parts 2 parse: " (* $MDX part-begin=bar *) ".[OK] Parts 3 parse: "(* $MDX part-begin=bar ".[OK] Parts 4 parse: " (* $MDX part-end *) ".[OK] Parts 5 parse: " [@@@part \"foobar\"] ".[OK] Parts 6 parse: "[@@@foo \"bar\"]".[OK] Parts 7 parse: "(* $MDX foo *)".[OK] Parts 8 parse: "(* $MDX part-end=foo *)".Full test results in `/src/_build/default/test/lib/_build/_tests/Mdx'.Test Successful in 0.015s. 56 tests run.2026-01-16 17:10.06 ---> saved as "1b3a5e6f548aad861cb511b4fa531d7ea90fa6e971db57a8a2ffc256a93aa0dc"Job succeeded2026-01-16 17:10.06: Job succeeded