Build:
  1. 1
  2. 0
2026-08-14 14:27.30: New job: test local/bruit bc72e8d5cd344f85e15795e840350cba44f88dde ((lint-fmt))
Base: ocaml/opam@sha256:cafa9d27c295a906f8352bda7f585dbc78b2f762914fdaa3f8584030c6a8004d
ocamlformat version: version 0.28.1 (from opam)

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "/var/lib/git/repos/bruit" -b "main" && cd "bruit" && git reset --hard bc72e8d5
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam@sha256:cafa9d27c295a906f8352bda7f585dbc78b2f762914fdaa3f8584030c6a8004d
USER 1000:1000
RUN cd ~/opam-repository && (git cat-file -e 85a67e9d501a007b4bab20448f3301f816ec5eda || git fetch origin master) && git reset -q --hard 85a67e9d501a007b4bab20448f3301f816ec5eda && git log --no-decorate -n1 --oneline && opam update -u
RUN opam depext -i dune
WORKDIR /src
RUN opam depext -i ocamlformat=0.28.1
COPY --chown=1000:1000 . /src/
RUN opam exec -- dune build @fmt --ignore-promoted-rules || (echo "dune build @fmt failed"; exit 2)
END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK

2026-08-14 14:27.30: Waiting for resource in pool docker
2026-08-14 14:34.09: Got resource from pool docker
2026-08-14 14:34.09: Checking out commit bc72e8d5. To reproduce:
                       git clone --recursive "/var/lib/git/repos/bruit" -b "main" && cd "bruit" && git reset --hard bc72e8d5
2026-08-14 14:34.09: Exec: "cp" "-a" "--" "/var/lib/git/repos/bruit/.git" 
                           "/tmp/git-checkout3ee16f33"
2026-08-14 14:34.09: Exec: "git" "-C" "/tmp/git-checkout3ee16f33" "submodule" 
                           "deinit" "--force" "--all"
2026-08-14 14:34.09: Exec: "git" "-C" "/tmp/git-checkout3ee16f33" "reset" 
                           "--hard" "-q" "bc72e8d5cd344f85e15795e840350cba44f88dde"
2026-08-14 14:34.09: Exec: "git" "-c" "protocol.file.allow=always" "-C" 
                           "/tmp/git-checkout3ee16f33" "submodule" "update" 
                           "--recursive" "--init" "--no-fetch"
Writing BuildKit Dockerfile:
# syntax = docker/dockerfile:experimental@sha256:8c69d118cfcd040a222bea7f7d57c6156faa938cb61b47657cd65343babc3664
FROM ocaml/opam@sha256:cafa9d27c295a906f8352bda7f585dbc78b2f762914fdaa3f8584030c6a8004d
USER 1000:1000
RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 cd ~/opam-repository && (git cat-file -e 85a67e9d501a007b4bab20448f3301f816ec5eda || git fetch origin master) && git reset -q --hard 85a67e9d501a007b4bab20448f3301f816ec5eda && git log --no-decorate -n1 --oneline && opam update -u
RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam depext -i dune
WORKDIR /src
RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam depext -i ocamlformat=0.28.1
COPY --chown=1000:1000 . /src/
RUN opam exec -- dune build @fmt --ignore-promoted-rules || (echo "dune build @fmt failed"; exit 2)

2026-08-14 14:34.09: Exec: "docker" "build" "--" "/tmp/git-checkout3ee16f33"
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 950B done
#1 DONE 0.0s

#2 resolve image config for docker-image://docker.io/docker/dockerfile:experimental@sha256:8c69d118cfcd040a222bea7f7d57c6156faa938cb61b47657cd65343babc3664
#2 DONE 0.0s

#3 docker-image://docker.io/docker/dockerfile:experimental@sha256:8c69d118cfcd040a222bea7f7d57c6156faa938cb61b47657cd65343babc3664
#3 CACHED

#4 [internal] load build definition from Dockerfile
#4 transferring dockerfile: 950B done
#4 DONE 0.0s

#5 [internal] load .dockerignore
#5 transferring context: 44B done
#5 DONE 0.0s

