2025-04-25 11:00.35: New job: test realworldocaml/mdx https://github.com/realworldocaml/mdx.git#refs/pull/468/head (408cf4d0c5a1236e48ec01c677787d1b0b1cc8bb) (linux-x86_64:alpine-3.21-5.3_opam-2.3)
Base: ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962
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 408cf4d0
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962
# alpine-3.21-5.3_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 442eddb8a363418dcb02e519972818da08bb7cd4 || git fetch origin master) && git reset -q --hard 442eddb8a363418dcb02e519972818da08bb7cd4 && 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.0 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.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 fmt.0.10.0 logs.0.8.0 lwt.5.9.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 topkg.1.0.8 uutf.1.0.4"
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-04-25 11:00.35: Using cache hint "realworldocaml/mdx-ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962-alpine-3.21-5.3_opam-2.3-cbae18486b4943b661974ca3680d1676"
2025-04-25 11:00.35: Using OBuilder spec:
((from ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962)
(comment alpine-3.21-5.3_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 442eddb8a363418dcb02e519972818da08bb7cd4 || git fetch origin master) && git reset -q --hard 442eddb8a363418dcb02e519972818da08bb7cd4 && 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.0 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.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 fmt.0.10.0 logs.0.8.0 lwt.5.9.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 topkg.1.0.8 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.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-04-25 11:00.35: Waiting for resource in pool OCluster
2025-04-25 11:00.36: Waiting for worker…
2025-04-25 11:00.37: Got resource from pool OCluster
Building on doris.caelum.ci.dev
All commits already cached
HEAD is now at 408cf4d Add a dune package management GHA workflow
(from ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962)
2025-04-25 11:00.39 ---> using "f154ab12a6d575cd956c81477efd0302c0ef4dccea7e9c1952fd02140b057756" from cache
/: (comment alpine-3.21-5.3_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-04-25 11:00.39 ---> using "6310931d2bf5fef99ec3c0d979621049ed21e3351bd07029cd06bddb57173709" 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 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-04-25 11:00.39 ---> using "675c7208637c697a7a3366c064d560f88c87ccaec86349f5914d7ac40053bae7" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-134-generic
The OCaml toplevel, version 5.3.0
2.3.0
2025-04-25 11:00.39 ---> using "6021679194ffece7289cd5c5b221b2f3071db6c856a010fda1808be99b3a5c12" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-04-25 11:00.39 ---> using "91e9c49728c8d128b944322e480ab1d9f5be9d0ae301c2ee057902eeb7ca9559" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 442eddb8a363418dcb02e519972818da08bb7cd4 || git fetch origin master) && git reset -q --hard 442eddb8a363418dcb02e519972818da08bb7cd4 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
da74d7829f..8106bcf57f master -> origin/master
442eddb8a3 Merge pull request #27761 from maiste/release-dune-3.18.1
<><> 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-04-25 11:00.39 ---> using "8c4d88d5d56a74339b440d601576705cedbc4d72633262578457d8444963152e" from cache
/src: (copy (src mdx.opam) (dst ./))
2025-04-25 11:00.39 ---> saved as "0ddb6957b72f4430c9b669d82ca149dc845fc870a33a74a57ccee0bb8a8819e2"
/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-04-25 11:00.41 ---> saved as "e60f644368c5ed7a91b3332bea96d9aa91b501097bd2665ccc55c555878f847a"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-04-25 11:00.41 ---> saved as "f43088c7b3212d6cc4d20e0e2187b64eba2ebdf06ce62cbcebb4508f4a3e38ac"
/src: (env DEPS "alcotest.1.9.0 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.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 fmt.0.10.0 logs.0.8.0 lwt.5.9.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 topkg.1.0.8 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.3 --depext-only -y mdx.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/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.21.3-393-ga8f8f91e2f6 [https://dl-cdn.alpinelinux.org/alpine/v3.21/main]
- v3.21.3-396-g9e7bf9745ee [https://dl-cdn.alpinelinux.org/alpine/v3.21/community]
- v20250108-6591-g7dd1248ef58 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20250108-6598-ge736fbb658e [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20250108-6591-g7dd1248ef58 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 57948 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.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.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).
2025-04-25 11:00.56 ---> saved as "cb19c00928760dd2ba0742154243335537cb34e23997d9c2b4e55be72b9b05b1"
/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.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.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 23 packages
- install alcotest 1.9.0
- install astring 0.8.5
- install base-bytes base
- install camlp-streams 5.0.1
- install cmdliner 1.3.0
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.18.1
- install dune-configurator 3.18.1
- install fmt 0.10.0
- install logs 0.8.0
- install lwt 5.9.1
- install ocaml-syntax-shims 1.0.0
- install ocaml-version 4.0.0
- install ocamlbuild 0.16.1
- install ocamlfind 1.9.8
- install ocplib-endian 1.2
- install re 1.12.0
- install result 1.5
- install seq base
- install stdlib-shims 0.3.0
- install topkg 1.0.8
- install uutf 1.0.4
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved camlp-streams.5.0.1 (cached)
-> retrieved astring.0.8.5 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved alcotest.1.9.0 (cached)
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved fmt.0.10.0 (cached)
-> retrieved logs.0.8.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved lwt.5.9.1 (cached)
-> retrieved ocaml-version.4.0.0 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved re.1.12.0 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved result.1.5 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved topkg.1.0.8 (cached)
-> retrieved dune.3.18.1, dune-configurator.3.18.1 (cached)
-> installed cmdliner.1.3.0
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed topkg.1.0.8
-> installed uutf.1.0.4
-> installed fmt.0.10.0
-> installed astring.0.8.5
-> installed dune.3.18.1
-> 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.0
-> installed re.1.12.0
-> installed result.1.5
-> installed stdlib-shims.0.3.0
-> installed ocplib-endian.1.2
-> installed alcotest.1.9.0
-> installed dune-configurator.3.18.1
-> installed lwt.5.9.1
-> installed logs.0.8.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-04-25 11:01.39 ---> saved as "c0b3b44919f3c36920ced57d443d6e1ad59fdb52f96c1e54aef145b0738706f9"
/src: (copy (src .) (dst /src))
2025-04-25 11:01.39 ---> saved as "9ee8f5b539e62294f284422822f32979b97df3d6ca675a6b37d0552cc66aa778"
/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 `MN7T64PR'.
[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.005s. 56 tests run.
2025-04-25 11:01.46 ---> saved as "e71179d80da9d368101d077e14f0cb4fd9b4da3a1f60273d62bed1ff6bf9c1ed"
Job succeeded
2025-04-25 11:01.47: Job succeeded