(for PR #29620)

2026-03-30 21:23.36: New job: build wadi.0.1.0, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29620/head (e48542c6b0c57c44b0ef42e7f8c1de6d6e833aa7)
                              on opensuse-15.6-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/29620/head" && git reset --hard e48542c6
git fetch origin master
git merge --no-edit 747f3dca281b5ae6275dfa41069f059ae517126f
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f
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 wadi.0.1.0 0.1.0
RUN opam reinstall wadi.0.1.0; \
    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 "\"opensuse-15.6\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'wadi.0.1.0' && 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-03-30 21:23.36: Using cache hint "ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f-wadi.0.1.0-e48542c6b0c57c44b0ef42e7f8c1de6d6e833aa7"
2026-03-30 21:23.36: Using OBuilder spec:
((from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f)
 (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 wadi.0.1.0 0.1.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall wadi.0.1.0;\
             \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 \"\\\"opensuse-15.6\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'wadi.0.1.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-03-30 21:23.36: Waiting for resource in pool OCluster
2026-03-30 21:23.36: Waiting for worker…
2026-03-30 21:23.38: Got resource from pool OCluster
Building on eumache.caelum.ci.dev
All commits already cached
HEAD is now at 747f3dca28 Merge pull request #29614 from ocaml/use-setup-ocaml-for-windows-ci
Updating 747f3dca28..e48542c6b0
Fast-forward
 packages/wadi/wadi.0.1.0/opam | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100644 packages/wadi/wadi.0.1.0/opam

(from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f)
Unable to find image 'ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f' locally
docker.io/ocaml/opam@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f: Pulling from ocaml/opam
cf0250ddcb79: Already exists
40991fcd8a1b: Pulling fs layer
e05128dd3eb3: Pulling fs layer
3425e1313de9: Pulling fs layer
3ff42a08404d: Pulling fs layer
40991fcd8a1b: Waiting
e05128dd3eb3: Waiting
eaa7ec413ede: Pulling fs layer
3425e1313de9: Waiting
3ff42a08404d: Waiting
60f83db70cd1: Pulling fs layer
eaa7ec413ede: Waiting
e5a47a911091: Pulling fs layer
60f83db70cd1: Waiting
6327ccf3508c: Pulling fs layer
e5a47a911091: Waiting
5d6981d3a5fa: Pulling fs layer
6327ccf3508c: Waiting
99922baa8ad6: Pulling fs layer
5d6981d3a5fa: Waiting
d6e0652ed47d: Pulling fs layer
99922baa8ad6: Waiting
95c8cc1fe90d: Pulling fs layer
d6e0652ed47d: Waiting
9cd4fd406201: Pulling fs layer
95c8cc1fe90d: Waiting
e3a9e943b4f6: Pulling fs layer
9cd4fd406201: Waiting
aadf7e8e8d6a: Pulling fs layer
e3a9e943b4f6: Waiting
2dfff197ac70: Pulling fs layer
aadf7e8e8d6a: Waiting
c3504cd6bbb5: Pulling fs layer
3c8f3f6b9b40: Pulling fs layer
c3504cd6bbb5: Waiting
2dfff197ac70: Waiting
4f4fb700ef54: Pulling fs layer
3c8f3f6b9b40: Waiting
da5148c6a8cc: Pulling fs layer
4f4fb700ef54: Waiting
cd4749025117: Pulling fs layer
da5148c6a8cc: Waiting
41b38dff52ae: Pulling fs layer
de520dc36bc6: Pulling fs layer
cd4749025117: Waiting
41b38dff52ae: Waiting
fcdda9e04c1f: Pulling fs layer
de520dc36bc6: Waiting
fcdda9e04c1f: Waiting
73d3633f03ac: Pulling fs layer
ef339a4cc918: Pulling fs layer
5335cfb42bc8: Pulling fs layer
73d3633f03ac: Waiting
ef339a4cc918: Waiting
5335cfb42bc8: Waiting
cfe95843ebf6: Pulling fs layer
6d988f80827f: Pulling fs layer
cfe95843ebf6: Waiting
fbbad437eb63: Pulling fs layer
6d988f80827f: Waiting
82c53910b2be: Pulling fs layer
fbbad437eb63: Waiting
0d9d82defd42: Pulling fs layer
82c53910b2be: Waiting
fb8f37a4d801: Pulling fs layer
0d9d82defd42: Waiting
6e8c773a8be6: Pulling fs layer
fb8f37a4d801: Waiting
371876dd87f9: Pulling fs layer
6e8c773a8be6: Waiting
b7473f79970c: Pulling fs layer
371876dd87f9: Waiting
7ae22122e76c: Pulling fs layer
01e4bbb06103: Pulling fs layer
b7473f79970c: Waiting
44fd7f9cc256: Pulling fs layer
7ae22122e76c: Waiting
a69359c8db0e: Pulling fs layer
01e4bbb06103: Waiting
44fd7f9cc256: Waiting
47841ee8dd87: Pulling fs layer
226a195e9737: Pulling fs layer
a69359c8db0e: Waiting
226a195e9737: Waiting
47841ee8dd87: Waiting
40991fcd8a1b: Download complete
40991fcd8a1b: Pull complete
e05128dd3eb3: Verifying Checksum
e05128dd3eb3: Download complete
3425e1313de9: Verifying Checksum
3425e1313de9: Download complete
3ff42a08404d: Verifying Checksum
3ff42a08404d: Download complete
eaa7ec413ede: Verifying Checksum
eaa7ec413ede: Download complete
60f83db70cd1: Verifying Checksum
60f83db70cd1: Download complete
e5a47a911091: Verifying Checksum
e5a47a911091: Download complete
6327ccf3508c: Verifying Checksum
6327ccf3508c: Download complete
5d6981d3a5fa: Verifying Checksum
5d6981d3a5fa: Download complete
e05128dd3eb3: Pull complete
99922baa8ad6: Verifying Checksum
99922baa8ad6: Download complete
d6e0652ed47d: Verifying Checksum
d6e0652ed47d: Download complete
95c8cc1fe90d: Verifying Checksum
95c8cc1fe90d: Download complete
9cd4fd406201: Verifying Checksum
9cd4fd406201: Download complete
e3a9e943b4f6: Verifying Checksum
e3a9e943b4f6: Download complete
aadf7e8e8d6a: Download complete
2dfff197ac70: Verifying Checksum
2dfff197ac70: Download complete
c3504cd6bbb5: Verifying Checksum
c3504cd6bbb5: Download complete
3c8f3f6b9b40: Verifying Checksum
3c8f3f6b9b40: Download complete
da5148c6a8cc: Verifying Checksum
da5148c6a8cc: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
cd4749025117: Verifying Checksum
cd4749025117: Download complete
41b38dff52ae: Verifying Checksum
41b38dff52ae: Download complete
de520dc36bc6: Verifying Checksum
de520dc36bc6: Download complete
fcdda9e04c1f: Verifying Checksum
fcdda9e04c1f: Download complete
73d3633f03ac: Verifying Checksum
ef339a4cc918: Verifying Checksum
ef339a4cc918: Download complete
5335cfb42bc8: Verifying Checksum
5335cfb42bc8: Download complete
cfe95843ebf6: Verifying Checksum
cfe95843ebf6: Download complete
6d988f80827f: Verifying Checksum
6d988f80827f: Download complete
fbbad437eb63: Verifying Checksum
fbbad437eb63: Download complete
82c53910b2be: Verifying Checksum
82c53910b2be: Download complete
fb8f37a4d801: Download complete
371876dd87f9: Download complete
b7473f79970c: Verifying Checksum
b7473f79970c: Download complete
7ae22122e76c: Verifying Checksum
7ae22122e76c: Download complete
6e8c773a8be6: Verifying Checksum
6e8c773a8be6: Download complete
3425e1313de9: Pull complete
3ff42a08404d: Pull complete
eaa7ec413ede: Pull complete
60f83db70cd1: Pull complete
e5a47a911091: Pull complete
6327ccf3508c: Pull complete
5d6981d3a5fa: Pull complete
99922baa8ad6: Pull complete
d6e0652ed47d: Pull complete
44fd7f9cc256: Verifying Checksum
44fd7f9cc256: Download complete
a69359c8db0e: Verifying Checksum
a69359c8db0e: Download complete
95c8cc1fe90d: Pull complete
47841ee8dd87: Verifying Checksum
47841ee8dd87: Download complete
226a195e9737: Download complete
9cd4fd406201: Pull complete
e3a9e943b4f6: Pull complete
aadf7e8e8d6a: Pull complete
01e4bbb06103: Verifying Checksum
01e4bbb06103: Download complete
2dfff197ac70: Pull complete
c3504cd6bbb5: Pull complete
3c8f3f6b9b40: Pull complete
4f4fb700ef54: Pull complete
da5148c6a8cc: Pull complete
cd4749025117: Pull complete
41b38dff52ae: Pull complete
de520dc36bc6: Pull complete
fcdda9e04c1f: Pull complete
73d3633f03ac: Pull complete
ef339a4cc918: Pull complete
5335cfb42bc8: Pull complete
cfe95843ebf6: Pull complete
6d988f80827f: Pull complete
fbbad437eb63: Pull complete
82c53910b2be: Pull complete
0d9d82defd42: Verifying Checksum
0d9d82defd42: Download complete
0d9d82defd42: Pull complete
fb8f37a4d801: Pull complete
6e8c773a8be6: Pull complete
371876dd87f9: Pull complete
b7473f79970c: Pull complete
7ae22122e76c: Pull complete
01e4bbb06103: Pull complete
44fd7f9cc256: Pull complete
a69359c8db0e: Pull complete
47841ee8dd87: Pull complete
226a195e9737: Pull complete
Digest: sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f
Status: Downloaded newer image for ocaml/opam@sha256:87cf5a0bef513d497c6cff7f11be79568579a8c0a750503f771d51e48159016f
2026-03-30 21:27.27 ---> saved as "fe7a2be2a0e8496cd274ebaba106aff2e0238d5a6e3650da019ed80e8c484e57"

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-03-30 21:27.27 ---> saved as "5a76d3e72ea9d2cadbcba191aabdb8f64ced49869aeff469241206873d281f6d"

/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 ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[ocaml-patches-overlay] no changes from git+https://github.com/ocurrent/opam-repository#patches
[default] Initialised
2026-03-30 21:27.48 ---> saved as "56b31c097028b45156c3c4737a82ea92736f806d8bebd1d13509fecfbed5cd03"

/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=opensuse-leap os-version=15.6
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 71
# repositories         2 (version-controlled)
# pinned               1 (version)
# current-switch       4.14
# invariant            ["ocaml-base-compiler" {= "4.14.3"}]
# compiler-packages    ocaml-base-compiler.4.14.3, 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.3
2026-03-30 21:27.49 ---> saved as "87dff88ba723da44fe3b954d44f4cd477c2eddf516822af5de77e6453840180e"

/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-03-30 21:27.54 ---> saved as "5aaf2b2d404fbba22a5ee7faddd155ea24c7bcd79ce955396f73bed2277d5aa3"

/home/opam: (copy (src .) (dst opam-repository/))
2026-03-30 21:28.01 ---> saved as "e797798cb00e542ad0f8285c1f36e94a8c75526a2962c211a8b8b8a2e11c2300"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-03-30 21:28.16 ---> saved as "1ad419526ce70ebaa7c7d12cac951f60f06bdd89a8ed40f79c1fc93712cc9064"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "zypper" "--non-interactive" "refresh"
- Retrieving repository 'Update repository of openSUSE Backports' metadata [..
- Looking for gpg keys in repository Update repository of openSUSE Backports.
-   gpgkey=http://download.opensuse.org/update/leap/15.6/backports/repodata/repomd.xml.key
- ....
- ....
- ....
- ...........done]
- Building repository 'Update repository of openSUSE Backports' cache [..
- ..done]
- Repository 'Update repository with updates from SUSE Linux Enterprise 15' is up to date.
- Repository 'Main Update Repository' is up to date.
- Repository 'Update Repository (Non-Oss)' is up to date.
- Repository 'Non-OSS Repository' is up to date.
- Repository 'Main Repository' is up to date.
- All repositories have been refreshed.
2026-03-30 21:28.23 ---> saved as "ca6481f62ccc20b777cb0b4fd42fd4faba59af25c722f2b6f5dd0bf2419d23a7"

/home/opam: (run (shell "opam pin add -k version -yn wadi.0.1.0 0.1.0"))
wadi is now pinned to version 0.1.0
2026-03-30 21:28.23 ---> saved as "5d5fc9c3e17703c70e22dea9274a3062898655b4f64ea2ab65d3ecca237566f8"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall wadi.0.1.0;\
                        \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 \"\\\"opensuse-15.6\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'wadi.0.1.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
wadi.0.1.0 is not installed. Install it? [Y/n] y
  * Incompatible packages:
    - (invariant) -> ocaml-base-compiler = 4.14.3
    - wadi -> ocaml >= 5.0.0 -> ocaml-variants < 5.4.2~
    You can temporarily relax the switch invariant with `--update-invariant'
  * Missing dependency:
    - wadi -> ocaml >= 5.0.0 -> ocaml-variants < 5.4.2~ -> ocaml-beta
    unmet availability conditions: 'enable-ocaml-beta-repository'
  * Missing dependency:
    - wadi -> ocaml >= 5.0.0 -> ocaml-variants >= 5.0.0~ -> system-msvc
    unmet availability conditions: 'os = "win32"'

No solution found, exiting
"/usr/bin/env" "bash" "-c" "opam reinstall wadi.0.1.0;
        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 "\"opensuse-15.6\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'wadi.0.1.0' && partial_fails="$partial_fails $pkg";
        done;
        test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
        exit 1" failed with exit status 20
2026-03-30 21:28.38: Job failed: Failed: Build failed
2026-03-30 21:28.38: Log analysis:
2026-03-30 21:28.38: >>> 
No solution found, exiting
 (score = 100)
2026-03-30 21:28.38: [SKIP] Package not available