#6 [internal] load metadata for docker.io/ocaml/opam@sha256:cafa9d27c295a906f8352bda7f585dbc78b2f762914fdaa3f8584030c6a8004d
#6 DONE 0.0s

#7 [internal] settings cache mount permissions
#7 CACHED

#8 [stage-0 1/7] FROM docker.io/ocaml/opam@sha256:cafa9d27c295a906f8352bda7f585dbc78b2f762914fdaa3f8584030c6a8004d
#8 CACHED

#9 [internal] load build context
#9 transferring context: 27.30kB done
#9 DONE 0.0s

#10 [stage-0 2/7] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 cd ~/opam-repository && (git cat-file -e 85a67e9d501a007b4bab20448f3301f816ec5eda || git fetch origin master) && git reset -q --hard 85a67e9d501a007b4bab20448f3301f816ec5eda && git log --no-decorate -n1 --oneline && opam update -u
#10 18.46 From https://github.com/ocaml/opam-repository
#10 18.46  * branch                  master     -> FETCH_HEAD
#10 18.50    fc08333d1b..566df006ad  master     -> origin/master
#10 63.07 85a67e9d50 [new release] dune (18 packages) (3.24.2)
#10 63.37 
#10 63.37 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
#10 70.59 [default] synchronised from git+file:///home/opam/opam-repository
#10 81.17 
#10 85.41 The following actions will be performed:
#10 85.41   - recompile ocaml-compiler      5.3.0  [upstream or system changes]
#10 85.41   - recompile ocaml-base-compiler 5.3.0* [uses ocaml-compiler]
#10 85.41   - recompile ocaml-config        3      [uses ocaml-base-compiler]
#10 85.41   - recompile ocaml               5.3.0  [upstream or system changes]
#10 85.41   - recompile opam-depext         1.2.3  [uses ocaml]
#10 85.41   - recompile base-effects        base   [uses ocaml]
#10 85.41   - recompile base-domains        base   [uses ocaml]
#10 85.41   - recompile base-nnp            base   [uses base-domains]
#10 85.41 ===== 8 to recompile =====
#10 85.49 
#10 85.49 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#10 86.63 -> retrieved ocaml-config.3  (cached)
#10 86.69 -> retrieved opam-depext.1.2.3  (cached)
#10 87.37 -> retrieved ocaml-compiler.5.3.0  (cached)
#10 232.9 -> removed   base-effects.base
#10 232.9 -> removed   base-nnp.base
#10 232.9 -> removed   base-domains.base
#10 232.9 -> removed   opam-depext.1.2.3
#10 233.0 -> removed   ocaml.5.3.0
#10 233.0 -> removed   ocaml-config.3
#10 233.0 -> removed   ocaml-base-compiler.5.3.0
#10 234.9 -> removed   ocaml-compiler.5.3.0
#10 237.8 -> installed ocaml-compiler.5.3.0
#10 237.8 -> installed ocaml-base-compiler.5.3.0
#10 237.9 -> installed ocaml-config.3
#10 237.9 -> installed ocaml.5.3.0
#10 238.0 -> installed base-domains.base
#10 238.0 -> installed base-effects.base
#10 238.0 -> installed base-nnp.base
#10 238.6 -> installed opam-depext.1.2.3
#10 239.3 Done.
#10 239.3 
#10 239.3 <><> opam-depext.1.2.3 installed successfully <><><><><><><><><><><><><><><><><>
#10 239.3 => opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead
#10 239.3 # Run eval $(opam env) to update the current shell environment
#10 DONE 241.7s

#11 [stage-0 3/7] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam depext -i dune
#11 0.340 Since version 2.1, opam now handles external dependencies alongside OCaml ones, and the `depext` plugin interface is provided for backwards compatibility only. Consider using your usual `opam install` command to install both OCaml and system dependencies, or `opam install <pkg> --depext-only` if you want to only install external dependencies.
#11 0.340 # Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian
#11 4.895 # No extra OS packages requirements found.
#11 18.82 The following actions will be performed:
#11 18.82   - install dune 3.24.2
#11 18.82 
#11 18.82 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#11 20.28 -> retrieved dune.3.24.2  (cached)
#11 59.45 -> installed dune.3.24.2
#11 59.89 Done.
#11 59.89 # Run eval $(opam env) to update the current shell environment
#11 DONE 62.6s

