Organisationspatricoferrisppxlibdd2e53 ()alpine-3.21-5.3_opam-2.3

alpine-3.21-5.3_opam-2.3

Link Copied
Code Copied

Logs

2025-04-19 10:14.04: New job: test patricoferris/ppxlib https://github.com/patricoferris/ppxlib.git#refs/heads/ci (dd2e536f5c4aa7758d5e8c2af6f8c86901b46205) (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/patricoferris/ppxlib.git" -b "ci" && cd "ppxlib" && git reset --hard dd2e536f
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 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.17.1 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.17.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


2025-04-19 10:14.04: Using cache hint "patricoferris/ppxlib-ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962-alpine-3.21-5.3_opam-2.3-3c965630631cd47442dbfd9233049ef4"
2025-04-19 10:14.04: 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 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.17.1 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.17.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"))
)


2025-04-19 10:14.04: Waiting for resource in pool OCluster
2025-04-19 10:14.05: Waiting for worker…
2025-04-19 10:14.05: Got resource from pool OCluster
Building on doris.caelum.ci.dev
All commits already cached
HEAD is now at dd2e536 Support OCaml 5.4


(from ocaml/opam:alpine-3.21-ocaml-5.3@sha256:e2ee63eda00d030de85e2df8292477e3b768ff41108d47f21b9146fd8250d962)
2025-04-19 10:14.44 ---> saved as "f154ab12a6d575cd956c81477efd0302c0ef4dccea7e9c1952fd02140b057756"


/: (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-19 10:14.45 ---> saved as "6310931d2bf5fef99ec3c0d979621049ed21e3351bd07029cd06bddb57173709"


/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-19 10:15.15 ---> saved as "675c7208637c697a7a3366c064d560f88c87ccaec86349f5914d7ac40053bae7"


/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-19 10:15.15 ---> saved as "6021679194ffece7289cd5c5b221b2f3071db6c856a010fda1808be99b3a5c12"


/src: (workdir /src)


/src: (run (shell "sudo chown opam /src"))
2025-04-19 10:15.15 ---> saved as "91e9c49728c8d128b944322e480ab1d9f5be9d0ae301c2ee057902eeb7ca9559"


/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..999bff3ed8  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-19 10:15.38 ---> saved as "8c4d88d5d56a74339b440d601576705cedbc4d72633262578457d8444963152e"


/src: (copy (src ppxlib.opam ppxlib-tools.opam ppxlib-bench.opam) (dst ./))
2025-04-19 10:15.38 ---> saved as "8f64afe74fc8a2121a865be5080fd626987b17000cfc7b243b1790f16f888aa4"


/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)
[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)
2025-04-19 10:15.44 ---> saved as "3fbec1a3a5440be779864a5e9dd456b4dac665105f4203163ee6d3d8f118dc1c"


/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-04-19 10:15.44 ---> saved as "67f7d77dc1794e6b6ebfaf5c56f619e5ebed4ab5ddace03a07f8dca20803d567"


