2024-12-19 22:48.41: New job: test ocaml-ppx/ppxlib https://github.com/ocaml-ppx/ppxlib.git#refs/pull/541/head (6426dc0d1a28c1f36363570773aac42291cf4c41) (linux-x86_64:alpine-3.20-4.14_opam-2.3) Base: ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1373fc17e4d358b445e2642e92df91c019d7c9372b501e18374f891e87f709b0 Opam project build To reproduce locally: git clone --recursive "https://github.com/ocaml-ppx/ppxlib.git" && cd "ppxlib" && git fetch origin "refs/pull/541/head" && git reset --hard 6426dc0d cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1373fc17e4d358b445e2642e92df91c019d7c9372b501e18374f891e87f709b0 # alpine-3.20-4.14_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 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 || git fetch origin master) && git reset -q --hard 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 ppxlib.opam ppxlib-tools.opam ppxlib-bench.opam ./ RUN opam pin add -yn ppxlib.dev './' && \ opam pin add -yn ppxlib-tools.dev './' && \ opam pin add -yn ppxlib-bench.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base.v0.16.3 base-bigarray.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 conf-bash.1 csexp.1.5.2 dune.3.17.1 dune-configurator.3.17.1 host-arch-x86_64.1 host-system-other.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.6 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 yojson.2.2.2" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.3 --depext-only -y ppxlib.dev ppxlib-tools.dev ppxlib-bench.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 2024-12-19 22:48.41: Using cache hint "ocaml-ppx/ppxlib-ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1373fc17e4d358b445e2642e92df91c019d7c9372b501e18374f891e87f709b0-alpine-3.20-4.14_opam-2.3-9b794b2dd4166de71fb4f6a20b873aa1" 2024-12-19 22:48.41: Using OBuilder spec: ((from ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1373fc17e4d358b445e2642e92df91c019d7c9372b501e18374f891e87f709b0) (comment alpine-3.20-4.14_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 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 || git fetch origin master) && git reset -q --hard 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src ppxlib.opam ppxlib-tools.opam ppxlib-bench.opam) (dst ./)) (run (network host) (shell "opam pin add -yn ppxlib.dev './' && \ \nopam pin add -yn ppxlib-tools.dev './' && \ \nopam pin add -yn ppxlib-bench.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "base.v0.16.3 base-bigarray.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 conf-bash.1 csexp.1.5.2 dune.3.17.1 dune-configurator.3.17.1 host-arch-x86_64.1 host-system-other.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.6 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 yojson.2.2.2") (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 ppxlib.dev ppxlib-tools.dev ppxlib-bench.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")) ) 2024-12-19 22:48.41: Waiting for resource in pool OCluster 2024-12-20 10:16.59: Waiting for worker… 2024-12-20 10:18.58: Got resource from pool OCluster Building on doris.caelum.ci.dev All commits already cached HEAD is now at 6426dc0d Mark deriving.end attributes as seen in -no-corrections mode (from ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1373fc17e4d358b445e2642e92df91c019d7c9372b501e18374f891e87f709b0) 2024-12-20 10:18.59 ---> using "a3e9f67bc1ee9201c96140c65f9dc31519ebfb933f158b75d3a6cace968f8f0b" from cache /: (comment alpine-3.20-4.14_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")) 2024-12-20 10:18.59 ---> using "d77b2f66e512fbb59fac0cc398f4193ced3d770947441b72a6a30fe59bff8033" 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] synchronised from file:///home/opam/opam-repository 2024-12-20 10:18.59 ---> using "15912097597bf1f8b6d35bcbcf9e5bf59e45fda4eef47d2c9d834ef605b5788f" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 5.15.0-126-generic The OCaml toplevel, version 4.14.2 2.3.0 2024-12-20 10:18.59 ---> using "ffa1974f5b216d9ef89ceffde98493096d027fad46a39375cf47d82a9d0bc6bf" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2024-12-20 10:18.59 ---> using "1e5de33315a4ac7f9119b5dab289531149f2ae1f6464e1352a51e90531dab968" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 || git fetch origin master) && git reset -q --hard 5c7ffb23c89c6943b51f8e215548b72a12e3abd1 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD de786e28db..3531767c50 master -> origin/master 5c7ffb23c8 Merge pull request #27137 from maiste/release-dune-3.17.1 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from 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) 2024-12-20 10:18.59 ---> using "6c8a85c17ee5d8a9422b0d2ca01fa4c3ec90b341ec1904523c9b86d8a5e19425" from cache /src: (copy (src ppxlib.opam ppxlib-tools.opam ppxlib-bench.opam) (dst ./)) 2024-12-20 10:18.59 ---> using "d2b58a5a3da9eded2d3749a0d0e6337bee4eb1323f7a91c405020a54c5349cda" from cache /src: (run (network host) (shell "opam pin add -yn ppxlib.dev './' && \ \nopam pin add -yn ppxlib-tools.dev './' && \ \nopam pin add -yn ppxlib-bench.dev './'")) [ppxlib.dev] synchronised (file:///src) ppxlib is now pinned to file:///src (version dev) Package ppxlib-tools does not exist, create as a NEW package? [y/n] y [ppxlib-tools.dev] synchronised (file:///src) ppxlib-tools is now pinned to file:///src (version dev) Package ppxlib-bench does not exist, create as a NEW package? [y/n] y [ppxlib-bench.dev] synchronised (file:///src) ppxlib-bench is now pinned to file:///src (version dev) 2024-12-20 10:18.59 ---> using "89bba381b168509a311197626b5d0fa8d5e3d5e483d2fb0b11082d603dc0ba34" from cache /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2024-12-20 10:18.59 ---> using "0a52155eeca909dc2b42cb034871637bb0687bd53ba0760a0d7dbbcd5950d03c" from cache /src: (env DEPS "base.v0.16.3 base-bigarray.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 conf-bash.1 csexp.1.5.2 dune.3.17.1 dune-configurator.3.17.1 host-arch-x86_64.1 host-system-other.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.6 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 yojson.2.2.2") /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 ppxlib.dev ppxlib-tools.dev ppxlib-bench.dev $DEPS")) + /usr/bin/sudo "apk" "update" - fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/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.20.3-433-g123ceb85a17 [https://dl-cdn.alpinelinux.org/alpine/v3.20/main] - v3.20.3-433-g123ceb85a17 [https://dl-cdn.alpinelinux.org/alpine/v3.20/community] - v3.21.0-1131-g3dc9e6a0eca [https://dl-cdn.alpinelinux.org/alpine/edge/main] - v3.21.0-1130-g5c45eb06daf [https://dl-cdn.alpinelinux.org/alpine/edge/community] - v3.21.0-1130-g5c45eb06daf [https://dl-cdn.alpinelinux.org/alpine/edge/testing] - OK: 56295 distinct packages available <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [ppxlib.dev] synchronised (file:///src) [ppxlib-bench.dev] synchronised (file:///src) [ppxlib-tools.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 host-system-other is already installed (current version is 1). [NOTE] Package host-arch-x86_64 is already installed (current version is 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). 2024-12-20 10:19.14 ---> saved as "0bec30875ba2b5fb816dec05dae5d3997e6102a22c54910337828157cedb62cf" /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 host-system-other is already installed (current version is 1). [NOTE] Package host-arch-x86_64 is already installed (current version is 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 15 packages - install base v0.16.3 - install cinaps v0.15.1 - install cmdliner 1.3.0 - install conf-bash 1 - install csexp 1.5.2 - install dune 3.17.1 - install dune-configurator 3.17.1 - install ocaml-compiler-libs v0.12.4 - install ocamlfind 1.9.6 - install ppx_derivers 1.2.1 - install re 1.12.0 - install seq base - install sexplib0 v0.16.0 - install stdlib-shims 0.3.0 - install yojson 2.2.2 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved cinaps.v0.15.1 (cached) -> installed conf-bash.1 -> retrieved csexp.1.5.2 (cached) -> retrieved base.v0.16.3 (cached) -> retrieved cmdliner.1.3.0 (cached) -> retrieved ocaml-compiler-libs.v0.12.4 (cached) -> retrieved ocamlfind.1.9.6 (cached) -> retrieved ppx_derivers.1.2.1 (cached) -> retrieved seq.base (cached) -> installed seq.base -> retrieved re.1.12.0 (cached) -> retrieved sexplib0.v0.16.0 (cached) -> retrieved stdlib-shims.0.3.0 (cached) -> retrieved yojson.2.2.2 (cached) -> retrieved dune.3.17.1, dune-configurator.3.17.1 (cached) -> installed cmdliner.1.3.0 -> installed ocamlfind.1.9.6 -> installed dune.3.17.1 -> installed ppx_derivers.1.2.1 -> installed csexp.1.5.2 -> installed ocaml-compiler-libs.v0.12.4 -> installed re.1.12.0 -> installed sexplib0.v0.16.0 -> installed stdlib-shims.0.3.0 -> installed yojson.2.2.2 -> installed cinaps.v0.15.1 -> installed dune-configurator.3.17.1 -> installed base.v0.16.3 Done. # To update the current shell environment, run: eval $(opam env) 2024-12-20 10:20.00 ---> saved as "c7ac7e80c91f571e50869b6900c5328469e9f6f0329d3dd4e25d4c889a5236db" /src: (copy (src .) (dst /src)) 2024-12-20 10:20.02 ---> saved as "4458eff24c0b579165e1efbb9403a7d33744c885ff8faf25d0f39e3f6010d73a" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) File "test/driver/no-corrections/run.t", line 1, characters 0-0: /usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t _build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t.corrected diff --git a/_build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t b/_build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t.corrected index 573fa11..2582a0f 100644 --- a/_build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t +++ b/_build/.sandbox/426ce3c54e869cc6549928833a1ac8fd/default/test/driver/no-corrections/run.t.corrected @@ -66,10 +66,18 @@ and the last [@@@deriving.end] that comes with it. [@@@deriving.end ] type t3[@@gen_stuff ] [@@@deriving.end ] - 3a4,6 - > let _ = fun (_ : t2) -> () - > [%%ocaml.error - > "Ppxlib.Deriving: 'y' is not a supported type deriving generator"] + --- test.ml + +++ test.ml.ppx-corrected + @@ -1,6 +1,9 @@ + type t [@@deriving x] + type t2 + [@@deriving_inline y] + +let _ = fun (_ : t2) -> () + +[%%ocaml.error + + "Ppxlib.Deriving: 'y' is not a supported type deriving generator"] + [@@@deriving.end] + type t3 [@@gen_stuff] + [@@@deriving.end] [1] Now if we run it with -no-corrections, there should be no .ppx-corrected file @@ -101,12 +109,19 @@ expected and all corrections will be correctly generated [@@@deriving.end ] type t3[@@gen_stuff ] [@@@deriving.end ] - 3a4,6 - > let _ = fun (_ : t2) -> () - > let y = 3 - > let _ = y - 5a9 - > let stuff = 4 + --- test.ml + +++ test.ml.ppx-corrected + @@ -1,6 +1,10 @@ + type t [@@deriving x] + type t2 + [@@deriving_inline y] + +let _ = fun (_ : t2) -> () + +let y = 3 + +let _ = y + [@@@deriving.end] + type t3 [@@gen_stuff] + +let stuff = 4 + [@@@deriving.end] [1] For reference and to document the behaviour of the -no-corrections flag in this "/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1 2024-12-20 10:20.22: Job failed: Failed: Build failed