#12 [stage-0 4/7] WORKDIR /src
#12 DONE 0.0s

#13 [stage-0 5/7] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam depext -i ocamlformat=0.28.1
#13 0.347 Since version 2.1, opam now handles external dependencies alongside OCaml ones, and the `depext` plugin interface is provided for backwards compatibility only. Consider using your usual `opam install` command to install both OCaml and system dependencies, or `opam install <pkg> --depext-only` if you want to only install external dependencies.
#13 0.347 # Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian
#13 4.982 # No extra OS packages requirements found.
#13 18.95 The following actions will be performed:
#13 18.95   - install ocaml_intrinsics_kernel v0.17.2  [required by base]
#13 18.95   - install ocamlbuild              0.16.1   [required by fpath, astring, uuseg]
#13 18.95   - install either                  1.0.0    [required by ocamlformat-lib]
#13 18.95   - install menhirLib               20260209 [required by ocamlformat-lib]
#13 18.95   - install ocaml-version           4.1.3    [required by ocamlformat-lib]
#13 18.95   - install csexp                   1.5.2    [required by ocamlformat]
#13 18.95   - install menhirSdk               20260209 [required by ocamlformat-lib]
#13 18.95   - install menhirGLR               20260209 [required by menhir]
#13 18.95   - install cmdliner                2.1.1    [required by ocamlformat]
#13 18.95   - install camlp-streams           5.0.1    [required by ocamlformat-lib]
#13 18.95   - install sexplib0                v0.17.0  [required by base]
#13 18.95   - install fix                     20250919 [required by ocamlformat-lib]
#13 18.95   - install dune-build-info         3.24.2   [required by ocamlformat-lib]
#13 18.95   - install ocamlfind               1.9.8    [required by ocp-indent, astring, fpath, uuseg]
#13 18.95   - install re                      1.14.0   [required by ocamlformat]
#13 18.95   - install menhirCST               20260209 [required by menhir]
#13 18.95   - install dune-configurator       3.24.2   [required by base]
#13 18.95   - install topkg                   1.1.1    [required by fpath, astring, uuseg]
#13 18.95   - install ocp-indent              1.9.0    [required by ocamlformat-lib]
#13 18.95   - install menhir                  20260209 [required by ocamlformat-lib]
#13 18.95   - install base                    v0.17.3  [required by ocamlformat-lib]
#13 18.95   - install uutf                    1.0.4    [required by ocamlformat-lib]
#13 18.95   - install uucp                    17.0.0   [required by uuseg]
#13 18.95   - install astring                 0.8.5    [required by ocamlformat-lib]
#13 18.95   - install stdio                   v0.17.0  [required by ocamlformat-lib]
#13 18.95   - install uuseg                   17.0.0   [required by ocamlformat-lib]
#13 18.95   - install fpath                   0.7.3    [required by ocamlformat-lib]
#13 18.95   - install ocamlformat-lib         0.28.1   [required by ocamlformat]
#13 18.95   - install ocamlformat             0.28.1
#13 18.95 ===== 29 to install =====
#13 18.95 
#13 18.95 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#13 19.00 -> retrieved astring.0.8.5  (cached)
#13 19.01 -> retrieved camlp-streams.5.0.1  (cached)
#13 22.03 -> retrieved base.v0.17.3  (cached)
#13 22.08 -> retrieved cmdliner.2.1.1  (cached)
#13 22.12 -> retrieved csexp.1.5.2  (cached)
#13 22.15 -> retrieved either.1.0.0  (cached)
#13 22.21 -> retrieved fix.20250919  (cached)
#13 22.25 -> retrieved fpath.0.7.3  (cached)
#13 22.49 -> retrieved menhir.20260209  (cached)
#13 22.56 -> installed csexp.1.5.2
#13 22.59 -> installed camlp-streams.5.0.1
#13 22.73 -> retrieved menhirCST.20260209  (cached)
#13 22.98 -> retrieved menhirGLR.20260209  (cached)
#13 23.16 -> installed either.1.0.0
#13 23.33 -> retrieved menhirLib.20260209  (cached)
#13 24.25 -> retrieved dune-build-info.3.24.2  (cached)
#13 25.12 -> retrieved dune-configurator.3.24.2  (cached)
#13 25.77 -> installed fix.20250919
#13 28.03 -> retrieved menhirSdk.20260209  (cached)
#13 28.04 -> retrieved ocaml-version.4.1.3  (cached)
#13 28.07 -> retrieved ocaml_intrinsics_kernel.v0.17.2  (cached)
#13 28.35 -> retrieved ocamlbuild.0.16.1  (cached)
#13 28.40 -> retrieved ocamlfind.1.9.8  (cached)
#13 28.49 -> installed cmdliner.2.1.1
#13 28.49 -> installed dune-build-info.3.24.2
#13 28.51 -> installed dune-configurator.3.24.2
#13 28.54 -> installed menhirCST.20260209
#13 29.04 -> retrieved ocamlformat.0.28.1  (cached)
#13 29.25 -> retrieved ocamlformat-lib.0.28.1  (cached)
#13 29.29 -> installed menhirGLR.20260209
#13 29.31 -> installed menhirLib.20260209
#13 29.38 -> installed menhirSdk.20260209
#13 29.41 -> retrieved ocp-indent.1.9.0  (cached)
#13 29.44 -> retrieved re.1.14.0  (cached)
#13 29.48 -> retrieved sexplib0.v0.17.0  (cached)
#13 29.53 -> retrieved stdio.v0.17.0  (cached)
#13 29.56 -> retrieved topkg.1.1.1  (cached)
#13 29.65 -> installed ocaml-version.4.1.3
#13 29.66 -> retrieved uuseg.17.0.0  (cached)
#13 29.70 -> retrieved uucp.17.0.0  (cached)
#13 29.71 -> retrieved uutf.1.0.4  (cached)
#13 29.84 -> installed ocaml_intrinsics_kernel.v0.17.2
#13 32.50 -> installed ocamlfind.1.9.8
#13 34.51 -> installed re.1.14.0
#13 35.39 -> installed ocamlbuild.0.16.1
#13 36.05 -> installed sexplib0.v0.17.0
#13 36.47 -> installed ocp-indent.1.9.0
#13 40.24 -> installed topkg.1.1.1
#13 41.14 -> installed menhir.20260209
#13 41.61 -> installed astring.0.8.5
#13 42.55 -> installed uutf.1.0.4
#13 43.19 -> installed fpath.0.7.3
#13 46.60 -> installed base.v0.17.3
#13 46.92 -> installed stdio.v0.17.0
#13 57.48 -> installed uucp.17.0.0
#13 59.60 -> installed uuseg.17.0.0
#13 70.81 -> installed ocamlformat-lib.0.28.1
#13 73.55 -> installed ocamlformat.0.28.1
#13 75.39 Done.
#13 75.39 
#13 75.39 <><> ocp-indent.1.9.0 installed successfully ><><><><><><><><><><><><><><><><><>
#13 75.39 => This package requires additional configuration for use in editors. Install package 'user-setup', or manually:
#13 75.39 
#13 75.39    * for Emacs, add these lines to ~/.emacs:
#13 75.39      (add-to-list 'load-path "/home/opam/.opam/5.3/share/emacs/site-lisp")
#13 75.39      (require 'ocp-indent)
#13 75.39 
#13 75.39    * for Vim, add this line to ~/.vimrc:
#13 75.39      set rtp^="/home/opam/.opam/5.3/share/ocp-indent/vim"
#13 75.39 # Run eval $(opam env) to update the current shell environment
#13 DONE 81.2s

#14 [stage-0 6/7] COPY --chown=1000:1000 . /src/
#14 DONE 0.0s

#15 [stage-0 7/7] RUN opam exec -- dune build @fmt --ignore-promoted-rules || (echo "dune build @fmt failed"; exit 2)
#15 DONE 0.3s

#16 exporting to image
#16 exporting layers
#16 exporting layers 14.7s done
#16 writing image sha256:c9761ae5313682fde255152837706982773dc165f6aa96314094bd7a9aeacdcc done
#16 DONE 14.8s
2026-08-14 14:40.51: Job succeeded