Organisationsocaml-ppxocamlformatc6c247 (main)debian-13-4.14_opam-2.4

debian-13-4.14_opam-2.4

Link Copied
Code Copied

Logs

2025-10-02 01:46.55: New job: test ocaml-ppx/ocamlformat https://github.com/ocaml-ppx/ocamlformat.git#refs/heads/main (c6c2477d78cdaa8ccb9fca1fe4b4b052a038df12) (linux-x86_64:debian-13-4.14_opam-2.4)
Base: ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
Opam project build


To reproduce locally:


git clone --recursive "https://github.com/ocaml-ppx/ocamlformat.git" -b "main" && cd "ocamlformat" && git reset --hard c6c2477d
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
# debian-13-4.14_opam-2.4
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.4 /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 f0e79555a122d396c3443ee754a7ea05991c000d || git fetch origin master) && git reset -q --hard f0e79555a122d396c3443ee754a7ea05991c000d && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 ocamlformat.opam ocamlformat-rpc-lib.opam ocamlformat-lib.opam ocamlformat-bench.opam ./
RUN opam pin add -yn ocamlformat.dev './' && \
opam pin add -yn ocamlformat-rpc-lib.dev './' && \
opam pin add -yn ocamlformat-lib.dev './' && \
opam pin add -yn ocamlformat-bench.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="alcotest.1.9.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base bechamel.0.5.0 camlp-streams.5.0.1 cmdliner.2.0.0 csexp.1.5.2 dune.3.20.2 dune-build-info.3.20.2 dune-configurator.3.20.2 either.1.0.0 fix.20250919 fmt.0.11.0 fpath.0.7.3 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocp-indent.1.9.0 re.1.14.0 sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y ocamlformat.dev ocamlformat-rpc-lib.dev ocamlformat-lib.dev ocamlformat-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-10-02 01:46.55: Using cache hint "ocaml-ppx/ocamlformat-ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc-debian-13-4.14_opam-2.4-8afa613eac21d635f3ca7f4193fa5897"
2025-10-02 01:46.55: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc)
(comment debian-13-4.14_opam-2.4)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.4 /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 f0e79555a122d396c3443ee754a7ea05991c000d || git fetch origin master) && git reset -q --hard f0e79555a122d396c3443ee754a7ea05991c000d && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src ocamlformat.opam ocamlformat-rpc-lib.opam ocamlformat-lib.opam ocamlformat-bench.opam)
(dst ./))
(run (network host)
(shell  "opam pin add -yn ocamlformat.dev './' && \
\nopam pin add -yn ocamlformat-rpc-lib.dev './' && \
\nopam pin add -yn ocamlformat-lib.dev './' && \
\nopam pin add -yn ocamlformat-bench.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "alcotest.1.9.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base bechamel.0.5.0 camlp-streams.5.0.1 cmdliner.2.0.0 csexp.1.5.2 dune.3.20.2 dune-build-info.3.20.2 dune-configurator.3.20.2 either.1.0.0 fix.20250919 fmt.0.11.0 fpath.0.7.3 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocp-indent.1.9.0 re.1.14.0 sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 yojson.3.0.0")
(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.4 --depext-only -y ocamlformat.dev ocamlformat-rpc-lib.dev ocamlformat-lib.dev ocamlformat-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-10-02 01:46.55: Waiting for resource in pool OCluster
2025-10-02 01:46.56: Waiting for worker…
2025-10-02 01:50.12: Got resource from pool OCluster
Building on eumache
All commits already cached
HEAD is now at c6c2477d Fix quadratic command-line parsing (#2724)


(from ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc' locally
docker.io/ocaml/opam@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc: Pulling from ocaml/opam
15b1d8a5ff03: Already exists
4d5eb3ed0208: Already exists
b44e00377829: Already exists
93018e586176: Already exists
587e432a29e2: Already exists
cdf304204754: Already exists
a444cfe202e3: Already exists
964991c828c0: Already exists
a94458d90f79: Already exists
e972c69afbc9: Already exists
3997d62e9de2: Already exists
d78ea61f72f9: Already exists
c68a1176424c: Already exists
63495b383f1a: Already exists
aa1a6204320d: Already exists
187b2023e0b3: Already exists
4787e66ddf43: Already exists
973a552bac2d: Already exists
8ad831d15267: Already exists
a8377bc33a29: Already exists
84a002321686: Already exists
4f4fb700ef54: Already exists
5d52c4f201d6: Already exists
68ef19bc296a: Already exists
1cda2aa0af1b: Already exists
769f31bcfe07: Already exists
b1d715eb0b34: Already exists
6b92d559de80: Already exists
1552f16d9075: Already exists
7a69328970da: Already exists
e66b1fc86e6f: Already exists
b14737f10b30: Already exists
4b7cf33f8dea: Already exists
0499d18bfcaa: Already exists
fb0e4a52e51b: Already exists
af1ea896d29c: Already exists
cff41317f198: Already exists
fbb90a49a8ca: Already exists
2f7f155032eb: Already exists
02f68e1ce660: Already exists
ecccefc40725: Already exists
b3c55c49d7c7: Already exists
086c23210c52: Already exists
be64ebf82eb2: Already exists
Digest: sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
Status: Downloaded newer image for ocaml/opam@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
2025-10-02 01:50.13 ---> using "f2c15438f4e8107ac42e1adfbd29c5c483ff0e5aaf05ff1291b0b30470c339be" from cache


/: (comment debian-13-4.14_opam-2.4)


/: (user (uid 1000) (gid 1000))


/: (env CLICOLOR_FORCE 1)


/: (env OPAMCOLOR always)


/: (workdir /src)


/src: (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam"))
2025-10-02 01:50.13 ---> using "26ab65df60191c64e560c28233f493c202a4bbd9bc7407470045de6309f3dbc7" 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
Format upgrade done.


<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-10-02 01:50.13 ---> using "b01fa340a5410b8655d54e5c8ba6922600038d8aa3bf6fea9cde94dbae538950" from cache


/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-131-generic
The OCaml toplevel, version 4.14.2
2.4.1
2025-10-02 01:50.13 ---> using "bcd57de4dd2d7ffb6e6f53b8fc195555675a5e0356946d206dfa1f13f1fad62e" from cache


/src: (workdir /src)


/src: (run (shell "sudo chown opam /src"))
2025-10-02 01:50.13 ---> using "2d027b54766bada2509ab183947b4aa5380e26a0ea7dd540a7b7e4593762f848" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e f0e79555a122d396c3443ee754a7ea05991c000d || git fetch origin master) && git reset -q --hard f0e79555a122d396c3443ee754a7ea05991c000d && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch                  master     -> FETCH_HEAD
bcac5d1731..647158776f  master     -> origin/master
f0e79555a1 Merge pull request #28630 from NathanReb/release-ocp-indent-1.9.0


<><> 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 at these versions (e.g. "opam upgrade ocaml.5.3.0"), 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-10-02 01:50.53 ---> saved as "f201392f4e60b2d82cbf59c80f41c05d52cdb8db16d165b9523e9778c3bc05ce"


/src: (copy (src ocamlformat.opam ocamlformat-rpc-lib.opam ocamlformat-lib.opam ocamlformat-bench.opam)
(dst ./))
2025-10-02 01:50.53 ---> saved as "b4a018888c5d47831027252cc9969324966ea3292d56d67798bb9e273d8d5df7"


/src: (run (network host)
(shell  "opam pin add -yn ocamlformat.dev './' && \
\nopam pin add -yn ocamlformat-rpc-lib.dev './' && \
\nopam pin add -yn ocamlformat-lib.dev './' && \
\nopam pin add -yn ocamlformat-bench.dev './'"))
[ocamlformat.dev] synchronised (file:///src)
ocamlformat is now pinned to file:///src (version dev)
[ocamlformat-rpc-lib.dev] synchronised (file:///src)
ocamlformat-rpc-lib is now pinned to file:///src (version dev)
[ocamlformat-lib.dev] synchronised (file:///src)
ocamlformat-lib is now pinned to file:///src (version dev)
[NOTE] Package ocamlformat-bench does not exist in opam repositories registered in the current switch.
[ocamlformat-bench.dev] synchronised (file:///src)
ocamlformat-bench is now pinned to file:///src (version dev)
[WARNING] Failed checks on ocamlformat-bench package definition from source at file:///src:
warning 68: Missing field 'license'
2025-10-02 01:51.04 ---> saved as "eea357032ea049fc281dafe762fa8eef1f424627fedcf6b6c59dd1c91907f955"


/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-10-02 01:51.04 ---> saved as "8a8465077e89f341cf8924e3d5a117ecd358384acb062329de0e0aa5ffbdaea8"


/src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-threads.base base-unix.base bechamel.0.5.0 camlp-streams.5.0.1 cmdliner.2.0.0 csexp.1.5.2 dune.3.20.2 dune-build-info.3.20.2 dune-configurator.3.20.2 either.1.0.0 fix.20250919 fmt.0.11.0 fpath.0.7.3 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 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.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocp-indent.1.9.0 re.1.14.0 sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.1.0 uucp.17.0.0 uuseg.17.0.0 uutf.1.0.4 yojson.3.0.0")


/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.4 --depext-only -y ocamlformat.dev ocamlformat-rpc-lib.dev ocamlformat-lib.dev ocamlformat-bench.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian trixie InRelease
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [48.4 kB]
- Fetched 139 kB in 0s (809 kB/s)
- Reading package lists...
- 


<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[ocamlformat.dev] synchronised (file:///src)
[ocamlformat-bench.dev] synchronised (file:///src)
[ocamlformat-lib.dev] synchronised (file:///src)
[ocamlformat-rpc-lib.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).
2025-10-02 01:51.24 ---> saved as "46029fb3c37aaf89d1e8890327b0db005c437a70f6ca3e3cbd2d90ea6303721f"


/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 32 packages
- install alcotest           1.9.1
- install astring            0.8.5
- install base               v0.16.4
- install bechamel           0.5.0
- install camlp-streams      5.0.1
- install cmdliner           2.0.0
- install csexp              1.5.2
- install dune               3.20.2
- install dune-build-info    3.20.2
- install dune-configurator  3.20.2
- install either             1.0.0
- install fix                20250919
- install fmt                0.11.0
- install fpath              0.7.3
- install menhir             20250912
- install menhirCST          20250912
- install menhirLib          20250912
- install menhirSdk          20250912
- install ocaml-syntax-shims 1.0.0
- install ocaml-version      4.0.1
- install ocamlbuild         0.16.1
- install ocamlfind          1.9.8
- install ocp-indent         1.9.0
- install re                 1.14.0
- install sexplib0           v0.16.0
- install stdio              v0.16.0
- install stdlib-shims       0.3.0
- install topkg              1.1.0
- install uucp               17.0.0
- install uuseg              17.0.0
- install uutf               1.0.4
- install yojson             3.0.0


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved base.v0.16.4  (cached)
-> retrieved bechamel.0.5.0  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved cmdliner.2.0.0  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved either.1.0.0  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved fix.20250919  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocaml-version.4.0.1  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ocp-indent.1.9.0  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved sexplib0.v0.16.0  (cached)
-> retrieved stdio.v0.16.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved topkg.1.1.0  (cached)
-> retrieved dune.3.20.2, dune-build-info.3.20.2, dune-configurator.3.20.2  (cached)
-> retrieved uucp.17.0.0  (cached)
-> retrieved uuseg.17.0.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved yojson.3.0.0  (cached)
-> installed cmdliner.2.0.0
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed topkg.1.1.0
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed fpath.0.7.3
-> installed dune.3.20.2
-> installed bechamel.0.5.0
-> installed camlp-streams.5.0.1
-> installed csexp.1.5.2
-> installed either.1.0.0
-> installed fix.20250919
-> installed menhirCST.20250912
-> installed menhirLib.20250912
-> installed menhirSdk.20250912
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-version.4.0.1
-> installed sexplib0.v0.16.0
-> installed stdlib-shims.0.3.0
-> installed re.1.14.0
-> installed ocp-indent.1.9.0
-> installed yojson.3.0.0
-> installed dune-build-info.3.20.2
-> installed alcotest.1.9.1
-> installed dune-configurator.3.20.2
-> installed base.v0.16.4
-> installed stdio.v0.16.0
-> installed uucp.17.0.0
-> installed menhir.20250912
-> installed uuseg.17.0.0
Done.


<><> ocp-indent.1.9.0 installed successfully ><><><><><><><><><><><><><><><><><>
=> This package requires additional configuration for use in editors. Install package 'user-setup', or manually:


* for Emacs, add these lines to ~/.emacs:
(add-to-list 'load-path "/home/opam/.opam/4.14/share/emacs/site-lisp")
(require 'ocp-indent)


* for Vim, add this line to ~/.vimrc:
set rtp^="/home/opam/.opam/4.14/share/ocp-indent/vim"
# To update the current shell environment, run: eval $(opam env)
2025-10-02 01:53.19 ---> saved as "3964792689fbc58509164f9ca3f765d6e4dd91fa15579b0f6bec0da0948568cf"


/src: (copy (src .) (dst /src))
2025-10-02 01:53.21 ---> saved as "2eb8843bdfdcf998259674929a6969612091f4f8416bc5656a49e61bf3715b3f"


/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
File "test/passing/refs.ahrefs/option.ml.err", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/passing/refs.ahrefs/option.ml.err _build/default/test/passing/refs.ahrefs/option.ml.stderr
diff --git a/_build/default/test/passing/refs.ahrefs/option.ml.err b/_build/default/test/passing/refs.ahrefs/option.ml.stderr
index 9cad5c9..1b9cde2 100644
--- a/_build/default/test/passing/refs.ahrefs/option.ml.err
+++ b/_build/default/test/passing/refs.ahrefs/option.ml.stderr
@@ -20,10 +20,12 @@ File "option.ml", line 28, characters 3-14:
28 | [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'


File "option.ml", line 39, characters 14-25:
39 |            [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'
(cd _build/default/test/unit && ./test_unit.exe)
Testing `ocamlformat'.
This run has ID `LZJA0ALR'.


................................................................................
................................................................................
............................................


File "test/passing/refs.janestreet/option.ml.err", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/passing/refs.janestreet/option.ml.err _build/default/test/passing/refs.janestreet/option.ml.stderr
diff --git a/_build/default/test/passing/refs.janestreet/option.ml.err b/_build/default/test/passing/refs.janestreet/option.ml.stderr
index 9cad5c9..1b9cde2 100644
--- a/_build/default/test/passing/refs.janestreet/option.ml.err
+++ b/_build/default/test/passing/refs.janestreet/option.ml.stderr
@@ -20,10 +20,12 @@ File "option.ml", line 28, characters 3-14:
28 | [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'


File "option.ml", line 39, characters 14-25:
39 |            [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'
File "test/passing/refs.default/option.ml.err", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/passing/refs.default/option.ml.err _build/default/test/passing/refs.default/option.ml.stderr
diff --git a/_build/default/test/passing/refs.default/option.ml.err b/_build/default/test/passing/refs.default/option.ml.stderr
index 9cad5c9..1b9cde2 100644
--- a/_build/default/test/passing/refs.default/option.ml.err
+++ b/_build/default/test/passing/refs.default/option.ml.stderr
@@ -20,10 +20,12 @@ File "option.ml", line 28, characters 3-14:
28 | [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'


File "option.ml", line 39, characters 14-25:
39 |            [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'
File "test/passing/refs.ocamlformat/option.ml.err", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/passing/refs.ocamlformat/option.ml.err _build/default/test/passing/refs.ocamlformat/option.ml.stderr
diff --git a/_build/default/test/passing/refs.ocamlformat/option.ml.err b/_build/default/test/passing/refs.ocamlformat/option.ml.stderr
index 9cad5c9..1b9cde2 100644
--- a/_build/default/test/passing/refs.ocamlformat/option.ml.err
+++ b/_build/default/test/passing/refs.ocamlformat/option.ml.stderr
@@ -20,10 +20,12 @@ File "option.ml", line 28, characters 3-14:
28 | [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'


File "option.ml", line 39, characters 14-25:
39 |            [@@ocamlformat "if-then-else=bad"]
^^^^^^^^^^^
Warning 47 [attribute-payload]: illegal payload for attribute 'ocamlformat'.
-For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical', 'vertical', 'keyword-first' or 'k-r'
+For option "if-then-else": invalid value 'bad', expected one of 'compact', 'fit-or-vertical',
+'vertical', 'keyword-first' or 'k-r'
File "test/cli/env.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/cli/env.t _build/default/test/cli/env.t.corrected
diff --git a/_build/default/test/cli/env.t b/_build/default/test/cli/env.t.corrected
index 0a85c1a..d02c213 100644
--- a/_build/default/test/cli/env.t
+++ b/_build/default/test/cli/env.t.corrected
@@ -1,13 +1,14 @@
Invalid option:


$ echo 'let x = 1' | OCAMLFORMAT="unknown=true" ocamlformat --impl -
-  ocamlformat: Error while parsing OCAMLFORMAT environment variable:
-               Unknown option "unknown"
+  ocamlformat: Error while parsing OCAMLFORMAT environment variable: Unknown
+               option "unknown"
[1]


Invalid value:


$ echo 'let x = 1' | OCAMLFORMAT="type-decl=unknown" ocamlformat --impl -
-  ocamlformat: Error while parsing OCAMLFORMAT environment variable:
-               For option "type-decl": invalid value 'unknown', expected either 'compact' or 'sparse'
+  ocamlformat: Error while parsing OCAMLFORMAT environment variable: For option
+               "type-decl": invalid value 'unknown', expected either 'compact'
+               or 'sparse'
[1]
File "test/cli/conf.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/cli/conf.t _build/default/test/cli/conf.t.corrected
diff --git a/_build/default/test/cli/conf.t b/_build/default/test/cli/conf.t.corrected
index 338916a..77ba250 100644
--- a/_build/default/test/cli/conf.t
+++ b/_build/default/test/cli/conf.t.corrected
@@ -14,8 +14,10 @@ Invalid version:
Exit code is printed by hand because sed succeeding would hide the error.


$ (<a.ml ocamlformat --impl -; echo [$?]) 2>&1 | sed 's/version is "[^"]*"/version is "..."/g'
-  ocamlformat: Error while parsing $TESTCASE_ROOT/prj/.ocamlformat:
-               Project should be formatted using ocamlformat version "bad", but the installed version is "..."
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/prj/.ocamlformat:
+               Project should be formatted using ocamlformat version "bad", but
+               the installed version is "..."
[1]


Disable version check:
@@ -28,7 +30,8 @@ Invalid syntax in .ocamlformat file:


$ echo 'a = b = c' > .ocamlformat
$ echo 'let x = 1"' | ocamlformat --impl -
-  ocamlformat: Error while parsing $TESTCASE_ROOT/prj/.ocamlformat:
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/prj/.ocamlformat:
Invalid format "a = b = c"
[1]


@@ -36,7 +39,8 @@ Invalid option:


$ echo 'unknown_option = true' > .ocamlformat
$ echo 'let x = 1' | ocamlformat --impl -
-  ocamlformat: Error while parsing $TESTCASE_ROOT/prj/.ocamlformat:
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/prj/.ocamlformat:
Unknown option "unknown_option"
[1]


@@ -44,14 +48,20 @@ Invalid option (short negated form):


$ echo 'no-wrap-comments' > .ocamlformat
$ echo 'let x = 1' | ocamlformat --impl -
-  ocamlformat: Error while parsing $TESTCASE_ROOT/prj/.ocamlformat:
-               Unknown option "no-wrap-comments": "no-wrap-comments" is the short form for "wrap-comments=false". It is only accepted on command line, please use "wrap-comments=false" or "wrap-comments=true" instead.
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/prj/.ocamlformat:
+               Unknown option "no-wrap-comments": "no-wrap-comments" is the
+               short form for "wrap-comments=false". It is only accepted on
+               command line, please use "wrap-comments=false" or
+               "wrap-comments=true" instead.
[1]


Invalid value:


$ echo 'field-space = unknown_value' > .ocamlformat
$ echo 'let x = 1' | ocamlformat --impl -
-  ocamlformat: Error while parsing $TESTCASE_ROOT/prj/.ocamlformat:
-               For option "field-space": invalid value 'unknown_value', expected one of 'loose', 'tight' or 'tight-decl'
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/prj/.ocamlformat:
+               For option "field-space": invalid value 'unknown_value',
+               expected one of 'loose', 'tight' or 'tight-decl'
[1]
File "test/cli/removed_option.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/cli/removed_option.t _build/default/test/cli/removed_option.t.corrected
diff --git a/_build/default/test/cli/removed_option.t b/_build/default/test/cli/removed_option.t.corrected
index 9347cd6..91adf54 100644
--- a/_build/default/test/cli/removed_option.t
+++ b/_build/default/test/cli/removed_option.t.corrected
@@ -3,34 +3,31 @@
Setting a removed option on the command line should display an error message:


$ ocamlformat a.ml --extension-sugar preserve
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--extension-sugar': This option has been removed in
version 0.17. Concrete syntax will now always be preserved.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


$ ocamlformat a.ml --let-open preserve
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--let-open': This option has been removed in version
0.17. Concrete syntax will now always be preserved.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


$ ocamlformat a.ml --escape-chars preserve
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--escape-chars': This option has been removed in version
0.16. Concrete syntax will now always be preserved.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


$ ocamlformat a.ml --escape-strings preserve
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--escape-strings': This option has been removed in
version 0.16. Concrete syntax will now always be preserved.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


$ ocamlformat a.ml --doc-comments-val unset
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--doc-comments-val': This option has been removed in
version 0.16. If you are using `doc-comments-val=before` in
combination with `doc-comments=before` then only
@@ -46,34 +43,32 @@ Setting a removed option on the command line should display an error message:
the same behavior. If you are using `doc-comments-val=unset` the
same behavior can now be achieved by setting `doc-comments`
only.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


An error is also reported if a removed option is set in an .ocamlformat file:


$ echo 'escape-chars = preserve' > .ocamlformat
$ ocamlformat a.ml
-  ocamlformat: Error while parsing $TESTCASE_ROOT/.ocamlformat:
-               For option "escape-chars": This option has been removed in version 0.16. Concrete syntax will now always be preserved.
+  ocamlformat: Error while parsing
+               $TESTCASE_ROOT/.ocamlformat:
+               For option "escape-chars": This option has been removed in
+               version 0.16. Concrete syntax will now always be preserved.
[1]


Setting an option to a deprecated value on the command line should also display an error message:


$ ocamlformat a.ml --break-separators=after-and-docked
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--break-separators': value `after-and-docked` has been
removed in version 0.12. One can get a similar behaviour by
setting `break-separators=after`, `space-around-lists=false`,
and `dock-collection-brackets=false`.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]


$ ocamlformat a.ml --break-string-literals=wrap
+  Usage: ocamlformat [--help] [OPTION]… [SRC]…
ocamlformat: option '--break-string-literals': value `wrap` has been removed
in version 0.12. It has been replaced by the new default `auto`
value, which breaks lines at newlines and wraps string literals
at the margin.
-  Usage: ocamlformat [OPTION]… [SRC]…
-  Try 'ocamlformat --help' for more information.
[1]
File "test/cli/stdin.t", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/cli/stdin.t _build/default/test/cli/stdin.t.corrected
diff --git a/_build/default/test/cli/stdin.t b/_build/default/test/cli/stdin.t.corrected
index a8be0b2..89c5946 100644
--- a/_build/default/test/cli/stdin.t
+++ b/_build/default/test/cli/stdin.t.corrected
@@ -3,15 +3,18 @@
One of '--impl', '--intf' or '--name' is required when the input is read from stdin:


$ ocamlformat -
-  ocamlformat: Must specify at least one of --name, --impl or --intf when reading from stdin
+  ocamlformat: Must specify at least one of --name, --impl or --intf when
+               reading from stdin
[1]


$ echo 'let x =       1' | ocamlformat -
-  ocamlformat: Must specify at least one of --name, --impl or --intf when reading from stdin
+  ocamlformat: Must specify at least one of --name, --impl or --intf when
+               reading from stdin
[1]


$ ocamlformat --inplace -
-  ocamlformat: Must specify at least one of --name, --impl or --intf when reading from stdin
+  ocamlformat: Must specify at least one of --name, --impl or --intf when
+               reading from stdin
[1]


Nominal cases:
@@ -30,7 +33,8 @@ The kind of syntax --impl/--intf is inferred from the name:
The syntax cannot be inferred if the extension of the file is unsupported:


$ ocamlformat --name a.cpp -
-  ocamlformat: Cannot deduce file kind from passed --name. Please specify --impl or --intf
+  ocamlformat: Cannot deduce file kind from passed --name. Please specify
+               --impl or --intf
[1]


Cannot specify files with stdin:
"/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-10-02 01:53.56: Job failed: Failed: Build failed