2026-01-16 11:40.32: New job: test realworldocaml/mdx https://github.com/realworldocaml/mdx.git#refs/heads/main (5c97b27cf8723d87fd00d350b75e7f32f021c8d6) (freebsd-x86_64:freebsd-14.3-4.14_opam-2.5) Base: freebsd-14.3-ocaml-4.14 Opam project build To reproduce locally: git clone --recursive "https://github.com/realworldocaml/mdx.git" -b "main" && cd "mdx" && git reset --hard 5c97b27c cat > Dockerfile <<'END-OF-DOCKERFILE' FROM freebsd-14.3-ocaml-4.14 # freebsd-14.3-4.14_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/local/bin/opam-2.5 /usr/local/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 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-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.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 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 $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-16 11:40.32: Using cache hint "realworldocaml/mdx-freebsd-14.3-ocaml-4.14-freebsd-14.3-4.14_opam-2.5-2927d3a05558550672058e51123bfb58" 2026-01-16 11:40.32: Using OBuilder spec: ((from freebsd-14.3-ocaml-4.14) (comment freebsd-14.3-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/local/bin/opam-2.5 /usr/local/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-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.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 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 11:40.32: Waiting for resource in pool OCluster 2026-01-16 18:04.50: Waiting for worker… 2026-01-16 18:53.29: Got resource from pool OCluster Building on rosemary All commits already cached HEAD is now at 5c97b27 Merge pull request #472 from jonludlam/release-2.5.1 (from freebsd-14.3-ocaml-4.14) 2026-01-16 18:49.51 ---> using "7e5247e9853d1c2fb95ef9ffdfdb895ef70516f48155f08a9b10db936cb8c6c6" from cache /: (comment freebsd-14.3-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/local/bin/opam-2.5 /usr/local/bin/opam")) 2026-01-16 18:49.52 ---> using "cc65ce37998b2d98fc767b9dc7c3b5c83138e1952bec339ac27a7bb4d9d920d3" from cache /src: (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 /home/opam/.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 --global Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] no changes from git+file:///home/opam/opam-repository 2026-01-16 18:49.52 ---> using "87889fea7d09081125d96054d270a07df14f9b2a5c081c0c9434b9f215ecc218" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) FreeBSD 14.3-RELEASE-p3 The OCaml toplevel, version 4.14.2 2.5.0 2026-01-16 18:49.52 ---> using "4a6e16f39bb2fab11842c96050ea21902749c68aefdffcd64774b8b7640a3492" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-16 18:49.53 ---> using "ca1b89b4fcfce73b3b6ab80b797b154eda5f870ad814c498da3e18daf8f4b36f" 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 71325ac6ed..873cb18c37 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 Everything as up-to-date as possible The following packages are not being upgraded because the new versions conflict with other installed packages: - ocaml.5.4.0 - ocaml-config.3 However, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.4.0"), which will ask permission to downgrade or uninstall the conflicting packages. Nothing to do. 2026-01-16 18:49.53 ---> using "ff9d687398e31f8631a6fc5f7b86db8899aa21df99d4af5cfd65df4bb71d7ea3" from cache /src: (copy (src mdx.opam) (dst ./)) 2026-01-16 18:49.54 ---> saved as "506b57d957ff04658c0a74a295ffd8bf782672543d35e5a6f992dafe3820599f" /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 18:49.57 ---> saved as "c3782537e84e158190c3afb5da0a4cc8dc33435d2b131676395398dfc3141c92" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-16 18:49.58 ---> saved as "320c7c637cd629ee64ad6f8dc656ba107617c97dcaa8e7c118b7753e69ea98a0" /src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.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.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 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")) [WARNING] Unknown update command for bsd, skipping system update <><> 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 2). [NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2). [NOTE] Package ocaml is already installed (current version is 4.14.2). [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). 2026-01-16 18:50.08 ---> saved as "61bb45eab6ae01240ce944b9eb02ba0ac5c94d678fb813955dd8a06237410e4d" /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.2). [NOTE] Package ocaml is already installed (current version is 4.14.2). [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 22 packages ∗ alcotest 1.9.1 ∗ astring 0.8.5 ∗ base-bytes 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-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 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> ⬇ retrieved camlp-streams.5.0.1 (cached) ⬇ retrieved astring.0.8.5 (cached) ⬇ retrieved alcotest.1.9.1 (cached) ⬇ retrieved cppo.1.8.0 (cached) ⬇ retrieved csexp.1.5.2 (cached) ⬇ retrieved cmdliner.2.1.0 (cached) ⬇ retrieved logs.0.10.0 (cached) ⬇ retrieved fmt.0.11.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 ocplib-endian.1.2 (cached) ⬇ retrieved ocamlfind.1.9.8 (cached) ⬇ retrieved result.1.5 (cached) ⬇ retrieved re.1.14.0 (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 ocamlbuild.0.16.1 ∗ installed cmdliner.2.1.0 ∗ 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 stdlib-shims.0.3.0 ∗ installed result.1.5 ∗ installed re.1.14.0 ∗ installed ocaml-version.4.0.3 ∗ installed ocaml-syntax-shims.1.0.0 ∗ installed cppo.1.8.0 ∗ installed camlp-streams.5.0.1 ∗ 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.0 Done. 2026-01-16 18:51.09 ---> saved as "0935e525a61b41c5a89ce190b5705cc02890a20b530de37d838527cf925fe38f" /src: (copy (src .) (dst /src)) 2026-01-16 18:51.10 ---> saved as "a2e897ae30eb68eb5b17a2b86ac9e872c287c111b15b12b3c719be82b97773ce" /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 `ASMDTVEM'. [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.011s. 56 tests run. 2026-01-16 18:51.19 ---> saved as "83faf12572ffdb78e91b56d64f430dde964a8109f1a95f45fd2ced92ad1e477a" Job succeeded 2026-01-16 18:54.58: Job succeeded