2025-07-01 10:46.02: New job: test robur-coop/ocaml-h1 https://github.com/robur-coop/ocaml-h1.git#refs/pull/8/head (7e26a196ceed2b2bd17184f050ab908ce411fb72) (linux-x86_64:debian-12-4.14+flambda_opam-2.3)
Base: ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:71a1afa039fe06fb487d20309f301b01efa00275c880351e8437783088c97ced
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/robur-coop/ocaml-h1.git" && cd "ocaml-h1" && git fetch origin "refs/pull/8/head" && git reset --hard 7e26a196
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:71a1afa039fe06fb487d20309f301b01efa00275c880351e8437783088c97ced
# debian-12-4.14+flambda_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.3 /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 a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 h1.opam h1-lwt-unix.opam ./
RUN opam pin add -yn h1.dev './' && \
opam pin add -yn h1-lwt-unix.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="alcotest.1.9.0 angstrom.0.16.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 cmdliner.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 faraday.0.8.2 faraday-lwt.0.8.2 faraday-lwt-unix.0.8.2 fmt.0.10.0 httpun-types.0.2.0 lwt.5.9.1 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 seq.base sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.0.8 uutf.1.0.4"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y h1.dev h1-lwt-unix.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-07-01 10:46.02: Using cache hint "robur-coop/ocaml-h1-ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:71a1afa039fe06fb487d20309f301b01efa00275c880351e8437783088c97ced-debian-12-4.14+flambda_opam-2.3-a71d1b7559088dc2462122f385b82cca"
2025-07-01 10:46.02: Using OBuilder spec:
((from ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:71a1afa039fe06fb487d20309f301b01efa00275c880351e8437783088c97ced)
(comment debian-12-4.14+flambda_opam-2.3)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.3 /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 a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src h1.opam h1-lwt-unix.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn h1.dev './' && \
\nopam pin add -yn h1-lwt-unix.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "alcotest.1.9.0 angstrom.0.16.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 cmdliner.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 faraday.0.8.2 faraday-lwt.0.8.2 faraday-lwt-unix.0.8.2 fmt.0.10.0 httpun-types.0.2.0 lwt.5.9.1 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 seq.base sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.0.8 uutf.1.0.4")
(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.3 --depext-only -y h1.dev h1-lwt-unix.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-07-01 10:46.02: Waiting for resource in pool OCluster
2025-07-01 10:46.02: Waiting for worker…
2025-07-01 10:46.02: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
All commits already cached
HEAD is now at 7e26a19 add Websocket.Handshake to handle headers
(from ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:71a1afa039fe06fb487d20309f301b01efa00275c880351e8437783088c97ced)
2025-07-01 10:46.03 ---> using "a5c4e1af52967ce6c46f0a49a956916486bb249765ab26d2974bf2c7d955d643" from cache
/: (comment debian-12-4.14+flambda_opam-2.3)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (shell "sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam"))
2025-07-01 10:46.03 ---> using "5082b78f6a9dd4aecd045e78466146be863d84725ce362fe530f59add8681f71" 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 development 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-07-01 10:46.03 ---> using "97a640afaa3ecec8283c0093e4cb5b7661ac8b70e0111b325df148cf4fd51792" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-134-generic
The OCaml toplevel, version 4.14.2
2.3.0
2025-07-01 10:46.03 ---> using "e4be094968430acc0f92c165d2f448604c68942168b56ef4e3c88865d5e24368" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-07-01 10:46.03 ---> using "78bf212dc77c0ee5c6a56facaa9d87d5532067d19985b8630fb2fa0e48378e42" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u"))
a28eb8a148 Merge pull request #28017 from maiste/release-dune-3.19.1
<><> 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, 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-07-01 10:46.26 ---> saved as "47b029b60eb10506169c7a168fe40dc0a36b9816e1aea0a561d3fae5ba1b6bb1"
/src: (copy (src h1.opam h1-lwt-unix.opam) (dst ./))
2025-07-01 10:46.26 ---> saved as "3bbd8a25ef6ddff729c66e81e1cd5511f5128c7d50270bf6c773a25c58fec1f4"
/src: (run (network host)
(shell "opam pin add -yn h1.dev './' && \
\nopam pin add -yn h1-lwt-unix.dev './'"))
[h1.dev] synchronised (file:///src)
h1 is now pinned to file:///src (version dev)
[h1-lwt-unix.dev] synchronised (file:///src)
h1-lwt-unix is now pinned to file:///src (version dev)
2025-07-01 10:46.29 ---> saved as "1863706e30ace4b15a23fb6c508016196e9fc31145e4d63dcc37b0f0b0f6e4dc"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-07-01 10:46.29 ---> saved as "8a8246a47da4f6d43c2b97cd56527f7263bff8644ca4b763cf974c7e048fda8e"
/src: (env DEPS "alcotest.1.9.0 angstrom.0.16.1 astring.0.8.5 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 cmdliner.1.3.0 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 faraday.0.8.2 faraday-lwt.0.8.2 faraday-lwt-unix.0.8.2 fmt.0.10.0 httpun-types.0.2.0 lwt.5.9.1 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 re.1.12.0 seq.base sexplib0.v0.16.0 stdio.v0.16.0 stdlib-shims.0.3.0 topkg.1.0.8 uutf.1.0.4")
/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.3 --depext-only -y h1.dev h1-lwt-unix.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bookworm InRelease
- Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
- Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
- Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [270 kB]
- Fetched 373 kB in 6s (67.7 kB/s)
- Reading package lists...
-
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[h1.dev] synchronised (file:///src)
[h1-lwt-unix.dev] synchronised (file:///src)
[NOTE] Package ocaml-variants is already installed (current version is 4.14.2+options).
[NOTE] Package ocaml-config is already installed (current version is 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-07-01 10:46.44 ---> saved as "45bcee0443bd9b4522f9840ca4dac68adb72b0e52883eb9da90c2cdc446b49c2"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-variants is already installed (current version is 4.14.2+options).
[NOTE] Package ocaml-config is already installed (current version is 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 29 packages
- install alcotest 1.9.0
- install angstrom 0.16.1
- install astring 0.8.5
- install base v0.16.4
- install base-bytes base
- install base64 3.5.1
- install bigstringaf 0.10.0
- install cmdliner 1.3.0
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.19.1
- install dune-configurator 3.19.1
- install faraday 0.8.2
- install faraday-lwt 0.8.2
- install faraday-lwt-unix 0.8.2
- install fmt 0.10.0
- install httpun-types 0.2.0
- install lwt 5.9.1
- install ocaml-syntax-shims 1.0.0
- install ocamlbuild 0.16.1
- install ocamlfind 1.9.8
- install ocplib-endian 1.2
- install re 1.12.0
- install seq base
- install sexplib0 v0.16.0
- install stdio v0.16.0
- install stdlib-shims 0.3.0
- install topkg 1.0.8
- install uutf 1.0.4
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved astring.0.8.5 (cached)
-> retrieved angstrom.0.16.1 (cached)
-> retrieved base64.3.5.1 (cached)
-> retrieved alcotest.1.9.0 (cached)
-> retrieved base.v0.16.4 (cached)
-> retrieved bigstringaf.0.10.0 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved faraday.0.8.2, faraday-lwt.0.8.2, faraday-lwt-unix.0.8.2 (cached)
-> retrieved fmt.0.10.0 (cached)
-> retrieved lwt.5.9.1 (cached)
-> retrieved httpun-types.0.2.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved re.1.12.0 (cached)
-> retrieved sexplib0.v0.16.0 (cached)
-> retrieved stdio.v0.16.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved topkg.1.0.8 (cached)
-> retrieved dune.3.19.1, dune-configurator.3.19.1 (cached)
-> installed cmdliner.1.3.0
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed topkg.1.0.8
-> installed uutf.1.0.4
-> installed fmt.0.10.0
-> installed astring.0.8.5
-> installed dune.3.19.1
-> installed stdlib-shims.0.3.0
-> installed csexp.1.5.2
-> installed base64.3.5.1
-> installed sexplib0.v0.16.0
-> installed ocaml-syntax-shims.1.0.0
-> installed re.1.12.0
-> installed cppo.1.8.0
-> installed ocplib-endian.1.2
-> installed dune-configurator.3.19.1
-> installed alcotest.1.9.0
-> installed bigstringaf.0.10.0
-> installed faraday.0.8.2
-> installed angstrom.0.16.1
-> installed httpun-types.0.2.0
-> installed lwt.5.9.1
-> installed faraday-lwt.0.8.2
-> installed faraday-lwt-unix.0.8.2
-> installed base.v0.16.4
-> installed stdio.v0.16.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-07-01 10:47.43 ---> saved as "01129a486c9a850a40bebdcf99d8b9fe19a9fc0e5ab075d136a13cfc0e798e5d"
/src: (copy (src .) (dst /src))
2025-07-01 10:47.43 ---> saved as "d7ec319d4d0375475a088db89f10075ba87be81f518ed93667cfcb1dcd11d100"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/lib_test && ./test_h1.exe)
Testing `h1 unit tests'.
This run has ID `IMEE9588'.
[OK] websocket 0 parsing ping frame.
[OK] websocket 1 parsing close frame.
[OK] websocket 2 parsing text frame.
[OK] version 0 compare.
[OK] version 1 to_string.
[OK] method 0 is_safe.
[OK] method 1 is_cacheable.
[OK] method 2 is_idempotent.
[OK] iovec 0 lengthv.
[OK] iovec 1 shiftv.
[OK] iovec 2 shiftv raises .
[OK] headers 0 remove.
[OK] headers 1 replace.
[OK] headers 2 CI equal.
[OK] request 0 parse valid.
[OK] request 1 parse invalid errors.
[OK] request 2 body length.
[OK] response 0 parse valid.
[OK] response 1 parse invalid error.
[OK] response 2 body length.
[OK] client connection 0 GET.
[OK] client connection 1 send streaming body.
[OK] client connection 2 Response EOF.
[OK] client connection 3 Response header order preserved.
[OK] client connection 4 report_exn.
[OK] client connection 5 input_shrunk.
[OK] client connection 6 failed response parse.
[OK] client connection 7 schedule read with data availa...
[OK] server connection 0 initial reader state.
[OK] server connection 1 shutdown reader closed.
[OK] server connection 2 single GET.
[OK] server connection 3 multiple GETs.
[OK] server connection 4 asynchronous response.
[OK] server connection 5 echo POST.
[OK] server connection 6 streaming response.
[OK] server connection 7 asynchronous streaming response.
[OK] server connection 8 asynchronous streaming respons...
[OK] server connection 9 empty fixed streaming response.
[OK] server connection 10 empty chunked streaming response.
[OK] server connection 11 connection error.
[OK] server connection 12 synchronous error, synchronous...
[OK] server connection 13 synchronous error, asynchronou...
[OK] server connection 14 asynchronous error, synchronou...
[OK] server connection 15 asynchronous error, asynchrono...
[OK] server connection 16 error while parsing.
[OK] server connection 17 error before read.
[OK] server connection 18 error left unhandled.
[OK] server connection 19 chunked encoding.
[OK] server connection 20 chunked encoding for error.
[OK] server connection 21 blocked write on chunked encod...
[OK] server connection 22 body writing when socket closes.
[OK] server connection 23 writer unexpected eof.
[OK] server connection 24 input shrunk.
[OK] server connection 25 failed request parse.
[OK] server connection 26 bad request.
[OK] server connection 27 multiple requests in single read.
[OK] server connection 28 multiple async requests in sin...
[OK] server connection 29 multiple requests with connect...
[OK] server connection 30 multiple requests with eof.
[OK] server connection 31 parse failure after checkpoint.
[OK] server connection 32 parse failure at eof.
[OK] server connection 33 response finished before body ...
[OK] server connection 34 shutdown in request handler.
[OK] server connection 35 schedule read with data availa...
[OK] server connection 36 test upgrades.
[OK] server connection 37 test upgrade where server does...
[OK] server connection 38 test upgrades.
[OK] server connection 39 test upgrade where server does...
[OK] server connection 40 upgrade.
[OK] server connection 41 upgrade where server does not ...
[OK] server connection 42 upgrade with initial data.
[OK] server connection 43 upgrade with bad body length.
[OK] server connection 44 asynchronous upgrade.
[OK] server connection 45 upgrade interrupted by shutdown.
Full test results in `/src/_build/default/lib_test/_build/_tests/h1 unit tests'.
Test Successful in 0.219s. 74 tests run.
2025-07-01 10:47.45 ---> saved as "6f6917610b8a956a363036aeaef9e7fb60fc08a701f22b447e9ecf4bcac2259c"
Job succeeded
2025-07-01 10:47.45: Job succeeded