/src: (env DEPS "base.v0.17.1 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cinaps.v0.15.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.18.1 dune-configurator.3.18.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 ppx_derivers.1.2.1 re.1.12.0 seq.base sexplib0.v0.17.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.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-340-g8659f68d269 [https://dl-cdn.alpinelinux.org/alpine/v3.21/main]
- v3.21.3-344-g37d135ed006 [https://dl-cdn.alpinelinux.org/alpine/v3.21/community]
- v20250108-6008-gaf87219026c [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20250108-6027-g39088564a37 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20250108-6015-g679251b5b64 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 57824 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 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-19 10:15.55 ---> saved as "ef438d04eea4ebb598bc59458334d36a3dc64370d95cf31fe9168e48d3b16e45"


/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 15 packages
- install base                    v0.17.1
- install cinaps                  v0.15.1
- install cmdliner                1.3.0
- install csexp                   1.5.2
- install dune                    3.18.1
- install dune-configurator       3.18.1
- install ocaml-compiler-libs     v0.17.0
- install ocaml_intrinsics_kernel v0.17.1
- install ocamlfind               1.9.8
- install ppx_derivers            1.2.1
- install re                      1.12.0
- install seq                     base
- install sexplib0                v0.17.0
- install stdlib-shims            0.3.0
- install yojson                  2.2.2


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved cinaps.v0.15.1  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved base.v0.17.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved re.1.12.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved yojson.2.2.2  (cached)
-> retrieved dune.3.18.1, dune-configurator.3.18.1  (cached)
-> installed cmdliner.1.3.0
-> installed ocamlfind.1.9.8
-> installed dune.3.18.1
-> installed ppx_derivers.1.2.1
-> installed csexp.1.5.2
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed re.1.12.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed sexplib0.v0.17.0
-> installed stdlib-shims.0.3.0
-> installed yojson.2.2.2
-> installed cinaps.v0.15.1
-> installed dune-configurator.3.18.1
-> installed base.v0.17.1
Done.
# To update the current shell environment, run: eval $(opam env)
2025-04-19 10:16.38 ---> saved as "1009dae5a485688573a70de0a15e712f35372b22501373b208eb5bdc983787d7"


/src: (copy (src .) (dst /src))
2025-04-19 10:16.38 ---> saved as "091e5a642200622b02edc9b36aa4b34127fb201265843bad5d1264ed7a91e3d0"


/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
File "test/driver/stdin_input/test.t/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t _build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t.corrected
diff --git a/_build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t b/_build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t.corrected
index d385654..7bc5379 100644
--- a/_build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t
+++ b/_build/.sandbox/0d1692fc6e07735f23e45a2303c99980/default/test/driver/stdin_input/test.t/run.t.corrected
@@ -17,4 +17,5 @@ We generate a binary AST file...
... and ensure the driver can also read it from stdin


$ cat binary_ast | ../identity_driver.exe -impl -
-  let b = 2
+  Segmentation fault
+  [139]
File "test/driver/source-quotation-in-errors/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t _build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t.corrected
diff --git a/_build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t b/_build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t.corrected
index e644f3f..18283e2 100644
--- a/_build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t
+++ b/_build/.sandbox/0075a43a6dd821af4fb8b175610684d0/default/test/driver/source-quotation-in-errors/run.t.corrected
@@ -38,8 +38,5 @@ We then call our raising driver on the binary AST, it should be able to report t
error with source quotation:


$ ./raising_driver.exe -impl file.pp.ml
-  File "file.ml", line 1, characters 8-16:
-  1 | let x = [%raise]
-              ^^^^^^^^
-  Error: An exception, raise be!
-  [1]
+  Segmentation fault
+  [139]
File "test/driver/error_embedding/test.t/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t _build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t.corrected
diff --git a/_build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t b/_build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t.corrected
index dafee10..739c05e 100644
--- a/_build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t
+++ b/_build/.sandbox/1122287ede078c6293aa8cbe3a57b9e7/default/test/driver/error_embedding/test.t/run.t.corrected
@@ -14,8 +14,10 @@ The same is true when using the `-as-ppx` mode (note that the error is reported
by ocaml itself)


$ ocaml -ppx '../raiser.exe -as-ppx' impl.ml
-  File "./impl.ml", line 1, characters 8-16:
-  Error: Raising inside the rewriter
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ../raiser.exe -as-ppx '/tmp/build_7eea37_dune/camlppx3cc636' '/tmp/build_7eea37_dune/camlppx7a4e07'
+  
[2]


Also exceptions raised in a preprocessor get embedded into an AST(while the
File "test/driver/standalone_run_as_ppx/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t _build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t.corrected
diff --git a/_build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t b/_build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t.corrected
index e36c4bf..eca3cb3 100644
--- a/_build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t
+++ b/_build/.sandbox/b0125d6a77adb1ce43605d7170e1c8af/default/test/driver/standalone_run_as_ppx/run.t.corrected
@@ -6,7 +6,11 @@ The rewriter gets applied when using `--as-ppx`


$ echo "let _ = [%print_hi]" > impl.ml
$ ocaml -ppx './print_stuff.exe --as-ppx' impl.ml
-  hi
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_stuff.exe --as-ppx '/tmp/build_7eea37_dune/camlppx80e33f' '/tmp/build_7eea37_dune/camlppx8d2534'
+  
+  [2]


If a non-compatible file gets fed, the file name is reported correctly


@@ -20,18 +24,28 @@ The ocaml.ppx.context attribute gets parsed correctly; in particular, the tool n


$ echo "let _ = [%print_tool_name]" > impl.ml
$ ocaml -ppx './print_stuff.exe --as-ppx' impl.ml
-  ocaml
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_stuff.exe --as-ppx '/tmp/build_7eea37_dune/camlppxd4d5a0' '/tmp/build_7eea37_dune/camlppx0080e6'
+  
+  [2]


The driver's `shared_args` arguments are taken into account. For example, `-loc-filename`


$ echo "let _ = [%print_fname]" > impl.ml
$ ocaml -ppx './print_stuff.exe --as-ppx -loc-filename new_fn.ml' impl.ml
-  new_fn.ml
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_stuff.exe --as-ppx -loc-filename new_fn.ml '/tmp/build_7eea37_dune/camlppxc8ea44' '/tmp/build_7eea37_dune/camlppx16e028'
+  
+  [2]


or `dont-apply`


$ echo "let _ = [%print_hi]" > impl.ml
$ ocaml -ppx './print_stuff.exe --as-ppx -dont-apply test' impl.ml
-  File "./impl.ml", line 1, characters 10-18:
-  Error: Uninterpreted extension 'print_hi'.
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_stuff.exe --as-ppx -dont-apply test '/tmp/build_7eea37_dune/camlppxd838a3' '/tmp/build_7eea37_dune/camlppx587824'
+  
[2]
File "test/driver/flag_cookie/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t _build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t.corrected
diff --git a/_build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t b/_build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t.corrected
index d6c3fa5..f0ecdb2 100644
--- a/_build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t
+++ b/_build/.sandbox/7832ae2396b9655f3c153634a7cdb758/default/test/driver/flag_cookie/run.t.corrected
@@ -7,4 +7,8 @@ The cookie flag is taken into account, both by the main standalone
...and by the `-as-ppx` standalone


$ ocaml -ppx './print_cookie_driver.exe --as-ppx -cookie x=1' impl.ml
-  Value of cookie x: 1
+  File "./impl.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_cookie_driver.exe --as-ppx -cookie x=1 '/tmp/build_7eea37_dune/camlppxb9421c' '/tmp/build_7eea37_dune/camlppxfb8324'
+  
+  [2]
File "test/driver/run_as_ppx_rewriter/run.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t _build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t.corrected
diff --git a/_build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t b/_build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t.corrected
index a9a0d71..a487e9b 100644
--- a/_build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t
+++ b/_build/.sandbox/522540ca79c9806fe601771d7fbe6e5d/default/test/driver/run_as_ppx_rewriter/run.t.corrected
@@ -10,23 +10,29 @@ The registered rewriters get applied when using `run_as_ppx_rewriter` as entry p
> let () = [%print_bye]
> EOF
$ ocaml -ppx './print_greetings.exe' file.ml
-  hi
-  bye
+  File "./file.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_greetings.exe '/tmp/build_7eea37_dune/camlppx2a78fe' '/tmp/build_7eea37_dune/camlppxf0061f'
+  
+  [2]


The driver's `shared_args` are taken into account, such as `-apply`...


$ ocaml -ppx './print_greetings.exe -apply print_hi' file.ml
-  hi
-  File "./file.ml", line 2, characters 11-20:
-  Error: Uninterpreted extension 'print_bye'.
+  File "./file.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_greetings.exe -apply print_hi '/tmp/build_7eea37_dune/camlppx663c8f' '/tmp/build_7eea37_dune/camlppx91010a'
+  
[2]


... and `-check`


$ echo "[@@@attr non_registered_attr]" > attribute_file.ml
$ ocaml -ppx './print_greetings.exe -check' attribute_file.ml
-  File "./attribute_file.ml", line 1, characters 4-8:
-  Error: Attribute `attr' was not used
+  File "./attribute_file.ml", line 1:
+  Error: Error while running external preprocessor
+  Command line: ./print_greetings.exe -check '/tmp/build_7eea37_dune/camlppx147199' '/tmp/build_7eea37_dune/camlppx40b3c0'
+  
[2]


"/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-04-19 10:16.58: Job failed: Failed: Build failed