Build:
  1. 0
2025-12-11 02:46.17: New job: test sihl-email.3.0.3 with dune-build-info.3.21.0~alpha3, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29070/head (a95df9014bc79103fde668cf2adbe6680fd2f9cf)
                              on debian-13-ocaml-4.14/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/29070/head" && git reset --hard a95df901
git fetch origin master
git merge --no-edit 810e1f14b7fa6411c66a3549f4c2aff47c52fc36
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d
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 dune-build-info.3.21.0~alpha3 3.21.0~alpha3
RUN opam reinstall dune-build-info.3.21.0~alpha3; \
    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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'dune-build-info.3.21.0~alpha3' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN opam reinstall sihl-email.3.0.3; \
    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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'sihl-email.3.0.3' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN (opam reinstall --with-test sihl-email.3.0.3) || true
RUN opam reinstall --with-test --verbose sihl-email.3.0.3; \
    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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'sihl-email.3.0.3' && 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 .

2025-12-11 02:46.17: Using cache hint "ocaml/opam:debian-13-ocaml-4.14@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d-dune-build-info.3.21.0~alpha3-sihl-email.3.0.3-a95df9014bc79103fde668cf2adbe6680fd2f9cf"
2025-12-11 02:46.17: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d)
 (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 dune-build-info.3.21.0~alpha3 3.21.0~alpha3"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dune-build-info.3.21.0~alpha3;\
             \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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'dune-build-info.3.21.0~alpha3' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall sihl-email.3.0.3;\
             \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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'sihl-email.3.0.3' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (network host)
      (shell "(opam reinstall --with-test sihl-email.3.0.3) || true"))
 (run (shell  "opam reinstall --with-test --verbose sihl-email.3.0.3;\
             \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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'sihl-email.3.0.3' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2025-12-11 02:46.17: Waiting for resource in pool OCluster
2025-12-11 06:30.59: Waiting for worker…
2025-12-11 06:34.36: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
All commits already cached
Updating files:  62% (11844/19017)
Updating files:  63% (11981/19017)
Updating files:  64% (12171/19017)
Updating files:  65% (12362/19017)
Updating files:  66% (12552/19017)
Updating files:  67% (12742/19017)
Updating files:  68% (12932/19017)
Updating files:  69% (13122/19017)
Updating files:  70% (13312/19017)
Updating files:  71% (13503/19017)
Updating files:  72% (13693/19017)
Updating files:  73% (13883/19017)
Updating files:  74% (14073/19017)
Updating files:  75% (14263/19017)
Updating files:  76% (14453/19017)
Updating files:  77% (14644/19017)
Updating files:  78% (14834/19017)
Updating files:  79% (15024/19017)
Updating files:  80% (15214/19017)
Updating files:  81% (15404/19017)
Updating files:  82% (15594/19017)
Updating files:  83% (15785/19017)
Updating files:  84% (15975/19017)
Updating files:  85% (16165/19017)
Updating files:  86% (16355/19017)
Updating files:  87% (16545/19017)
Updating files:  88% (16735/19017)
Updating files:  89% (16926/19017)
Updating files:  90% (17116/19017)
Updating files:  91% (17306/19017)
Updating files:  92% (17496/19017)
Updating files:  93% (17686/19017)
Updating files:  94% (17876/19017)
Updating files:  95% (18067/19017)
Updating files:  96% (18257/19017)
Updating files:  97% (18447/19017)
Updating files:  98% (18637/19017)
Updating files:  99% (18827/19017)
Updating files: 100% (19017/19017)
Updating files: 100% (19017/19017), done.
HEAD is now at 810e1f14b7 Merge pull request #29066 from gares/release-elpi-v3.4.4
Updating 810e1f14b7..a95df9014b
Fast-forward
 .../chrome-trace/chrome-trace.3.21.0~alpha3/opam   | 41 ++++++++++++
 .../dune-action-plugin.3.21.0~alpha3/opam          | 54 ++++++++++++++++
 .../dune-build-info.3.21.0~alpha3/opam             | 47 ++++++++++++++
 .../dune-configurator.3.21.0~alpha3/opam           | 51 +++++++++++++++
 packages/dune-glob/dune-glob.3.21.0~alpha3/opam    | 44 +++++++++++++
 .../dune-private-libs.3.21.0~alpha3/opam           | 52 +++++++++++++++
 .../dune-rpc-lwt/dune-rpc-lwt.3.21.0~alpha3/opam   | 43 +++++++++++++
 packages/dune-rpc/dune-rpc.3.21.0~alpha3/opam      | 46 +++++++++++++
 packages/dune-site/dune-site.3.21.0~alpha3/opam    | 39 +++++++++++
 packages/dune/dune.3.21.0~alpha3/opam              | 75 ++++++++++++++++++++++
 packages/dyn/dyn.3.21.0~alpha3/opam                | 42 ++++++++++++
 packages/fs-io/fs-io.3.21.0~alpha3/opam            | 40 ++++++++++++
 packages/ocamlc-loc/ocamlc-loc.3.21.0~alpha3/opam  | 45 +++++++++++++
 packages/ordering/ordering.3.21.0~alpha3/opam      | 40 ++++++++++++
 packages/stdune/stdune.3.21.0~alpha3/opam          | 48 ++++++++++++++
 .../top-closure/top-closure.3.21.0~alpha3/opam     | 39 +++++++++++
 packages/xdg/xdg.3.21.0~alpha3/opam                | 41 ++++++++++++
 17 files changed, 787 insertions(+)
 create mode 100644 packages/chrome-trace/chrome-trace.3.21.0~alpha3/opam
 create mode 100644 packages/dune-action-plugin/dune-action-plugin.3.21.0~alpha3/opam
 create mode 100644 packages/dune-build-info/dune-build-info.3.21.0~alpha3/opam
 create mode 100644 packages/dune-configurator/dune-configurator.3.21.0~alpha3/opam
 create mode 100644 packages/dune-glob/dune-glob.3.21.0~alpha3/opam
 create mode 100644 packages/dune-private-libs/dune-private-libs.3.21.0~alpha3/opam
 create mode 100644 packages/dune-rpc-lwt/dune-rpc-lwt.3.21.0~alpha3/opam
 create mode 100644 packages/dune-rpc/dune-rpc.3.21.0~alpha3/opam
 create mode 100644 packages/dune-site/dune-site.3.21.0~alpha3/opam
 create mode 100644 packages/dune/dune.3.21.0~alpha3/opam
 create mode 100644 packages/dyn/dyn.3.21.0~alpha3/opam
 create mode 100644 packages/fs-io/fs-io.3.21.0~alpha3/opam
 create mode 100644 packages/ocamlc-loc/ocamlc-loc.3.21.0~alpha3/opam
 create mode 100644 packages/ordering/ordering.3.21.0~alpha3/opam
 create mode 100644 packages/stdune/stdune.3.21.0~alpha3/opam
 create mode 100644 packages/top-closure/top-closure.3.21.0~alpha3/opam
 create mode 100644 packages/xdg/xdg.3.21.0~alpha3/opam

(from ocaml/opam:debian-13-ocaml-4.14@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d' locally
docker.io/ocaml/opam@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d: Pulling from ocaml/opam
53c88f1dfeb7: Already exists
268d44a12236: Already exists
f2f36c7402e3: Already exists
9eb2778f421b: Already exists
3ca35f1ec5ed: Already exists
b08866568793: Already exists
fb0d17ce08c9: Already exists
c8db2c4fd670: Already exists
5fa8cfe8f9cb: Already exists
e7f5f7180a56: Already exists
9f66154be4d4: Already exists
f6674de6e5d4: Already exists
80eb63632584: Already exists
66f55aa69346: Already exists
d121bc397a1a: Already exists
0eff100405dd: Already exists
7d67d217736c: Already exists
ac7107dc3d00: Already exists
f01a17be3cef: Already exists
30a38827b55c: Already exists
085733096c8e: Already exists
86db5d63aa02: Already exists
4f4fb700ef54: Already exists
034a62edceac: Already exists
808c1ae36c95: Already exists
eba808bca592: Already exists
68b2bb6a330b: Already exists
9fee74853ab2: Already exists
00d667d2b4f9: Already exists
cde2288b7be2: Already exists
6e6039e741bd: Already exists
08dc627d7129: Already exists
fbbf04bee28a: Already exists
cf124fccb693: Already exists
16001ee30892: Already exists
a379ebcf721f: Already exists
c05951b4b1dd: Already exists
1238fc26ec9b: Already exists
33d5b2862e74: Already exists
6a5c5f5e740e: Already exists
f97083767ae6: Already exists
5fbf3379e3de: Pulling fs layer
fa7fd9ad7954: Pulling fs layer
c0b4ac729b41: Pulling fs layer
40482318cf81: Pulling fs layer
fa7fd9ad7954: Verifying Checksum
fa7fd9ad7954: Download complete
c0b4ac729b41: Download complete
40482318cf81: Verifying Checksum
40482318cf81: Download complete
5fbf3379e3de: Download complete
5fbf3379e3de: Pull complete
fa7fd9ad7954: Pull complete
c0b4ac729b41: Pull complete
40482318cf81: Pull complete
Digest: sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d
Status: Downloaded newer image for ocaml/opam@sha256:277168101f7d4ebc452a75f825628d280c76dd0be7d8bcb58c24a5e50fe3d10d
2025-12-11 06:34.40 ---> using "d81b3b20b9dbe813f4813251eb45f7f230344599357169e34b0d2f872bf65895" from cache

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2025-12-11 06:34.40 ---> using "4c0c738834a7be54719ab9b07c911eba51e45ad4298c42597f7d3da72b1c15d4" 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.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-12-11 06:34.40 ---> using "8bb6d27bb5f7ebe9771219e3ecd730184d5e10ab877134c11c12ee3b1a6d3b96" 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.0
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=debian os-version=13
# 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       4.14
# invariant            ["ocaml-base-compiler" {= "4.14.2"}]
# compiler-packages    ocaml-base-compiler.4.14.2, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/4.14/lib/ocaml/stublibs:/home/opam/.opam/4.14/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       4.14.2
2025-12-11 06:34.40 ---> using "35019bd57e8933485bd938828fe288c3674216a4757e13b1dac8ce6b21035ac2" 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/"))
2025-12-11 06:34.40 ---> using "e09ab9992a764acab15da9cff99e3d4d978b8a77f33714cc5d19d16d3539eb49" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2025-12-11 06:34.42 ---> using "8f784899c04798d44128ca0480da55c2b9cf6d274974843ef0505a70d687f2db" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-12-11 06:34.42 ---> using "2b089ce953d9701360553588b495e1bed1b68a44304bde1817c2d61d9d0cfb13" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian trixie InRelease
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [82.1 kB]
- Fetched 173 kB in 0s (1662 kB/s)
- Reading package lists...
- 
2025-12-11 06:34.42 ---> using "66aa292a4a8c262cd0de67bf9051bc0bb23ef81009eeb9a242c201bbf02a4d3c" from cache

/home/opam: (run (shell "opam pin add -k version -yn dune-build-info.3.21.0~alpha3 3.21.0~alpha3"))
dune-build-info is now pinned to version 3.21.0~alpha3
2025-12-11 06:34.42 ---> using "21970ee9724cdb96c93f5c46bf50c6853e25321d03541a2ab667e9b950accd58" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dune-build-info.3.21.0~alpha3;\
                        \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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'dune-build-info.3.21.0~alpha3' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
dune-build-info.3.21.0~alpha3 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 2 packages
  - install dune            3.21.0~alpha3          [required by dune-build-info]
  - install dune-build-info 3.21.0~alpha3 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.21.0~alpha3, dune-build-info.3.21.0~alpha3  (cached)
-> installed dune.3.21.0~alpha3
-> installed dune-build-info.3.21.0~alpha3
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-11 06:35.25 ---> saved as "3c733e2ae959d87a03d65f2eca1a421a1fbaf9499a486d6527286fcef8712581"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall sihl-email.3.0.3;\
                        \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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'sihl-email.3.0.3' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
sihl-email.3.0.3 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 124 packages
  - install angstrom              0.16.1             [required by mrmime, colombe, caqti]
  - install asn1-combinators      0.2.6              [required by x509]
  - install astring               0.8.5              [required by opium]
  - install base                  v0.15.1            [required by ppx_fields_conv]
  - install base-bytes            base               [required by ocplib-endian]
  - install base64                3.5.2              [required by jwto, mrmime, cohttp, etc.]
  - install bigarray-compat       1.1.0              [required by cstruct]
  - install bigstringaf           0.10.0             [required by sendmail, caqti]
  - install bos                   0.2.1              [required by sihl]
  - install bstr                  0.0.3              [required by mrmime]
  - install ca-certs              0.2.3              [required by letters]
  - install caqti                 1.9.0              [required by sihl]
  - install caqti-lwt             1.9.0              [required by sihl]
  - install cmdliner              1.3.0              [required by cohttp-lwt-unix]
  - install cohttp                6.0.0              [required by cohttp-lwt-unix]
  - install cohttp-lwt            6.0.0              [required by cohttp-lwt-unix]
  - install cohttp-lwt-unix       6.0.0              [required by sihl-email]
  - install coin                  0.1.5              [required by rosetta]
  - install colombe               0.8.1              [required by letters]
  - install conduit               6.2.3              [required by conduit-lwt]
  - install conduit-lwt           6.2.3              [required by cohttp-lwt-unix]
  - install conduit-lwt-unix      6.2.3              [required by cohttp-lwt-unix]
  - install conf-gmp              5                  [required by zarith, conf-gmp-powm-sec]
  - install conf-gmp-powm-sec     4                  [required by mirage-crypto-pk]
  - install conf-libev            4-13               [required by opium]
  - install conf-libssl           4                  [required by ssl]
  - install conf-pkg-config       4                  [required by conf-libssl]
  - install conformist            0.8.1              [required by sihl]
  - install containers            3.16               [required by sihl]
  - install cppo                  1.8.0              [required by caqti]
  - install cpuid                 0.1.2              [required by nocrypto]
  - install csexp                 1.5.2              [required by dune-configurator]
  - install cstruct               6.0.1              [required by sihl]
  - install cstruct-lwt           6.0.1              [required by nocrypto]
  - install digestif              1.3.0              [required by jwto]
  - install domain-name           0.5.0              [required by x509, ipaddr, tls]
  - install dune-configurator     3.21.0~alpha3      [required by containers]
  - install duration              0.2.1              [required by mirage-crypto-rng-lwt]
  - install either                1.0.0              [required by containers]
  - install emile                 1.1                [required by colombe, mrmime]
  - install eqaf                  0.9                [required by digestif]
  - install faraday               0.8.2              [required by httpaf]
  - install faraday-lwt           0.8.2              [required by faraday-lwt-unix]
  - install faraday-lwt-unix      0.8.2              [required by httpaf-lwt-unix]
  - install fieldslib             v0.15.0            [required by ppx_fields_conv]
  - install fmt                   0.11.0             [required by letters, cohttp-lwt-unix, sihl]
  - install fpath                 0.7.3              [required by letters]
  - install gmap                  0.3.0              [required by x509]
  - install hkdf                  1.0.4 (deprecated) [required by tls]
  - install hmap                  0.8.1              [required by rock]
  - install http                  6.0.0              [required by cohttp-lwt-unix]
  - install httpaf                0.7.1              [required by httpaf-lwt-unix, rock]
  - install httpaf-lwt-unix       0.7.1              [required by opium]
  - install ipaddr                5.6.1              [required by colombe, conduit-lwt-unix, mrmime]
  - install ipaddr-sexp           5.6.1              [required by conduit-lwt-unix]
  - install jwto                  0.4.0              [required by sihl]
  - install ke                    0.6                [required by mrmime, sendmail]
  - install letters               0.3.3              [required by sihl-email]
  - install logs                  0.10.0             [required by cohttp-lwt-unix, sihl]
  - install lwt                   5.9.2              [required by cohttp-lwt-unix, letters]
  - install lwt_ppx               5.9.1              [required by sihl]
  - install lwt_ssl               1.2.0              [required by sihl]
  - install macaddr               5.6.1              [required by ipaddr]
  - install magic-mime            1.3.1              [required by cohttp-lwt-unix]
  - install mirage-crypto         0.11.3             [required by opium]
  - install mirage-crypto-ec      0.11.3             [required by x509, tls]
  - install mirage-crypto-pk      0.11.3             [required by x509, tls]
  - install mirage-crypto-rng     0.11.3             [required by mirage-crypto-rng-lwt, x509, tls]
  - install mirage-crypto-rng-lwt 0.11.3             [required by tls-lwt]
  - install mirage-no-solo5       1 (deprecated)     [required by nocrypto]
  - install mirage-no-xen         1 (deprecated)     [required by nocrypto]
  - install mrmime                0.7.1              [required by letters]
  - install mtime                 2.1.0              [required by opium]
  - install multipart-form-data   0.3.0              [required by opium]
  - install nocrypto              0.5.4-2            [required by sihl]
  - install num                   1.6                [required by sexplib]
  - install ocaml-compiler-libs   v0.12.4            [required by ppxlib]
  - install ocaml-syntax-shims    1.0.0              [required by colombe]
  - install ocamlbuild            0.16.1             [required by nocrypto, uuidm]
  - install ocamlfind             1.9.8              [required by nocrypto, uuidm]
  - install ocb-stubblr           0.1.1-1            [required by nocrypto]
  - install ocplib-endian         1.2                [required by lwt]
  - install opium                 0.20.0             [required by sihl]
  - install parsexp               v0.15.0            [required by sexplib]
  - install pbkdf                 1.2.0              [required by x509]
  - install pecu                  0.7                [required by mrmime]
  - install ppx_derivers          1.2.1              [required by ppx_deriving]
  - install ppx_deriving          6.0.3              [required by nocrypto, jwto, ppx_deriving_yojson]
  - install ppx_deriving_yojson   3.9.1              [required by sihl]
  - install ppx_fields_conv       v0.15.0            [required by sihl]
  - install ppx_sexp_conv         v0.15.1            [required by cohttp-lwt-unix, sihl]
  - install ppxlib                0.35.0             [required by ppx_deriving_yojson, lwt_ppx, ppx_fields_conv]
  - install prettym               0.0.4              [required by mrmime]
  - install ptime                 1.2.0              [required by letters]
  - install re                    1.14.0             [required by jwto, cohttp, opium]
  - install result                1.5                [required by httpaf]
  - install rock                  0.20.0             [required by opium]
  - install rosetta               0.4.0              [required by mrmime]
  - install rresult               0.7.0              [required by letters]
  - install safepass              3.1                [required by sihl]
  - install sendmail              0.8.1              [required by letters]
  - install seq                   base               [required by tyxml]
  - install sexplib               v0.15.1            [required by sihl]
  - install sexplib0              v0.15.1            [required by cohttp, cohttp-lwt]
  - install sihl                  3.0.3              [required by sihl-email]
  - install sihl-email            3.0.3
  - install ssl                   0.7.0              [required by sihl]
  - install stdlib-shims          0.3.0              [required by ppxlib]
  - install stringext             1.6.0              [required by cohttp]
  - install tls                   0.17.5             [required by letters, sihl]
  - install tls-lwt               0.17.5             [required by letters]
  - install topkg                 1.1.1              [required by nocrypto, uuidm]
  - install tsort                 2.2.0              [required by sihl]
  - install tyxml                 4.6.0              [required by opium]
  - install unstrctrd             0.4                [required by mrmime]
  - install uri                   4.4.0              [required by caqti, cohttp-lwt, cohttp, etc.]
  - install uri-sexp              4.4.0              [required by cohttp]
  - install uuidm                 0.9.10             [required by sihl]
  - install uutf                  1.0.4              [required by mrmime]
  - install uuuu                  0.4.0              [required by rosetta]
  - install x509                  0.16.5             [required by letters]
  - install yojson                3.0.0              [required by sihl]
  - install yuscii                0.3.0              [required by rosetta]
  - install zarith                1.14               [required by nocrypto]

The following system packages will first need to be installed:
    libev-dev libgmp-dev libssl-dev pkg-config

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

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get 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/bin/sudo "apt-get" "install" "-qq" "-yy" "libev-dev" "libgmp-dev" "libssl-dev" "pkg-config"
- Selecting previously unselected package libev4t64:amd64.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20622 files and directories currently installed.)
- Preparing to unpack .../0-libev4t64_1%3a4.33-2.1+b1_amd64.deb ...
- Unpacking libev4t64:amd64 (1:4.33-2.1+b1) ...
- Selecting previously unselected package libev-dev:amd64.
- Preparing to unpack .../1-libev-dev_1%3a4.33-2.1+b1_amd64.deb ...
- Unpacking libev-dev:amd64 (1:4.33-2.1+b1) ...
- Selecting previously unselected package libgmpxx4ldbl:amd64.
- Preparing to unpack .../2-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libgmp-dev:amd64.
- Preparing to unpack .../3-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libpkgconf3:amd64.
- Preparing to unpack .../4-libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package libssl-dev:amd64.
- Preparing to unpack .../5-libssl-dev_3.5.4-1~deb13u1_amd64.deb ...
- Unpacking libssl-dev:amd64 (3.5.4-1~deb13u1) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../6-pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../7-pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../8-pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libev4t64:amd64 (1:4.33-2.1+b1) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Setting up libssl-dev:amd64 (3.5.4-1~deb13u1) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up libev-dev:amd64 (1:4.33-2.1+b1) ...
- Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1  (cached)
-> retrieved asn1-combinators.0.2.6  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved base.v0.15.1  (cached)
-> retrieved base64.3.5.2  (cached)
-> retrieved bigarray-compat.1.1.0  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved bos.0.2.1  (cached)
-> retrieved bstr.0.0.3  (cached)
-> retrieved ca-certs.0.2.3  (cached)
-> retrieved caqti.1.9.0, caqti-lwt.1.9.0  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> installed base64.3.5.2
-> retrieved cohttp.6.0.0, cohttp-lwt.6.0.0, cohttp-lwt-unix.6.0.0, http.6.0.0  (cached)
-> installed bigarray-compat.1.1.0
-> installed bstr.0.0.3
-> retrieved coin.0.1.5  (cached)
-> retrieved colombe.0.8.1, sendmail.0.8.1  (cached)
-> retrieved conduit.6.2.3, conduit-lwt.6.2.3, conduit-lwt-unix.6.2.3  (cached)
-> retrieved conf-gmp.5  (cached)
-> retrieved conf-gmp-powm-sec.4  (cached)
-> retrieved conf-libev.4-13  (cached)
-> retrieved conf-libssl.4  (cached)
-> retrieved conformist.0.8.1  (cached)
-> installed conf-gmp.5
-> installed conf-pkg-config.4
-> installed conf-gmp-powm-sec.4
-> installed conf-libssl.4
-> retrieved containers.3.16  (cached)
-> retrieved cppo.1.8.0  (cached)
-> retrieved cpuid.0.1.2  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved cstruct.6.0.1, cstruct-lwt.6.0.1  (cached)
-> installed http.6.0.0
-> installed conf-libev.4-13
-> installed cpuid.0.1.2
-> installed coin.0.1.5
-> installed csexp.1.5.2
-> installed cstruct.6.0.1
-> retrieved digestif.1.3.0  (cached)
-> retrieved domain-name.0.5.0  (cached)
-> installed domain-name.0.5.0
-> installed cppo.1.8.0
-> retrieved dune-configurator.3.21.0~alpha3  (cached)
-> retrieved duration.0.2.1  (cached)
-> retrieved either.1.0.0  (cached)
-> retrieved emile.1.1  (cached)
-> retrieved eqaf.0.9  (cached)
-> retrieved faraday.0.8.2, faraday-lwt.0.8.2, faraday-lwt-unix.0.8.2  (cached)
-> retrieved fieldslib.v0.15.0  (cached)
-> installed cmdliner.1.3.0
-> retrieved fmt.0.11.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved gmap.0.3.0  (cached)
-> retrieved hkdf.1.0.4  (cached)
-> retrieved hmap.0.8.1  (cached)
-> retrieved httpaf.0.7.1, httpaf-lwt-unix.0.7.1  (cached)
-> installed duration.0.2.1
-> retrieved ipaddr.5.6.1, ipaddr-sexp.5.6.1, macaddr.5.6.1  (cached)
-> installed either.1.0.0
-> retrieved jwto.0.4.0  (cached)
-> retrieved ke.0.6  (cached)
-> retrieved letters.0.3.3  (cached)
-> retrieved logs.0.10.0  (cached)
-> retrieved lwt.5.9.2  (cached)
-> installed gmap.0.3.0
-> retrieved lwt_ppx.5.9.1  (cached)
-> retrieved lwt_ssl.1.2.0  (cached)
-> retrieved magic-mime.1.3.1  (cached)
-> installed eqaf.0.9
-> installed macaddr.5.6.1
-> retrieved mirage-crypto.0.11.3, mirage-crypto-ec.0.11.3, mirage-crypto-pk.0.11.3, mirage-crypto-rng.0.11.3, mirage-crypto-rng-lwt.0.11.3  (cached)
-> installed mirage-no-solo5.1
-> installed mirage-no-xen.1
-> installed magic-mime.1.3.1
-> retrieved mrmime.0.7.1  (cached)
-> retrieved mtime.2.1.0  (cached)
-> retrieved multipart-form-data.0.3.0  (cached)
-> installed ipaddr.5.6.1
-> retrieved nocrypto.0.5.4-2  (cached)
-> retrieved num.1.6  (cached)
-> installed digestif.1.3.0
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> installed dune-configurator.3.21.0~alpha3
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ocb-stubblr.0.1.1-1  (cached)
-> retrieved ocplib-endian.1.2  (cached)
-> retrieved opium.0.20.0, rock.0.20.0  (cached)
-> retrieved parsexp.v0.15.0  (cached)
-> retrieved pbkdf.1.2.0  (cached)
-> retrieved pecu.0.7  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppx_deriving.6.0.3  (cached)
-> retrieved ppx_deriving_yojson.3.9.1  (cached)
-> retrieved ppx_fields_conv.v0.15.0  (cached)
-> retrieved ppx_sexp_conv.v0.15.1  (cached)
-> retrieved ppxlib.0.35.0  (cached)
-> installed pecu.0.7
-> installed ppx_derivers.1.2.1
-> retrieved prettym.0.0.4  (cached)
-> retrieved ptime.1.2.0  (cached)
-> installed bigstringaf.0.10.0
-> retrieved re.1.14.0  (cached)
-> retrieved result.1.5  (cached)
-> retrieved rosetta.0.4.0  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved safepass.3.1  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved sexplib.v0.15.1  (cached)
-> retrieved sexplib0.v0.15.1  (cached)
-> retrieved sihl.3.0.3, sihl-email.3.0.3  (cached)
-> retrieved ssl.0.7.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved stringext.1.6.0  (cached)
-> installed faraday.0.8.2
-> installed result.1.5
-> retrieved tls.0.17.5, tls-lwt.0.17.5  (cached)
-> installed ocaml-syntax-shims.1.0.0
-> installed stdlib-shims.0.3.0
-> retrieved topkg.1.1.1  (cached)
-> retrieved tsort.2.2.0  (cached)
-> retrieved tyxml.4.6.0  (cached)
-> retrieved unstrctrd.0.4  (cached)
-> retrieved uri.4.4.0, uri-sexp.4.4.0  (cached)
-> installed stringext.1.6.0
-> retrieved uuidm.0.9.10  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved uuuu.0.4.0  (cached)
-> retrieved x509.0.16.5  (cached)
-> installed sexplib0.v0.15.1
-> installed tsort.2.2.0
-> retrieved yojson.3.0.0  (cached)
-> installed angstrom.0.16.1
-> retrieved yuscii.0.3.0  (cached)
-> retrieved zarith.1.14  (cached)
-> installed num.1.6
-> installed yuscii.0.3.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed re.1.14.0
-> installed ssl.0.7.0
-> installed uuuu.0.4.0
-> installed httpaf.0.7.1
-> installed rosetta.0.4.0
-> installed safepass.3.1
-> installed mirage-crypto.0.11.3
-> installed containers.3.16
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed hkdf.1.0.4
-> installed pbkdf.1.2.0
-> installed yojson.3.0.0
-> installed uri.4.4.0
-> installed ocplib-endian.1.2
-> installed ocamlbuild.0.16.1
-> installed lwt.5.9.2
-> installed faraday-lwt.0.8.2
-> installed cstruct-lwt.6.0.1
-> installed lwt_ssl.1.2.0
-> installed faraday-lwt-unix.0.8.2
-> installed zarith.1.14
-> installed httpaf-lwt-unix.0.7.1
-> installed base.v0.15.1
-> installed fieldslib.v0.15.0
-> installed parsexp.v0.15.0
-> installed topkg.1.1.1
-> installed sexplib.v0.15.1
-> installed hmap.0.8.1
-> installed rresult.0.7.0
-> installed uuidm.0.9.10
-> installed uutf.1.0.4
-> installed rock.0.20.0
-> installed mtime.2.1.0
-> installed ptime.1.2.0
-> installed unstrctrd.0.4
-> installed astring.0.8.5
-> installed emile.1.1
-> installed fmt.0.11.0
-> installed conformist.0.8.1
-> installed ocb-stubblr.0.1.1-1
-> installed fpath.0.7.3
-> installed ke.0.6
-> installed asn1-combinators.0.2.6
-> installed colombe.0.8.1
-> installed logs.0.10.0
-> installed prettym.0.0.4
-> installed mirage-crypto-rng.0.11.3
-> installed caqti.1.9.0
-> installed mirage-crypto-rng-lwt.0.11.3
-> installed caqti-lwt.1.9.0
-> installed mirage-crypto-pk.0.11.3
-> installed mrmime.0.7.1
-> installed tyxml.4.6.0
-> installed bos.0.2.1
-> installed ppxlib.0.35.0
-> installed mirage-crypto-ec.0.11.3
-> installed ppx_fields_conv.v0.15.0
-> installed x509.0.16.5
-> installed ca-certs.0.2.3
-> installed lwt_ppx.5.9.1
-> installed ppx_sexp_conv.v0.15.1
-> installed ppx_deriving.6.0.3
-> installed multipart-form-data.0.3.0
-> installed tls.0.17.5
-> installed ipaddr-sexp.5.6.1
-> installed uri-sexp.4.4.0
-> installed jwto.0.4.0
-> installed tls-lwt.0.17.5
-> installed sendmail.0.8.1
-> installed ppx_deriving_yojson.3.9.1
-> installed letters.0.3.3
-> installed opium.0.20.0
-> installed conduit.6.2.3
-> installed cohttp.6.0.0
-> installed conduit-lwt.6.2.3
-> installed cohttp-lwt.6.0.0
-> installed conduit-lwt-unix.6.2.3
-> installed cohttp-lwt-unix.6.0.0
-> installed nocrypto.0.5.4-2
-> installed sihl.3.0.3
-> installed sihl-email.3.0.3
Done.

<><> mirage-no-xen.1 installed successfully <><><><><><><><><><><><><><><><><><>
=> Note: This package is deprecated.

<><> mirage-no-solo5.1 installed successfully <><><><><><><><><><><><><><><><><>
=> Note: This package is deprecated.

<><> hkdf.1.0.4 installed successfully ><><><><><><><><><><><><><><><><><><><><>
=> Note: This package is deprecated.
# To update the current shell environment, run: eval $(opam env)
2025-12-11 06:38.06 ---> saved as "2a5975dea480476d7264c8e6650f1c7631e5dac7f997af9377dbc93f40ef93fe"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test sihl-email.3.0.3) || true"))
The following actions will be performed:
=== downgrade 3 packages
  - downgrade cohttp                  6.0.0 to 5.3.1 [required by cohttp-lwt]
  - downgrade cohttp-lwt              6.0.0 to 5.3.0 [required by cohttp-lwt-unix]
  - downgrade cohttp-lwt-unix         6.0.0 to 5.3.0 [required by sihl-email]
=== recompile 1 package
  - recompile sihl-email              3.0.3
=== upgrade 1 package
  - upgrade   http                    6.0.0 to 6.1.1
=== install 12 packages
  - install   alcotest                1.9.1          [required by alcotest-lwt]
  - install   alcotest-lwt            1.9.1          [required by sihl-email]
  - install   caqti-driver-mariadb    1.9.0          [required by sihl-email]
  - install   caqti-driver-postgresql 1.9.1          [required by sihl-email]
  - install   conf-gcc                1.0            [required by mariadb]
  - install   conf-mariadb            2              [required by mariadb]
  - install   conf-postgresql         2              [required by postgresql]
  - install   ctypes                  0.24.0         [required by mariadb]
  - install   integers                0.7.0          [required by ctypes]
  - install   jsonm                   1.0.2          [required by cohttp]
  - install   mariadb                 1.3.0          [required by caqti-driver-mariadb]
  - install   postgresql              5.2.0          [required by caqti-driver-postgresql]

The following system packages will first need to be installed:
    libmariadb-dev libpq-dev

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

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get 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/bin/sudo "apt-get" "install" "-qq" "-yy" "libmariadb-dev" "libpq-dev"
- Selecting previously unselected package mysql-common.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20859 files and directories currently installed.)
- Preparing to unpack .../0-mysql-common_5.8+1.1.1_all.deb ...
- Unpacking mysql-common (5.8+1.1.1) ...
- Selecting previously unselected package mariadb-common.
- Preparing to unpack .../1-mariadb-common_1%3a11.8.3-0+deb13u1_all.deb ...
- Unpacking mariadb-common (1:11.8.3-0+deb13u1) ...
- Selecting previously unselected package libmariadb3:amd64.
- Preparing to unpack .../2-libmariadb3_1%3a11.8.3-0+deb13u1_amd64.deb ...
- Unpacking libmariadb3:amd64 (1:11.8.3-0+deb13u1) ...
- Selecting previously unselected package zlib1g-dev:amd64.
- Preparing to unpack .../3-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1+b1_amd64.deb ...
- Unpacking zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1+b1) ...
- Selecting previously unselected package libmariadb-dev.
- Preparing to unpack .../4-libmariadb-dev_1%3a11.8.3-0+deb13u1_amd64.deb ...
- Unpacking libmariadb-dev (1:11.8.3-0+deb13u1) ...
- Selecting previously unselected package libpq5:amd64.
- Preparing to unpack .../5-libpq5_17.6-0+deb13u1_amd64.deb ...
- Unpacking libpq5:amd64 (17.6-0+deb13u1) ...
- Selecting previously unselected package libpq-dev.
- Preparing to unpack .../6-libpq-dev_17.6-0+deb13u1_amd64.deb ...
- Unpacking libpq-dev (17.6-0+deb13u1) ...
- Setting up mysql-common (5.8+1.1.1) ...
- update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
- Setting up libpq5:amd64 (17.6-0+deb13u1) ...
- Setting up libpq-dev (17.6-0+deb13u1) ...
- Setting up mariadb-common (1:11.8.3-0+deb13u1) ...
- update-alternatives: using /etc/mysql/mariadb.cnf to provide /etc/mysql/my.cnf (my.cnf) in auto mode
- Setting up libmariadb3:amd64 (1:11.8.3-0+deb13u1) ...
- Setting up zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1+b1) ...
- Setting up libmariadb-dev (1:11.8.3-0+deb13u1) ...
- Processing triggers for libc-bin (2.41-12) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1, alcotest-lwt.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved caqti-driver-mariadb.1.9.0  (https://opam.ocaml.org/cache)
-> retrieved caqti-driver-postgresql.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved cohttp.5.3.1  (https://opam.ocaml.org/cache)
-> retrieved cohttp-lwt.5.3.0, cohttp-lwt-unix.5.3.0  (https://opam.ocaml.org/cache)
-> installed conf-mariadb.2
-> installed conf-gcc.1.0
-> installed conf-postgresql.2
-> retrieved ctypes.0.24.0  (https://opam.ocaml.org/cache)
-> retrieved http.6.1.1  (https://opam.ocaml.org/cache)
-> installed alcotest.1.9.1
-> retrieved integers.0.7.0  (https://opam.ocaml.org/cache)
-> retrieved jsonm.1.0.2  (https://opam.ocaml.org/cache)
-> retrieved mariadb.1.3.0  (https://opam.ocaml.org/cache)
-> retrieved postgresql.5.2.0  (https://opam.ocaml.org/cache)
-> installed alcotest-lwt.1.9.1
-> retrieved sihl-email.3.0.3  (https://opam.ocaml.org/cache)
-> installed integers.0.7.0
-> removed   sihl-email.3.0.3
-> removed   cohttp-lwt-unix.6.0.0
-> removed   cohttp-lwt.6.0.0
-> removed   cohttp.6.0.0
-> removed   http.6.0.0
-> installed http.6.1.1
-> installed jsonm.1.0.2
-> installed postgresql.5.2.0
-> installed caqti-driver-postgresql.1.9.1
-> installed cohttp.5.3.1
-> installed cohttp-lwt.5.3.0
-> installed ctypes.0.24.0
[ERROR] The compilation of mariadb.1.3.0 failed at "dune build -p mariadb -j 71 @install".
-> installed cohttp-lwt-unix.5.3.0

#=== ERROR while compiling mariadb.1.3.0 ======================================#
# context              2.5.0 | linux/x86_64 | ocaml-base-compiler.4.14.2 | file:///home/opam/opam-repository
# path                 ~/.opam/4.14/.opam-switch/build/mariadb.1.3.0
# command              ~/.opam/opam-init/hooks/sandbox.sh build dune build -p mariadb -j 71 @install
# exit-code            1
# env-file             ~/.opam/log/mariadb-7-0525f8.env
# output-file          ~/.opam/log/mariadb-7-0525f8.out
### output ###
# File "lib/dune", lines 1-19, characters 0-600:
#  1 | (library
#  2 |  (public_name mariadb)
#  3 |  (synopsis "OCaml bindings for MariaDB")
# ....
# 17 |    (functor Ffi_bindings))
# 18 |   (generated_types Ffi_generated_types)
# 19 |   (generated_entry_point Ffi_generated)))
# Error: Module Ffi_bindings is required by ctypes at lib/dune:13 but is
# missing in the modules field of the stanza.
# File "lib/dune", lines 1-19, characters 0-600:
#  1 | (library
#  2 |  (public_name mariadb)
#  3 |  (synopsis "OCaml bindings for MariaDB")
# ....
# 17 |    (functor Ffi_bindings))
# 18 |   (generated_types Ffi_generated_types)
# 19 |   (generated_entry_point Ffi_generated)))
# Error: Module Ffi_bindings is required by ctypes at lib/dune:17 but is
# missing in the modules field of the stanza.



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build mariadb 1.3.0
+- 
+- The following changes have been performed (the rest was aborted)
| - remove    sihl-email              3.0.3
| - downgrade cohttp                  6.0.0 to 5.3.1
| - downgrade cohttp-lwt              6.0.0 to 5.3.0
| - downgrade cohttp-lwt-unix         6.0.0 to 5.3.0
| - upgrade   http                    6.0.0 to 6.1.1
| - install   alcotest                1.9.1
| - install   alcotest-lwt            1.9.1
| - install   caqti-driver-postgresql 1.9.1
| - install   conf-gcc                1.0
| - install   conf-mariadb            2
| - install   conf-postgresql         2
| - install   ctypes                  0.24.0
| - install   integers                0.7.0
| - install   jsonm                   1.0.2
| - install   postgresql              5.2.0
+- 
# To update the current shell environment, run: eval $(opam env)

The former state can be restored with:
    /usr/bin/opam switch import "/home/opam/.opam/4.14/.opam-switch/backup/state-20251211063807.export"
Or you can retry to install your package selection with:
    /usr/bin/opam install --restore
2025-12-11 06:38.32 ---> saved as "814c83f2f5dd355a1809b831e14dae300c24b708c7365e0cf6cfca6a0fb88086"

/home/opam: (run (shell  "opam reinstall --with-test --verbose sihl-email.3.0.3;\
                        \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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'sihl-email.3.0.3' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
sihl-email.3.0.3 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 3 packages
  - install caqti-driver-mariadb 1.9.0 [required by sihl-email]
  - install mariadb              1.3.0 [required by caqti-driver-mariadb]
  - install sihl-email           3.0.3

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/9: [caqti-driver-mariadb.1.9.0: extract]
-> retrieved caqti-driver-mariadb.1.9.0  (cached)
Processing  2/9: [mariadb.1.3.0: extract]
-> retrieved mariadb.1.3.0  (cached)
Processing  3/9: [sihl-email.3.0.3: extract]
Processing  4/9: [sihl-email.3.0.3: extract] [mariadb: dune build]
-> retrieved sihl-email.3.0.3  (cached)
Processing  4/9: [mariadb: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "mariadb" "-j" "71" "@install" (CWD=/home/opam/.opam/4.14/.opam-switch/build/mariadb.1.3.0)
- File "lib/dune", lines 1-19, characters 0-600:
-  1 | (library
-  2 |  (public_name mariadb)
-  3 |  (synopsis "OCaml bindings for MariaDB")
- ....
- 17 |    (functor Ffi_bindings))
- 18 |   (generated_types Ffi_generated_types)
- 19 |   (generated_entry_point Ffi_generated)))
- Error: Module Ffi_bindings is required by ctypes at lib/dune:13 but is
- missing in the modules field of the stanza.
- File "lib/dune", lines 1-19, characters 0-600:
-  1 | (library
-  2 |  (public_name mariadb)
-  3 |  (synopsis "OCaml bindings for MariaDB")
- ....
- 17 |    (functor Ffi_bindings))
- 18 |   (generated_types Ffi_generated_types)
- 19 |   (generated_entry_point Ffi_generated)))
- Error: Module Ffi_bindings is required by ctypes at lib/dune:17 but is
- missing in the modules field of the stanza.
[ERROR] The compilation of mariadb.1.3.0 failed at "dune build -p mariadb -j 71 @install".

#=== ERROR while compiling mariadb.1.3.0 ======================================#
# context              2.5.0 | linux/x86_64 | ocaml-base-compiler.4.14.2 | file:///home/opam/opam-repository
# path                 ~/.opam/4.14/.opam-switch/build/mariadb.1.3.0
# command              ~/.opam/opam-init/hooks/sandbox.sh build dune build -p mariadb -j 71 @install
# exit-code            1
# env-file             ~/.opam/log/mariadb-7-c14585.env
# output-file          ~/.opam/log/mariadb-7-c14585.out
### output ###
# File "lib/dune", lines 1-19, characters 0-600:
#  1 | (library
#  2 |  (public_name mariadb)
#  3 |  (synopsis "OCaml bindings for MariaDB")
# ....
# 17 |    (functor Ffi_bindings))
# 18 |   (generated_types Ffi_generated_types)
# 19 |   (generated_entry_point Ffi_generated)))
# Error: Module Ffi_bindings is required by ctypes at lib/dune:13 but is
# missing in the modules field of the stanza.
# File "lib/dune", lines 1-19, characters 0-600:
#  1 | (library
#  2 |  (public_name mariadb)
#  3 |  (synopsis "OCaml bindings for MariaDB")
# ....
# 17 |    (functor Ffi_bindings))
# 18 |   (generated_types Ffi_generated_types)
# 19 |   (generated_entry_point Ffi_generated)))
# Error: Module Ffi_bindings is required by ctypes at lib/dune:17 but is
# missing in the modules field of the stanza.



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions were aborted
| - install caqti-driver-mariadb 1.9.0
| - install sihl-email           3.0.3
+- 
+- The following actions failed
| - build mariadb 1.3.0
+- 
- No changes have been performed
# To update the current shell environment, run: eval $(opam env)
'opam reinstall --with-test --verbose sihl-email.3.0.3' failed.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
opam-repo-ci detected dependencies failing:  mariadb.1.3.0
"/usr/bin/env" "bash" "-c" "opam reinstall --with-test --verbose sihl-email.3.0.3;
        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 "\"debian-13\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'sihl-email.3.0.3' && partial_fails="$partial_fails $pkg";
        done;
        test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
        exit 1" failed with exit status 1
2025-12-11 06:39.38: Job failed: Failed: Build failed
2025-12-11 06:39.38: Log analysis:
2025-12-11 06:39.38: >>> 
[ERROR] The compilation of mariadb.1.3.0 failed at "dune build -p mariadb -j 71 @install".
 (score = 20)
2025-12-11 06:39.38: >>> 
# Error: Module Ffi_bindings is required by ctypes at lib/dune:13 but is
 (score = 48)
2025-12-11 06:39.38: >>> 
# Error: Module Ffi_bindings is required by ctypes at lib/dune:17 but is
 (score = 48)
2025-12-11 06:39.38: >>> 
[ERROR] The compilation of mariadb.1.3.0 failed at "dune build -p mariadb -j 71 @install".
 (score = 20)
2025-12-11 06:39.38: >>> 
# Error: Module Ffi_bindings is required by ctypes at lib/dune:13 but is
 (score = 48)
2025-12-11 06:39.38: >>> 
# Error: Module Ffi_bindings is required by ctypes at lib/dune:17 but is
 (score = 48)
2025-12-11 06:39.38: >>> 
opam-repo-ci detected dependencies failing:  mariadb.1.3.0
 (score = 75)
2025-12-11 06:39.38:  mariadb.1.3.0 failed to build