2025-10-18 16:36.41: New job: test jeffa5/ocaml-grpc https://github.com/jeffa5/ocaml-grpc.git#refs/heads/master (efd6dbfc2d044fef97b122f831a8c162d9d46625) (linux-x86_64:alpine-3.22-5.4_opam-2.4)
Base: ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/jeffa5/ocaml-grpc.git" -b "master" && cd "ocaml-grpc" && git reset --hard efd6dbfc
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
# alpine-3.22-5.4_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 c603e596bfaf195a5c1a3baf992b11c1de5ad35b || git fetch origin master) && git reset -q --hard c603e596bfaf195a5c1a3baf992b11c1de5ad35b && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 grpc.opam grpc-lwt.opam ./
RUN opam pin add -yn grpc.dev './' && \
opam pin add -yn grpc-lwt.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="angstrom.0.16.1 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 faraday.0.8.2 h2.dev hpack.0.13.0 httpaf.0.7.1 lwt.5.9.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-protoc.3.1.1 ocaml-syntax-shims.1.0.0 ocamlfind.1.9.8 ocplib-endian.1.2 pbrt.3.1.1 psq.0.2.1 result.1.5 seq.base stdlib-shims.0.3.0 stringext.1.6.0 uri.4.4.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y grpc.dev grpc-lwt.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-18 16:36.41: Using cache hint "jeffa5/ocaml-grpc-ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1-alpine-3.22-5.4_opam-2.4-30900c4bb9ab8876894e9ba10383a90a"
2025-10-18 16:36.41: Using OBuilder spec:
((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1)
(comment alpine-3.22-5.4_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 c603e596bfaf195a5c1a3baf992b11c1de5ad35b || git fetch origin master) && git reset -q --hard c603e596bfaf195a5c1a3baf992b11c1de5ad35b && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src grpc.opam grpc-lwt.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn grpc.dev './' && \
\nopam pin add -yn grpc-lwt.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "angstrom.0.16.1 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 faraday.0.8.2 h2.dev hpack.0.13.0 httpaf.0.7.1 lwt.5.9.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-protoc.3.1.1 ocaml-syntax-shims.1.0.0 ocamlfind.1.9.8 ocplib-endian.1.2 pbrt.3.1.1 psq.0.2.1 result.1.5 seq.base stdlib-shims.0.3.0 stringext.1.6.0 uri.4.4.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 grpc.dev grpc-lwt.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-18 16:36.41: Waiting for resource in pool OCluster
2025-10-18 18:01.11: Waiting for worker…
2025-10-18 18:03.58: Got resource from pool OCluster
Building on eumache
All commits already cached
HEAD is now at efd6dbf Update h2 src
(from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1)
Unable to find image 'ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1' locally
docker.io/ocaml/opam@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1: Pulling from ocaml/opam
2d35ebdb57d9: Already exists
4eef589852a3: Already exists
9bcbf19aa70e: Already exists
c27157cc8c0d: Already exists
8eb40fc9ec7b: Already exists
cf28fbda269d: Already exists
bdb05ad1bb03: Already exists
14b089059d7b: Already exists
8fba92877dbb: Already exists
b46b8c2b2e76: Already exists
c5fe84151a2d: Already exists
d69ebb2cea14: Already exists
8987930d7936: Already exists
07e0ebe0bb32: Already exists
a8a8cd8bbc43: Already exists
0eee052a54e0: Already exists
9d0f02e69e08: Already exists
4f4fb700ef54: Already exists
a90897db75ef: Already exists
678b7f997d9a: Already exists
55a17ca9d235: Already exists
b0fc237f6c26: Already exists
4a9f9668ab4a: Already exists
f4048786242d: Already exists
322480b4b1d3: Already exists
eda2d7da1b04: Already exists
83325a5b2b26: Already exists
09b67e1d956f: Already exists
2adafa4b73e4: Already exists
8e04b3ec100b: Already exists
7eac41d73ac6: Already exists
477769be07d7: Already exists
1121e0452bac: Already exists
a7433c286e2f: Already exists
d11ef3af080f: Already exists
595e38b8edfd: Already exists
f15368aa3240: Already exists
772205525b1c: Already exists
4b2a438a134b: Already exists
ce88c0406b4f: Already exists
30e6e4c7d9f2: Already exists
44ebb4aa5e2d: Already exists
Digest: sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
Status: Downloaded newer image for ocaml/opam@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
2025-10-18 18:04.01 ---> using "e5ab524290e505ed5240c7136106572c90f8627d7370b4a892c6d0542a73b860" from cache
/: (comment alpine-3.22-5.4_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-18 18:04.01 ---> using "842aabfb8075585c58dd3796ad7f10d9759a3a2fd2b99532aad6c3213b54374d" 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
[NOTE] The 'jobs' option was reset, its value was 255 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
opam option jobs=255 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-10-18 18:04.01 ---> using "839d7f09fa9959b49dee54923b64533e1cf0fc0921fb751f1c302a1676d84f63" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-131-generic
The OCaml toplevel, version 5.4.0
2.4.1
2025-10-18 18:04.01 ---> using "c457e564a54f7ef45dc343abb0d249c5401278994a0a39530e666d61e6f08283" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-10-18 18:04.01 ---> using "29f1940b2be9f0ffecc71b1311abbbd03369d83e42a8c265638038c10eef5a91" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e c603e596bfaf195a5c1a3baf992b11c1de5ad35b || git fetch origin master) && git reset -q --hard c603e596bfaf195a5c1a3baf992b11c1de5ad35b && git log --no-decorate -n1 --oneline && opam update -u"))
c603e596bf Merge pull request #28683 from Octachron/OCaml_5.4.0_release
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository
Already up-to-date.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-10-18 18:04.01 ---> using "cfc13f97e2a88a9c451d0abfe5c718b68e210cc21a8c36f60d5d73b9b5ce08ff" from cache
/src: (copy (src grpc.opam grpc-lwt.opam) (dst ./))
2025-10-18 18:04.01 ---> saved as "2b47746e202825c259dba78cb52b6099420a186d74eae234a6d2cf2ee16817e2"
/src: (run (network host)
(shell "opam pin add -yn grpc.dev './' && \
\nopam pin add -yn grpc-lwt.dev './'"))
[grpc.dev] synchronised (file:///src)
grpc is now pinned to file:///src (version dev)
[grpc-lwt.dev] synchronised (file:///src)
The following additional pinnings are required by grpc-lwt.dev:
- h2.dev at git+https://github.com/anmonteiro/ocaml-h2#7df18604ae389e3151f79e2be5dfd4278d4377fb
Pin and install them? [Y/n] y
[h2.dev] synchronised (no changes)
h2 is now pinned to git+https://github.com/anmonteiro/ocaml-h2#7df18604ae389e3151f79e2be5dfd4278d4377fb (version dev)
grpc-lwt is now pinned to file:///src (version dev)
2025-10-18 18:04.19 ---> saved as "098e9796428e99f9f628c883a90a0e36a166bea96c4671dddeb16d71f4d2d218"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-10-18 18:04.19 ---> saved as "9f93245ac2d3df08c464da37e23e2c3f8ff1fabf39d72f3d01bfd3967eba5808"
/src: (env DEPS "angstrom.0.16.1 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 faraday.0.8.2 h2.dev hpack.0.13.0 httpaf.0.7.1 lwt.5.9.2 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-protoc.3.1.1 ocaml-syntax-shims.1.0.0 ocamlfind.1.9.8 ocplib-endian.1.2 pbrt.3.1.1 psq.0.2.1 result.1.5 seq.base stdlib-shims.0.3.0 stringext.1.6.0 uri.4.4.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 grpc.dev grpc-lwt.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.22.2-46-gf44c8d388fc [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]
- v3.22.2-49-g5ccb1eb14d7 [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]
- v20251016-156-ge9635f59514 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20251016-159-gb1c6adeedf5 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20251016-155-geff968f25d3 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59604 distinct packages available
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[grpc.dev] synchronised (file:///src)
[grpc-lwt.dev] synchronised (file:///src)
[h2.dev] synchronised (no changes)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml is already installed (current version is 5.4.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
2025-10-18 18:04.43 ---> saved as "7b8fbfa870c84bfdbaa1ee2132fbdd8345d629bf9a876f43d9a3bd9586dc09f2"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[h2.dev] synchronised (no changes)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml is already installed (current version is 5.4.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 24 packages
- install angstrom 0.16.1
- install base-bytes base
- install base64 3.5.2
- install bigstringaf 0.10.0
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.20.2
- install dune-configurator 3.20.2
- install faraday 0.8.2
- install h2 dev (pinned)
- install hpack 0.13.0
- install httpaf 0.7.1
- install lwt 5.9.2
- install ocaml-protoc 3.1.1
- install ocaml-syntax-shims 1.0.0
- install ocamlfind 1.9.8
- install ocplib-endian 1.2
- install pbrt 3.1.1
- install psq 0.2.1
- install result 1.5
- install seq base
- install stdlib-shims 0.3.0
- install stringext 1.6.0
- install uri 4.4.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1 (cached)
-> retrieved base64.3.5.2 (cached)
-> retrieved bigstringaf.0.10.0 (cached)
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved faraday.0.8.2 (cached)
-> retrieved hpack.0.13.0 (cached)
-> retrieved httpaf.0.7.1 (cached)
-> retrieved lwt.5.9.2 (cached)
-> retrieved h2.dev (no changes)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved psq.0.2.1 (cached)
-> retrieved result.1.5 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved stringext.1.6.0 (cached)
-> retrieved ocaml-protoc.3.1.1, pbrt.3.1.1 (https://opam.ocaml.org/cache)
-> retrieved uri.4.4.0 (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2 (cached)
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed dune.3.20.2
-> installed base64.3.5.2
-> installed result.1.5
-> installed stringext.1.6.0
-> installed csexp.1.5.2
-> installed ocaml-syntax-shims.1.0.0
-> installed psq.0.2.1
-> installed stdlib-shims.0.3.0
-> installed cppo.1.8.0
-> installed ocplib-endian.1.2
-> installed pbrt.3.1.1
-> installed dune-configurator.3.20.2
-> installed ocaml-protoc.3.1.1
-> installed bigstringaf.0.10.0
-> installed faraday.0.8.2
-> installed angstrom.0.16.1
-> installed httpaf.0.7.1
-> installed hpack.0.13.0
-> installed lwt.5.9.2
[ERROR] The compilation of h2.dev failed at "dune build -p h2 -j 71".
-> installed uri.4.4.0
#=== ERROR while compiling h2.dev =============================================#
# context 2.4.1 | linux/x86_64 | ocaml-base-compiler.5.4.0 | pinned(git+https://github.com/anmonteiro/ocaml-h2#7df18604ae389e3151f79e2be5dfd4278d4377fb#7df18604ae389e3151f79e2be5dfd4278d4377fb)
# path ~/.opam/5.4/.opam-switch/build/h2.dev
# command ~/.opam/5.4/bin/dune build -p h2 -j 71
# exit-code 1
# env-file ~/.opam/log/h2-1-78ea9a.env
# output-file ~/.opam/log/h2-1-78ea9a.out
### output ###
# (cd _build/default && /home/opam/.opam/5.4/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I lib/.h2.objs/byte -I /home/opam/.opam/5.4/lib/angstrom -I /home/opam/.opam/5.4/lib/base64 -I /home/opam/.opam/5.4/lib/bigstringaf -I /home/opam/.opam/5.4/lib/faraday -I /home/opam/.opam/5.4/lib/hpack -I /home/opam/.opam/5.4/lib/httpaf -I /home/opam/.opam/5.4/lib/psq -I /home/opam/.opam/5.4/lib/result -I /home/opam/.opam/5.4/lib/seq -no-alias-deps -open H2__ -o lib/.h2.objs/byte/h2__Scheduler.cmo -c -impl lib/scheduler.ml)
# File "lib/scheduler.ml", lines 34-40, characters 10-6:
# 34 | ..........Hashtbl.MakeSeeded (struct
# 35 | type t = Stream_identifier.t
# 36 |
# 37 | let equal = Stream_identifier.( === )
# 38 |
# 39 | let hash i k = Hashtbl.seeded_hash i k
# 40 | end)
# Error: Modules do not match:
# sig
# type t = H2__.Stream_identifier.t
# val equal : Int32.t -> Int32.t -> bool
# val hash : int -> 'a -> int
# end
# is not included in Hashtbl.SeededHashedType
# The value seeded_hash is required but not provided
# File "hashtbl.mli", line 440, characters 4-36: Expected declaration
<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build h2 dev
+-
+- The following changes have been performed
| - install angstrom 0.16.1
| - install base-bytes base
| - install base64 3.5.2
| - install bigstringaf 0.10.0
| - install cppo 1.8.0
| - install csexp 1.5.2
| - install dune 3.20.2
| - install dune-configurator 3.20.2
| - install faraday 0.8.2
| - install hpack 0.13.0
| - install httpaf 0.7.1
| - install lwt 5.9.2
| - install ocaml-protoc 3.1.1
| - install ocaml-syntax-shims 1.0.0
| - install ocamlfind 1.9.8
| - install ocplib-endian 1.2
| - install pbrt 3.1.1
| - install psq 0.2.1
| - install result 1.5
| - install seq base
| - install stdlib-shims 0.3.0
| - install stringext 1.6.0
| - install uri 4.4.0
+-
The former state can be restored with:
/usr/bin/opam switch import "/home/opam/.opam/5.4/.opam-switch/backup/state-20251018180444.export"
# To update the current shell environment, run: eval $(opam env)
"/usr/bin/env" "bash" "-c" "opam install $DEPS" failed with exit status 31
2025-10-18 18:06.36: Job failed: Failed: Build failed