2025-10-02 01:46.56: New job: test ocaml-ppx/ocamlformat https://github.com/ocaml-ppx/ocamlformat.git#refs/heads/main (c6c2477d78cdaa8ccb9fca1fe4b4b052a038df12) (linux-s390x:debian-13-4.14_s390x_opam-2.4)
Base: ocaml/opam:debian-13-ocaml-4.14@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c
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:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c
# debian-13-4.14_s390x_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.56: Using cache hint "ocaml-ppx/ocamlformat-ocaml/opam:debian-13-ocaml-4.14@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c-debian-13-4.14_s390x_opam-2.4-8afa613eac21d635f3ca7f4193fa5897"
2025-10-02 01:46.56: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c)
(comment debian-13-4.14_s390x_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.56: Waiting for resource in pool OCluster
2025-10-02 04:15.12: Waiting for worker…
2025-10-02 13:44.45: Got resource from pool OCluster
Building on s390x-worker-01.marist.ci.dev
All commits already cached
HEAD is now at c6c2477d Fix quadratic command-line parsing (#2724)
(from ocaml/opam:debian-13-ocaml-4.14@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c' locally
docker.io/ocaml/opam@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c: Pulling from ocaml/opam
28eee642962f: Already exists
a3da74fabe44: Already exists
954a4b28c4ac: Already exists
33f722f84002: Already exists
22230ea145a1: Already exists
fecf6f44f284: Already exists
217bd4fede6a: Already exists
a33647dc2e72: Already exists
d79780697501: Already exists
9e23f7ffff2e: Already exists
eb75e063aff4: Already exists
388fcd98e415: Already exists
c1d354e88d38: Already exists
a0f5e7e96636: Already exists
ba5ff5ec60bd: Already exists
9aaa23f50bbc: Already exists
d10db0662178: Already exists
cd6f63b0f0f8: Already exists
ac5365aa1a11: Already exists
6587968fd88d: Already exists
e588d084fdc6: Already exists
4f4fb700ef54: Already exists
4a5997d73c6d: Already exists
e541ac1e928e: Already exists
728b5511169a: Already exists
959e36346cbe: Already exists
1b8a5fe2cec2: Already exists
e74fadbc5d0b: Already exists
ed67b78ce4dd: Already exists
427304383c22: Already exists
3463eb278ac2: Already exists
5f56c9cf090b: Already exists
dbb81f611d3c: Already exists
06c3f641d2b9: Already exists
f910b4833e6f: Already exists
b3a11d4a0fca: Already exists
0031525c35e8: Already exists
007ec72ca1b8: Already exists
b29860215095: Already exists
c167a5bdeab6: Already exists
9d6b0ab18c79: Pulling fs layer
9b09c37533d2: Pulling fs layer
9a6fc8f6dbc3: Pulling fs layer
22d23a9afaf6: Pulling fs layer
22d23a9afaf6: Waiting
9a6fc8f6dbc3: Verifying Checksum
9a6fc8f6dbc3: Download complete
9b09c37533d2: Verifying Checksum
9b09c37533d2: Download complete
22d23a9afaf6: Verifying Checksum
22d23a9afaf6: Download complete
9d6b0ab18c79: Verifying Checksum
9d6b0ab18c79: Download complete
9d6b0ab18c79: Pull complete
9b09c37533d2: Pull complete
9a6fc8f6dbc3: Pull complete
22d23a9afaf6: Pull complete
Digest: sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c
Status: Downloaded newer image for ocaml/opam@sha256:720edf32770dc2430e94f20c9b199fe4da5cd2ddaad6daa066235ec87df69b2c
2025-10-02 13:44.46 ---> using "21924fd223900ba9548db9ff2d14288448a6b2c6b9a6ac7a343fb5704bfa759b" from cache
/: (comment debian-13-4.14_s390x_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 13:44.46 ---> using "bec4a1f2b2ef3becd3f88a0205dbddf83f3b9d59c6c94db02b19cf4e4fd1f3da" 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 13:44.46 ---> using "b60d5333ae50d5e0338ae63562d05940ddf8ed76202433b81b177f8598325024" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 6.8.0-71-generic
The OCaml toplevel, version 4.14.2
2.4.1
2025-10-02 13:44.46 ---> using "236e344f13fe86a0467ef486d55818e18cab9e6abbbe49d55128ad6b2b8a6939" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-10-02 13:44.46 ---> using "334ea4a1bc0602e46fb9a0b52268e87a12fb3ca3e4141b6c086222e2dfb9f605" 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..be5fd2aa0b 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 13:44.46 ---> using "8af9d3074bc4b878f43c440900f2b47e5e4362f28e26e8885e9633defbb514bb" from cache
/src: (copy (src ocamlformat.opam ocamlformat-rpc-lib.opam ocamlformat-lib.opam ocamlformat-bench.opam)
(dst ./))
2025-10-02 13:44.49 ---> saved as "394d2185decd5fa12bfa57685d39287c85aca8d6006183d6ebcbfd5e14a5bda0"
/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)
[WARNING] Failed checks on ocamlformat-bench package definition from source at file:///src:
warning 68: Missing field 'license'
ocamlformat-bench is now pinned to file:///src (version dev)
2025-10-02 13:44.59 ---> saved as "244fc2eff8e2a036dff94aa0a6733a09827378f47a992f82b32e128dbc5c8ddc"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-10-02 13:45.08 ---> saved as "49861f20c475c04cfff07b0107a390b82dafd1fe85896a077d8cfb907bb7687c"
/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 s390x Packages [42.6 kB]
- Fetched 133 kB in 0s (350 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 13:45.30 ---> saved as "e0b39a5e13062e94b28e8961e6c349811bc79f7abdeb32e7f988d9a6fd97def6"
/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 fix.20250919 (cached)
-> retrieved fmt.0.11.0 (cached)
-> retrieved fpath.0.7.3 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocaml-version.4.0.1 (cached)
-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912 (cached)
-> retrieved dune.3.20.2, dune-build-info.3.20.2, dune-configurator.3.20.2 (cached)
-> retrieved ocamlbuild.0.16.1 (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)
-> installed cmdliner.2.0.0
-> retrieved topkg.1.1.0 (cached)
-> retrieved uuseg.17.0.0 (cached)
-> retrieved uucp.17.0.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved yojson.3.0.0 (cached)
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.0
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed uutf.1.0.4
-> installed fpath.0.7.3
-> installed dune.3.20.2
-> installed camlp-streams.5.0.1
-> installed csexp.1.5.2
-> installed bechamel.0.5.0
-> installed dune-build-info.3.20.2
-> installed either.1.0.0
-> installed dune-configurator.3.20.2
-> installed menhirCST.20250912
-> installed fix.20250919
-> installed menhirSdk.20250912
-> installed menhirLib.20250912
-> installed uucp.17.0.0
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-version.4.0.1
-> installed ocp-indent.1.9.0
-> installed re.1.14.0
-> installed sexplib0.v0.16.0
-> installed stdlib-shims.0.3.0
-> installed uuseg.17.0.0
-> installed alcotest.1.9.1
-> installed yojson.3.0.0
-> installed base.v0.16.4
-> installed stdio.v0.16.0
-> installed menhir.20250912
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 13:47.13 ---> saved as "51c4e0fbc96641369caccfdae016f99592f5399e5b9474c7f008d628eaf374d4"
/src: (copy (src .) (dst /src))
2025-10-02 13:47.15 ---> saved as "2a157bf687f54c43089b3ac1ff0b8e66abb6c3974391940637bf5770a6f2972d"
/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'
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.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.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/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/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/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:
(cd _build/default/test/unit && ./test_unit.exe)
Testing `ocamlformat'.
This run has ID `6W4P3DHW'.
................................................................................
................................................................................
............................................
"/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-10-02 13:47.58: Job failed: Failed: Build failed