2025-07-31 07:25.39: New job: test ygrek/ocurl https://github.com/ygrek/ocurl.git#refs/heads/remove-ocurl (f31cdb042a734e243a68cf4cb994a020a3119fb1) (linux-x86_64:alpine-3.21-4.14_opam-2.4)
Base: ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/ygrek/ocurl.git" -b "remove-ocurl" && cd "ocurl" && git reset --hard f31cdb04
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d
# alpine-3.21-4.14_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 b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 curl_lwt.opam curl.opam ./
RUN opam pin add -yn curl_lwt.dev './' && \
opam pin add -yn curl.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="base-bigarray.base base-bytes.base base-threads.base base-unix.base conf-libcurl.2 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 lwt.5.9.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 ocplib-endian.1.2"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y curl_lwt.dev curl.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-31 07:25.39: Using cache hint "ygrek/ocurl-ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d-alpine-3.21-4.14_opam-2.4-f5371ef64e79c73304f9e41cc9dc2d80"
2025-07-31 07:25.39: Using OBuilder spec:
((from ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d)
(comment alpine-3.21-4.14_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 b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src curl_lwt.opam curl.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn curl_lwt.dev './' && \
\nopam pin add -yn curl.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "base-bigarray.base base-bytes.base base-threads.base base-unix.base conf-libcurl.2 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 lwt.5.9.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 ocplib-endian.1.2")
(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 curl_lwt.dev curl.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-31 07:25.39: Waiting for resource in pool OCluster
2025-07-31 07:46.10: Waiting for worker…
2025-07-31 07:48.54: Got resource from pool OCluster
Building on asteria.caelum.ci.dev
All commits already cached
HEAD is now at f31cdb0 Remove the ocurl package definition
(from ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d)
Unable to find image 'ocaml/opam:alpine-3.21-ocaml-4.14@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d' locally
docker.io/ocaml/opam@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d: Pulling from ocaml/opam
dd574f0c3492: Already exists
3dc488c2f010: Pulling fs layer
deaee56918b9: Pulling fs layer
ca3b7aa1d2ce: Pulling fs layer
efc13b06f5a5: Pulling fs layer
deaee56918b9: Waiting
ca3b7aa1d2ce: Waiting
3dc488c2f010: Waiting
3dc488c2f010: Verifying Checksum
3dc488c2f010: Download complete
3dc488c2f010: Pull complete
deaee56918b9: Verifying Checksum
deaee56918b9: Download complete
deaee56918b9: Pull complete
ca3b7aa1d2ce: Verifying Checksum
ca3b7aa1d2ce: Pull complete
efc13b06f5a5: Verifying Checksum
efc13b06f5a5: Pull complete
Digest: sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d
Status: Downloaded newer image for ocaml/opam@sha256:acda27c7e9ff770f0e09f53d730162c8ebf0f21b0ddc57f73b4cd1cf27c4af6d
2025-07-31 07:48.55 ---> using "ea47f485ac5e3de6005676b139eead37b27580d3656da4cbc3286dafdec05f07" from cache
/: (comment alpine-3.21-4.14_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-07-31 07:48.55 ---> using "acd447e86e07a06b6cfdfeec91ba1182fdea45fe8ef8b02a1b8c31ad16443308" 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-07-31 07:48.55 ---> using "f46328e537971876b5ef1defadb0e9bc780150317475535320804e23c1f8948d" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-142-generic
The OCaml toplevel, version 4.14.2
2.4.1
2025-07-31 07:48.55 ---> using "48f4fffb369b47f483a7082f3e68ac2d5360643c397270b95cd1de8a15cb3eb1" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-07-31 07:48.55 ---> using "16fc103b2993579a9ebbd8fa6e532d679262e51eab4d0a26c4545d855eb0c490" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u"))
b8021439f8 Merge pull request #28261 from kit-ty-kate/deploy-fix-25819
<><> 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-07-31 07:48.55 ---> using "067f9c3ce82aaf69d2e2db3b636adbddfa7594f82a34c4562332560d492cb05f" from cache
/src: (copy (src curl_lwt.opam curl.opam) (dst ./))
2025-07-31 07:48.55 ---> saved as "328aa104805d68dd6e194f939aaf5ba30e34b3daa9659058eb3203e6b4c8c707"
/src: (run (network host)
(shell "opam pin add -yn curl_lwt.dev './' && \
\nopam pin add -yn curl.dev './'"))
[curl_lwt.dev] synchronised (file:///src)
curl_lwt is now pinned to file:///src (version dev)
[curl.dev] synchronised (file:///src)
curl is now pinned to file:///src (version dev)
2025-07-31 07:48.59 ---> saved as "b9eb9418347cca5751928bdf75c32f9fa46d2181ca796c9971c8d80d93c86eb9"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-07-31 07:48.59 ---> saved as "6cb0f6e5fb52d89c46448370cb2769d2eae4bfa9dc9c6968eb651c97a3ba8fed"
/src: (env DEPS "base-bigarray.base base-bytes.base base-threads.base base-unix.base conf-libcurl.2 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 lwt.5.9.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 ocplib-endian.1.2")
/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 curl_lwt.dev curl.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/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.21.4-24-g2d13e6f2c9c [https://dl-cdn.alpinelinux.org/alpine/v3.21/main]
- v3.21.4-22-gaa6bf2dd9cc [https://dl-cdn.alpinelinux.org/alpine/v3.21/community]
- v3.23.0_alpha20250612-3599-g383c9b1a8b9 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v3.23.0_alpha20250612-3606-gb77e5951003 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v3.23.0_alpha20250612-3607-g3d7ab9eb467 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59233 distinct packages available
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[curl.dev] synchronised (file:///src)
[curl_lwt.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).
The following system packages will first need to be installed:
curl-dev
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
+ /usr/bin/sudo "apk" "add" "curl-dev"
- (1/12) Installing brotli (1.1.0-r2)
- (2/12) Installing brotli-dev (1.1.0-r2)
- (3/12) Installing c-ares-dev (1.34.5-r0)
- (4/12) Installing libidn2-dev (2.3.7-r0)
- (5/12) Installing libpsl-utils (0.21.5-r3)
- (6/12) Installing libpsl-dev (0.21.5-r3)
- (7/12) Installing nghttp2-dev (1.64.0-r0)
- (8/12) Installing openssl-dev (3.3.4-r0)
- (9/12) Installing zlib-dev (1.3.1-r2)
- (10/12) Installing zstd (1.5.6-r2)
- (11/12) Installing zstd-dev (1.5.6-r2)
- (12/12) Installing curl-dev (8.12.1-r1)
- Executing busybox-1.37.0-r12.trigger
- OK: 311 MiB in 113 packages
2025-07-31 07:49.11 ---> saved as "7b69566e3d1cee0738de08c10281925cda66059ffb681e5ee23ece26571a4425"
/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 9 packages
- install base-bytes base
- install conf-libcurl 2
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.19.1
- install dune-configurator 3.19.1
- install lwt 5.9.1
- install ocamlfind 1.9.8
- install ocplib-endian 1.2
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> installed conf-libcurl.2
-> retrieved lwt.5.9.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved dune.3.19.1, dune-configurator.3.19.1 (cached)
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed dune.3.19.1
-> installed csexp.1.5.2
-> installed cppo.1.8.0
-> installed ocplib-endian.1.2
-> installed dune-configurator.3.19.1
-> installed lwt.5.9.1
Done.
# To update the current shell environment, run: eval $(opam env)
2025-07-31 07:49.51 ---> saved as "047da12ae255a5f0f6fa536fd775e2bfaed40bb60ef74b949cadcd4f698e0a17"
/src: (copy (src .) (dst /src))
2025-07-31 07:49.52 ---> saved as "b8a07092c63e16dc5e5c94eb79fac24cea6330f32e22d5f41d885cdb6b933608"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
File "examples/dune", line 32, characters 18-25:
32 | (preprocess (pps lwt_ppx))
^^^^^^^
Error: Library "lwt_ppx" not found.
-> required by
_build/default/examples/.merlin-conf/exe-test_lwt-0dcf2dfa4ae9573d2c95196fdb3fad76
-> required by alias examples/check
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w +a-4-42-69-70 -warn-error -a+31 -g -bin-annot -I examples/.ocurl.eobjs/byte -I .curl.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o examples/.ocurl.eobjs/byte/dune__exe__Ocurl.cmo -c -impl examples/ocurl.ml)
File "examples/ocurl.ml", line 21, characters 4-14:
21 | let getContent connection url =
^^^^^^^^^^
Warning 32 [unused-value-declaration]: unused value getContent.
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w @1..3@5..28@30..39@43@46..47@49..57@61..62-40 -strict-sequence -strict-formats -short-paths -keep-locs -w +a-4-42-69-70 -warn-error -a+31 -g -bin-annot -I examples/.opar.eobjs/byte -I /home/opam/.opam/4.14/lib/ocaml/threads -I .curl.objs/byte -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o examples/.opar.eobjs/byte/dune__exe__Opar.cmo -c -impl examples/opar.ml)
File "examples/opar.ml", line 9, characters 4-17:
9 | let show_progress fname conn =
^^^^^^^^^^^^^
Warning 32 [unused-value-declaration]: unused value show_progress.
(cd _build/default && /usr/bin/gcc -DHAVE_CONFIG_H -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -Wall -fdiagnostics-color=always -Wall -Wno-deprecated-declarations -g -I /home/opam/.opam/4.14/lib/ocaml -o curl-helper.o -c curl-helper.c)
curl-helper.c: In function 'handle_POSTREDIR':
curl-helper.c:3334:51: warning: passing argument 2 of 'caml_convert_flag_list' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
3334 | long bitmask = caml_convert_flag_list(option, curlPostRedir_table);
| ^~~~~~~~~~~~~~~~~~~
In file included from curl-helper.c:29:
/home/opam/.opam/4.14/lib/ocaml/caml/alloc.h:60:47: note: expected 'int *' but argument is of type 'const int *'
60 | CAMLextern int caml_convert_flag_list (value, int *);
| ^~~~~
curl-helper.c: In function 'convert_extra_fds':
curl-helper.c:4868:72: warning: passing argument 2 of 'caml_convert_flag_list' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
4868 | extra_fds[i].events = caml_convert_flag_list(Field(v_extra_fd, 1), curlWait_table);
| ^~~~~~~~~~~~~~
/home/opam/.opam/4.14/lib/ocaml/caml/alloc.h:60:47: note: expected 'int *' but argument is of type 'const int *'
60 | CAMLextern int caml_convert_flag_list (value, int *);
| ^~~~~
(cd _build/default/examples && ./test_memory_leaks.exe)
RSS 4513792 -> 6946816 OK
RSS 6946816 -> 7426048 OK
RSS 7426048 -> 7426048 OK
"/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-07-31 07:49.56: Job failed: Failed: Build failed