(for PR #29937)

2026-05-24 22:43.54: New job: build caqti-dynload.2.3.1, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29937/head (699c568442d9080169b06a0acf74464211d7c52c)
                              on fedora-42-ocaml-5.4/amd64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29937/head" && git reset --hard 699c5684
git fetch origin master
git merge --no-edit 856df280428c158a5bb0b3afce1bec956b10ae6f
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:fedora-42-ocaml-5.4@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn caqti-dynload.2.3.1 2.3.1
RUN opam reinstall caqti-dynload.2.3.1; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"fedora-42\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'caqti-dynload.2.3.1' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2026-05-24 22:43.54: Using cache hint "ocaml/opam:fedora-42-ocaml-5.4@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82-caqti-dynload.2.3.1-699c568442d9080169b06a0acf74464211d7c52c"
2026-05-24 22:43.54: Using OBuilder spec:
((from ocaml/opam:fedora-42-ocaml-5.4@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
 (run (network host)
      (shell "opam init --reinit --config .opamrc-sandbox -ni"))
 (run (shell "opam option solver=builtin-0install && opam config report"))
 (env OPAMDOWNLOADJOBS 1)
 (env OPAMERRLOGLEN 0)
 (env OPAMPRECISETRACKING 1)
 (env CI true)
 (env OPAM_REPO_CI true)
 (run (shell "rm -rf opam-repository/"))
 (copy (src .) (dst opam-repository/))
 (run (shell "opam repository set-url --strict default opam-repository/"))
 (run (network host)
      (shell "opam update --depexts || true"))
 (run (shell "opam pin add -k version -yn caqti-dynload.2.3.1 2.3.1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall caqti-dynload.2.3.1;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"fedora-42\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'caqti-dynload.2.3.1' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-05-24 22:43.54: Waiting for resource in pool OCluster
2026-05-24 22:46.28: Waiting for worker…
2026-05-24 22:49.36: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
All commits already cached
HEAD is now at 856df28042 Merge pull request #29946 from hannesm/release-mirage-net-solo5-v0.8.1
Merge made by the 'ort' strategy.
 packages/caqti-async/caqti-async.2.3.1/opam        | 41 +++++++++++++
 .../caqti-driver-mariadb.2.3.1/opam                | 34 +++++++++++
 .../caqti-driver-pgx/caqti-driver-pgx.2.3.1/opam   | 33 +++++++++++
 .../caqti-driver-postgresql.2.3.1/opam             | 38 ++++++++++++
 .../caqti-driver-sqlite3.2.3.1/opam                | 33 +++++++++++
 packages/caqti-dynload/caqti-dynload.2.3.1/opam    | 41 +++++++++++++
 packages/caqti-eio/caqti-eio.2.3.1/opam            | 37 ++++++++++++
 packages/caqti-lwt/caqti-lwt.2.3.1/opam            | 39 ++++++++++++
 packages/caqti-mirage/caqti-mirage.2.3.1/opam      | 43 ++++++++++++++
 .../caqti-tls-async/caqti-tls-async.2.3.1/opam     | 36 +++++++++++
 packages/caqti-tls-eio/caqti-tls-eio.2.3.1/opam    | 34 +++++++++++
 packages/caqti-tls-lwt/caqti-tls-lwt.2.3.1/opam    | 35 +++++++++++
 packages/caqti-tls-miou/caqti-tls-miou.2.3.1/opam  | 34 +++++++++++
 packages/caqti-tls/caqti-tls.2.3.1/opam            | 40 +++++++++++++
 .../caqti-type-calendar.2.3.1/opam                 | 31 ++++++++++
 packages/caqti/caqti.2.3.1/opam                    | 69 ++++++++++++++++++++++
 16 files changed, 618 insertions(+)
 create mode 100644 packages/caqti-async/caqti-async.2.3.1/opam
 create mode 100644 packages/caqti-driver-mariadb/caqti-driver-mariadb.2.3.1/opam
 create mode 100644 packages/caqti-driver-pgx/caqti-driver-pgx.2.3.1/opam
 create mode 100644 packages/caqti-driver-postgresql/caqti-driver-postgresql.2.3.1/opam
 create mode 100644 packages/caqti-driver-sqlite3/caqti-driver-sqlite3.2.3.1/opam
 create mode 100644 packages/caqti-dynload/caqti-dynload.2.3.1/opam
 create mode 100644 packages/caqti-eio/caqti-eio.2.3.1/opam
 create mode 100644 packages/caqti-lwt/caqti-lwt.2.3.1/opam
 create mode 100644 packages/caqti-mirage/caqti-mirage.2.3.1/opam
 create mode 100644 packages/caqti-tls-async/caqti-tls-async.2.3.1/opam
 create mode 100644 packages/caqti-tls-eio/caqti-tls-eio.2.3.1/opam
 create mode 100644 packages/caqti-tls-lwt/caqti-tls-lwt.2.3.1/opam
 create mode 100644 packages/caqti-tls-miou/caqti-tls-miou.2.3.1/opam
 create mode 100644 packages/caqti-tls/caqti-tls.2.3.1/opam
 create mode 100644 packages/caqti-type-calendar/caqti-type-calendar.2.3.1/opam
 create mode 100644 packages/caqti/caqti.2.3.1/opam

(from ocaml/opam:fedora-42-ocaml-5.4@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82)
Unable to find image 'ocaml/opam:fedora-42-ocaml-5.4@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82' locally
docker.io/ocaml/opam@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82: Pulling from ocaml/opam
accf5bbc0c67: Already exists
416e4a8866bb: Already exists
09b2fb3c52f4: Already exists
7d4fe74f60d8: Already exists
bbcb95d43ae8: Already exists
98c9e9bc3c3f: Already exists
59aec800fed7: Already exists
34843ed0e584: Already exists
424f865e9d0e: Already exists
5594cf317ecb: Already exists
7d9cba6e4af6: Already exists
f8e47f2173a6: Already exists
cde03adba68d: Already exists
d670f2c79209: Already exists
2c9204fad5a4: Already exists
2c9204fad5a4: Already exists
e6729152ebda: Already exists
38838b679ce8: Already exists
e81ed02324ae: Already exists
416e5bed9209: Already exists
4f4fb700ef54: Already exists
d97d403a554d: Already exists
120f1228e350: Already exists
5818b24e8ca2: Already exists
bf4e4b4c0901: Already exists
b31f5381f4f1: Already exists
4445c4223195: Already exists
a1a8982696e1: Already exists
7ab4ccef3cde: Already exists
8a8a38b5d8d7: Already exists
19f2332bf3a3: Already exists
a1f0867da660: Already exists
a604f4114989: Already exists
ba846e218609: Already exists
443f3df204cf: Already exists
a7adaa545c51: Already exists
d991deb45863: Already exists
1949201fd01e: Already exists
164ba39dbbe5: Already exists
747737c9c739: Pulling fs layer
a44a38da6304: Pulling fs layer
6f41ba698d88: Pulling fs layer
747737c9c739: Waiting
c27ec3e70e86: Pulling fs layer
a44a38da6304: Waiting
156fcb7225b3: Pulling fs layer
c27ec3e70e86: Waiting
6f41ba698d88: Waiting
156fcb7225b3: Waiting
747737c9c739: Verifying Checksum
747737c9c739: Download complete
6f41ba698d88: Download complete
c27ec3e70e86: Download complete
747737c9c739: Pull complete
156fcb7225b3: Download complete
a44a38da6304: Verifying Checksum
a44a38da6304: Download complete
a44a38da6304: Pull complete
6f41ba698d88: Pull complete
c27ec3e70e86: Pull complete
156fcb7225b3: Pull complete
Digest: sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82
Status: Downloaded newer image for ocaml/opam@sha256:7adf705e7bf926ec2ef1c12857c25dad4b05d4fd9695979fcbdc315d6e257b82
2026-05-24 22:49.39 ---> using "020423f3de8c8c81b44d3c905be4102f57efabdb6d0dde0a4f51c7036a87d7fd" from cache

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-05-24 22:49.39 ---> using "c36fb4e5e2457e1f8f689c09f1eb597590cb3db0f7c5c86f3a7f2f9c1b4cf546" from cache

/home/opam: (run (network host)
                 (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally 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.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.

[NOTE] The 'jobs' option was reset, its value was 1 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=1 --global
Continue? [Y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///home/opam/opam-repository
2026-05-24 22:49.39 ---> using "138d66929c504353e9bea2fe277b6a3328e8e4bfb149010d49d94749ef0cf5e6" from cache

/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version         2.5.1
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=fedora os-version=42
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 71
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {= "5.4.1"}]
# compiler-packages    ocaml-base-compiler.5.4.1, ocaml-compiler.5.4.1, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       5.4.1
2026-05-24 22:49.39 ---> using "882aaf0b203169865cd7699415074adb3a0c219939f2538e7db5072d74283e0a" from cache

/home/opam: (env OPAMDOWNLOADJOBS 1)

/home/opam: (env OPAMERRLOGLEN 0)

/home/opam: (env OPAMPRECISETRACKING 1)

/home/opam: (env CI true)

/home/opam: (env OPAM_REPO_CI true)

/home/opam: (run (shell "rm -rf opam-repository/"))
2026-05-24 22:49.39 ---> using "b71c33dceacc86e21556a8ed7610514b1e52b4519f0185accae2d917db257168" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-05-24 22:49.58 ---> saved as "6b06efdf1c36bc659047d06a2cea354d17b216d8264948024c35c8b8e9e720cf"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-05-24 22:50.13 ---> saved as "2c411e6c399889c6b818c236ac8f3b1353246094b4f24bb0f348a2ad8738981e"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/sbin/sudo "yum" "makecache"
- Updating and loading repositories:
-  Fedora 42 - x86_64 - Updates           100% |  11.2 KiB/s |  15.9 KiB |  00m01s
-  Fedora 42 - x86_64                     100% |  92.0 KiB/s |  19.0 KiB |  00m00s
- Repositories loaded.
- Metadata cache created.
2026-05-24 22:50.22 ---> saved as "555a34f8040ec774e61592c5f655fb0e4012153d4a81a6395549b18427d21d3b"

/home/opam: (run (shell "opam pin add -k version -yn caqti-dynload.2.3.1 2.3.1"))
caqti-dynload is now pinned to version 2.3.1
2026-05-24 22:50.23 ---> saved as "e2bb857440e51843afca7049d15375ca3bcc38192678c2344df53db243118eb5"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall caqti-dynload.2.3.1;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"fedora-42\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'caqti-dynload.2.3.1' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
caqti-dynload.2.3.1 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 49 packages
  - install angstrom           0.16.1         [required by caqti]
  - install asn1-combinators   0.3.2          [required by x509]
  - install base64             3.5.2          [required by x509]
  - install bigstringaf        0.10.0         [required by caqti]
  - install caqti              2.3.1          [required by caqti-dynload]
  - install caqti-dynload      2.3.1 (pinned)
  - install conf-gmp           5              [required by conf-gmp-powm-sec, zarith]
  - install conf-gmp-powm-sec  4              [required by mirage-crypto-pk]
  - install conf-pkg-config    4              [required by zarith]
  - install csexp              1.5.2          [required by dune-private-libs]
  - install digestif           1.3.0          [required by mirage-crypto-ec, kdf, mirage-crypto-pk]
  - install domain-name        0.5.0          [required by caqti]
  - install dune               3.23.1         [required by caqti-dynload]
  - install dune-configurator  3.23.1         [required by bigstringaf, mirage-crypto-ec]
  - install dune-private-libs  3.23.1         [required by dune-site]
  - install dune-site          3.23.1         [required by caqti]
  - install duration           0.3.1          [required by mirage-crypto-rng]
  - install dyn                3.23.1         [required by dune-private-libs]
  - install eqaf               0.10           [required by mirage-crypto-ec, mirage-crypto-pk]
  - install fmt                0.11.0         [required by logs, x509]
  - install fs-io              3.23.1         [required by stdune]
  - install gmap               0.3.0          [required by x509]
  - install ipaddr             5.6.2          [required by caqti]
  - install kdf                1.0.0          [required by x509]
  - install logs               0.10.0         [required by caqti]
  - install lru                0.3.1          [required by caqti]
  - install lwt-dllist         1.1.0          [required by caqti]
  - install macaddr            5.6.2          [required by ipaddr]
  - install mirage-crypto      2.1.0          [required by x509]
  - install mirage-crypto-ec   2.1.0          [required by x509]
  - install mirage-crypto-pk   2.1.0          [required by x509]
  - install mirage-crypto-rng  2.1.0          [required by x509]
  - install mtime              2.1.0          [required by caqti]
  - install ocaml-syntax-shims 1.0.0          [required by angstrom]
  - install ocamlbuild         0.16.1         [required by mtime, logs, ptime]
  - install ocamlfind          1.9.8          [required by caqti-dynload]
  - install ohex               0.2.0          [required by x509]
  - install ordering           3.23.1         [required by dyn, stdune]
  - install pp                 2.0.0          [required by dune-private-libs]
  - install psq                0.2.1          [required by lru]
  - install ptime              1.2.0          [required by caqti]
  - install seq                base           [required by psq]
  - install stdune             3.23.1         [required by dune-private-libs]
  - install stringext          1.6.0          [required by uri]
  - install top-closure        3.23.1         [required by stdune]
  - install topkg              1.1.1          [required by mtime, logs, ptime]
  - install uri                4.4.0          [required by caqti]
  - install x509               1.0.6          [required by caqti]
  - install zarith             1.14           [required by mirage-crypto-pk]

The following system packages will first need to be installed:
    gmp-devel

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run yum to install them (may need root/sudo access)
  2. Display the recommended yum command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1

+ /usr/sbin/sudo "yum" "install" "-y" "gmp-devel"
- Updating and loading repositories:
- Repositories loaded.
- Package    Arch   Version        Repository      Size
- Installing:
-  gmp-devel x86_64 1:6.3.0-4.fc42 fedora     352.3 KiB
- Installing dependencies:
-  gmp-c++   x86_64 1:6.3.0-4.fc42 fedora      27.6 KiB
- 
- Transaction Summary:
-  Installing:         2 packages
- 
- Total size of inbound packages is 193 KiB. Need to download 193 KiB.
- After this operation, 380 KiB extra will be used (install 380 KiB, remove 0 B).
- [1/2] gmp-devel-1:6.3.0-4.fc42.x86_64     0% |   0.0   B/s |  -1.0   B |  ?     
- >>> Interrupted                                                                 
- [2/2] gmp-c++-1:6.3.0-4.fc42.x86_64       0% |   0.0   B/s |  -1.0   B |  ?     
- >>> Interrupted                                                                 
- --------------------------------------------------------------------------------
- [2/2] Total                             ???% | -55.0   B/s |  -2.0   B |  00m00s
- Failed to download packages
-  Librepo error: Curl error (6): Could not resolve hostname for https://mirrors.fedoraproject.org/metalink?repo=fedora-42&arch=x86_64 [Could not resolve host: mirrors.fedoraproject.org]
[ERROR] System package install failed with exit code 1 at command:
            sudo yum install -y gmp-devel
[ERROR] These packages are still missing: gmp-devel

[NOTE] You can retry with '--assume-depexts' to skip this check, or run 'opam option depext=false' to permanently disable handling of system packages.

"/usr/bin/env" "bash" "-c" "opam reinstall caqti-dynload.2.3.1;
        res=$?;
        test "$res" != 31 && exit "$res";
        export OPAMCLI=2.0;
        build_dir=$(opam var prefix)/.opam-switch/build;
        failed=$(ls "$build_dir");
        partial_fails="";
        for pkg in $failed; do
          if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"fedora-42\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'caqti-dynload.2.3.1' && partial_fails="$partial_fails $pkg";
        done;
        test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
        exit 1" failed with exit status 10
2026-05-24 22:50.41: Job failed: Failed: Build failed
2026-05-24 22:50.41: Log analysis:
2026-05-24 22:50.41: >>> 
[ERROR] System package install failed with exit code 1 at command:
 (score = 20)
2026-05-24 22:50.41: >>> 
[ERROR] These packages are still missing: gmp-devel
 (score = 20)
2026-05-24 22:50.41: System package install failed with exit code 1 at command: