Organisationsrealworldocamlmdx5c97b2 (main)alpine-3.22-5.4_opam-2.5

alpine-3.22-5.4_opam-2.5

Logs

Show full logs
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:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5
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 ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5
# alpine-3.22-5.4_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 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 $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 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 OCluster
2026-01-16 17:02.51: Waiting for worker…
2026-01-16 17:07.27: Got resource from pool OCluster
Building on eumache
All commits already cached
HEAD 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' locally
docker.io/ocaml/opam@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5: Pulling from ocaml/opam
2d35ebdb57d9: Already exists
adfc86c1accf: Already exists
d09377907434: Already exists
a699cf44908b: Already exists
c088e74f1f31: Already exists
7e99e6eaa847: Already exists
db4b89a22482: Already exists
f1f17593da04: Already exists
bb79fbf72548: Already exists
cf69890848e3: Already exists
80e325d6146c: Already exists
66a526c41d4c: Already exists
347d38b311ac: Already exists
984612fde4c4: Already exists
0ac0da982daa: Already exists
209c9bca9b0e: Already exists
3d3356d548ff: Already exists
c072da09f122: Already exists
4f4fb700ef54: Already exists
eff3d806a4a8: Already exists
f5c413f5234b: Already exists
09ddc5430e22: Already exists
2c7c283b1afc: Already exists
4af9a971b585: Already exists
df8d9be3e30d: Already exists
5e55ae3325a7: Already exists
635cb27b4304: Already exists
898fbde8ad42: Already exists
66c0ffc92413: Already exists
c8cca855638d: Already exists
45d2501a899c: Already exists
10b0fe6926c2: Already exists
0a1d7b83a687: Already exists
2c3441915309: Already exists
3d1a575b1bb0: Already exists
6e5fa830b59d: Already exists
72225f5a6449: Already exists
76933219c737: Already exists
e40a4a6bb223: Already exists
57877bdece39: Already exists
7f25b65fc90c: Already exists
83104ccb4b47: Already exists
448ea50ba83e: Already exists
Digest: sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5
Status: Downloaded newer image for ocaml/opam@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5
2026-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 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-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-generic
The OCaml toplevel, version 5.4.0
2.5.0
2026-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_HEAD
   a6b2f19780..92679ed614  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-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.0
Done.
# 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 succeeded
2026-01-16 17:10.06: Job succeeded