Build:
- 1
- 0
2026-04-16 14:02.41: New job: test local/bruit 7948d888622ff448b134cd342acc82687a4eb6f1 (debian-13-5.3_opam-2.5) Base: ocaml/opam@sha256:e02de3f93e9f32bd940cbbfc0ed7ff07acb871ceb6e59f2fd99da435e5cde483 Opam project build To reproduce locally: cd $(mktemp -d) git clone --recursive "/var/lib/git/repos/bruit" -b "main" && cd "bruit" && git reset --hard 7948d888 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam@sha256:e02de3f93e9f32bd940cbbfc0ed7ff07acb871ceb6e59f2fd99da435e5cde483 # debian-13-5.3_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.5 /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 3e0c395e7b1393a792367f8edca3654dac71e6fd || git fetch origin master) && git reset -q --hard 3e0c395e7b1393a792367f8edca3654dac71e6fd && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 bruit.opam ./ RUN opam pin add -yn bruit.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base dune.3.22.2 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y bruit.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 2026-04-16 14:02.41: Waiting for resource in pool docker 2026-04-16 14:05.12: Got resource from pool docker 2026-04-16 14:05.12: Checking out commit 7948d888. To reproduce: git clone --recursive "/var/lib/git/repos/bruit" -b "main" && cd "bruit" && git reset --hard 7948d888 2026-04-16 14:05.12: Exec: "cp" "-a" "--" "/var/lib/git/repos/bruit/.git" "/tmp/git-checkout252540ba" 2026-04-16 14:05.12: Exec: "git" "-C" "/tmp/git-checkout252540ba" "submodule" "deinit" "--force" "--all" 2026-04-16 14:05.12: Exec: "git" "-C" "/tmp/git-checkout252540ba" "reset" "--hard" "-q" "7948d888622ff448b134cd342acc82687a4eb6f1" 2026-04-16 14:05.12: Exec: "git" "-c" "protocol.file.allow=always" "-C" "/tmp/git-checkout252540ba" "submodule" "update" "--recursive" "--init" "--no-fetch" Writing BuildKit Dockerfile: # syntax = docker/dockerfile:experimental@sha256:8c69d118cfcd040a222bea7f7d57c6156faa938cb61b47657cd65343babc3664 FROM ocaml/opam@sha256:e02de3f93e9f32bd940cbbfc0ed7ff07acb871ceb6e59f2fd99da435e5cde483 # debian-13-5.3_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.5 /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 --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 cd ~/opam-repository && (git cat-file -e 3e0c395e7b1393a792367f8edca3654dac71e6fd || git fetch origin master) && git reset -q --hard 3e0c395e7b1393a792367f8edca3654dac71e6fd && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 bruit.opam ./ RUN opam pin add -yn bruit.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base dune.3.22.2 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1" ENV CI="true" ENV OCAMLCI="true" RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam update --depexts && opam install --cli=2.5 --depext-only -y bruit.dev $DEPS RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam install $DEPS COPY --chown=1000:1000 . /src RUN opam exec -- dune build @install @check @runtest && rm -rf _build 2026-04-16 14:05.12: Exec: "docker" "build" "--" "/tmp/git-checkout252540ba" #0 building with "default" instance using docker driver #1 [internal] load build definition from Dockerfile #1 transferring dockerfile: 1.59kB 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 .dockerignore #4 transferring context: 44B done #4 DONE 0.0s #5 [internal] load build definition from Dockerfile #5 transferring dockerfile: 1.59kB done #5 DONE 0.0s #6 [internal] load metadata for docker.io/ocaml/opam@sha256:e02de3f93e9f32bd940cbbfc0ed7ff07acb871ceb6e59f2fd99da435e5cde483 #6 DONE 0.0s #7 [stage-0 1/15] FROM docker.io/ocaml/opam@sha256:e02de3f93e9f32bd940cbbfc0ed7ff07acb871ceb6e59f2fd99da435e5cde483 #7 DONE 0.0s #8 [stage-0 2/15] WORKDIR /src #8 CACHED #9 [internal] settings cache mount permissions #9 CACHED #10 [internal] load build context #10 transferring context: 27.17kB done #10 DONE 0.0s #11 [stage-0 3/15] RUN sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam #11 DONE 0.3s #12 [stage-0 4/15] RUN opam init --reinit -ni #12 0.168 Configuring from /home/opam/.opamrc and then from built-in defaults. #12 0.168 Checking for available remotes: rsync and local, git. #12 0.168 - you won't be able to use mercurial repositories unless you install the hg command on your system. #12 0.168 - you won't be able to use darcs repositories unless you install the darcs command on your system. #12 0.168 #12 0.188 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. #12 0.188 You may want to back it up before going further. #12 0.188 #12 0.189 Continue? [Y/n] y #12 0.189 [NOTE] The 'jobs' option was reset, its value was 71 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using: #12 0.189 opam option jobs=71 --global #12 0.191 Format upgrade done. #12 4.239 #12 4.239 <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> #12 41.26 [default] Initialised #12 DONE 47.0s #13 [stage-0 5/15] RUN uname -rs && opam exec -- ocaml -version && opam --version #13 0.245 Linux 6.12.77 #13 0.294 The OCaml toplevel, version 5.3.0 #13 0.309 2.5.0 #13 DONE 0.3s #14 [stage-0 6/15] WORKDIR /src #14 DONE 0.0s #15 [stage-0 7/15] RUN sudo chown opam /src #15 DONE 0.2s #16 [stage-0 8/15] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 cd ~/opam-repository && (git cat-file -e 3e0c395e7b1393a792367f8edca3654dac71e6fd || git fetch origin master) && git reset -q --hard 3e0c395e7b1393a792367f8edca3654dac71e6fd && git log --no-decorate -n1 --oneline && opam update -u #16 40.30 3e0c395e7b [new release] dune (18 packages) (3.22.2) #16 40.61 #16 40.61 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> #16 41.66 [default] synchronised from git+file:///home/opam/opam-repository #16 42.17 #16 46.12 Everything as up-to-date as possible (run with --verbose to show unavailable upgrades). #16 46.12 However, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.5.0"), which will ask permission to downgrade or uninstall the conflicting packages. #16 46.12 Nothing to do. #16 46.12 # To update the current shell environment, run: eval $(opam env) #16 DONE 46.6s #17 [stage-0 9/15] COPY --chown=1000:1000 bruit.opam ./ #17 DONE 0.0s #18 [stage-0 10/15] RUN opam pin add -yn bruit.dev './' #18 1.158 [NOTE] Package bruit does not exist in opam repositories registered in the current switch. #18 1.212 [bruit.dev] synchronised (file:///src) #18 1.212 [WARNING] Failed checks on bruit package definition from source at file:///src: #18 1.212 warning 62: License doesn't adhere to the SPDX standard, see https://spdx.org/licenses/ : "LICENSE" #18 1.215 bruit is now pinned to file:///src (version dev) #18 DONE 1.3s #19 [stage-0 11/15] RUN echo '(lang dune 3.0)' > './dune-project' #19 DONE 0.3s #20 [stage-0 12/15] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam update --depexts && opam install --cli=2.5 --depext-only -y bruit.dev base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base dune.3.22.2 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1 #20 0.215 + /usr/bin/sudo "apt-get" "update" #20 0.935 - Hit:1 http://deb.debian.org/debian trixie InRelease #20 0.935 - Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB] #20 0.935 - Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB] #20 0.935 - Get:4 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [123 kB] #20 0.935 - Fetched 213 kB in 0s (1206 kB/s) #20 0.935 - Reading package lists... #20 1.263 #20 1.263 <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> #20 1.549 [bruit.dev] synchronised (file:///src) #20 1.551 #20 2.250 [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). #20 2.250 [NOTE] Package ocaml-config is already installed (current version is 3). #20 2.250 [NOTE] Package ocaml-compiler is already installed (current version is 5.3.0). #20 2.250 [NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0). #20 2.250 [NOTE] Package ocaml is already installed (current version is 5.3.0). #20 2.250 [NOTE] Package base-unix is already installed (current version is base). #20 2.250 [NOTE] Package base-threads is already installed (current version is base). #20 2.250 [NOTE] Package base-nnp is already installed (current version is base). #20 2.250 [NOTE] Package base-effects is already installed (current version is base). #20 2.250 [NOTE] Package base-domains is already installed (current version is base). #20 2.250 [NOTE] Package base-bigarray is already installed (current version is base). #20 6.530 # To update the current shell environment, run: eval $(opam env) #20 DONE 6.6s #21 [stage-0 13/15] RUN --mount=type=cache,id=opam-archives,target=/home/opam/.opam/download-cache,uid=1000 opam install base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base dune.3.22.2 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-config.3 ocaml-options-vanilla.1 #21 1.147 [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). #21 1.147 [NOTE] Package ocaml-config is already installed (current version is 3). #21 1.147 [NOTE] Package ocaml-compiler is already installed (current version is 5.3.0). #21 1.147 [NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0). #21 1.147 [NOTE] Package ocaml is already installed (current version is 5.3.0). #21 1.147 [NOTE] Package base-unix is already installed (current version is base). #21 1.147 [NOTE] Package base-threads is already installed (current version is base). #21 1.147 [NOTE] Package base-nnp is already installed (current version is base). #21 1.147 [NOTE] Package base-effects is already installed (current version is base). #21 1.147 [NOTE] Package base-domains is already installed (current version is base). #21 1.147 [NOTE] Package base-bigarray is already installed (current version is base). #21 4.788 The following actions will be performed: #21 4.788 === install 1 package #21 4.788 - install dune 3.22.2 #21 4.788 #21 4.788 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> #21 6.748 -> retrieved dune.3.22.2 (cached) #21 40.96 -> installed dune.3.22.2 #21 41.54 Done. #21 41.54 # To update the current shell environment, run: eval $(opam env) #21 DONE 41.7s #22 [stage-0 14/15] COPY --chown=1000:1000 . /src #22 DONE 0.0s #23 [stage-0 15/15] RUN opam exec -- dune build @install @check @runtest && rm -rf _build #23 0.339 File "src/dune", line 3, characters 30-37: #23 0.339 3 | (libraries terminal unix fmt astring) #23 0.339 ^^^^^^^ #23 0.339 Error: Library "astring" not found. #23 0.339 -> required by library "bruit" in _build/default/src #23 0.339 -> required by _build/default/src/.bruit.objs/byte/bruit.cmi #23 0.339 -> required by alias src/check #23 0.339 File "example/dune", line 3, characters 18-25: #23 0.339 3 | (libraries bruit fmt.tty)) #23 0.339 ^^^^^^^ #23 0.339 Error: Library "fmt.tty" not found. #23 0.339 -> required by _build/default/example/.main.eobjs/byte/dune__exe__Main.cmi #23 0.339 -> required by alias example/check #23 ERROR: process "/bin/sh -c opam exec -- dune build @install @check @runtest && rm -rf _build" did not complete successfully: exit code: 1 ------ > [stage-0 15/15] RUN opam exec -- dune build @install @check @runtest && rm -rf _build: 0.339 Error: Library "astring" not found. 0.339 -> required by library "bruit" in _build/default/src 0.339 -> required by _build/default/src/.bruit.objs/byte/bruit.cmi 0.339 -> required by alias src/check 0.339 File "example/dune", line 3, characters 18-25: 0.339 3 | (libraries bruit fmt.tty)) 0.339 ^^^^^^^ 0.339 Error: Library "fmt.tty" not found. 0.339 -> required by _build/default/example/.main.eobjs/byte/dune__exe__Main.cmi 0.339 -> required by alias example/check ------ ERROR: failed to build: failed to solve: process "/bin/sh -c opam exec -- dune build @install @check @runtest && rm -rf _build" did not complete successfully: exit code: 1 2026-04-16 14:07.38: Job failed: Docker build exited with status 1