Build:
  1. 0
2026-02-18 17:40.37: New job: test ocaml-solo5-cross-aarch64.1.2.1, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29425/head (56393c852ecc97bd2af91ac2eb29f999c7a71fca)
                              on debian-13-ocaml-4.14-nnpchecker/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/29425/head" && git reset --hard 56393c85
git fetch origin master
git merge --no-edit 0431a98cc2177cbcc88e0937fe5b1b48e457e990
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14-nnpchecker@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df
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 ocaml-solo5-cross-aarch64.1.2.1 1.2.1
RUN opam reinstall ocaml-solo5-cross-aarch64.1.2.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'ocaml-solo5-cross-aarch64.1.2.1' && 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 ocaml-solo5-cross-aarch64.1.2.1) || true
RUN opam reinstall --with-test --verbose ocaml-solo5-cross-aarch64.1.2.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'ocaml-solo5-cross-aarch64.1.2.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-02-18 17:40.37: Using cache hint "ocaml/opam:debian-13-ocaml-4.14-nnpchecker@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df-ocaml-solo5-cross-aarch64.1.2.1-56393c852ecc97bd2af91ac2eb29f999c7a71fca"
2026-02-18 17:40.37: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14-nnpchecker@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df)
 (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 ocaml-solo5-cross-aarch64.1.2.1 1.2.1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall ocaml-solo5-cross-aarch64.1.2.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 \"\\\"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\" != 'ocaml-solo5-cross-aarch64.1.2.1' && 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 ocaml-solo5-cross-aarch64.1.2.1) || true"))
 (run (shell  "opam reinstall --with-test --verbose ocaml-solo5-cross-aarch64.1.2.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 \"\\\"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\" != 'ocaml-solo5-cross-aarch64.1.2.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-02-18 17:40.37: Waiting for resource in pool OCluster
2026-02-18 17:40.38: Waiting for worker…
2026-02-18 17:40.43: Got resource from pool OCluster
Building on asteria.caelum.ci.dev
All commits already cached
HEAD is now at 0431a98cc2 Merge pull request #29419 from dinosaure/release-hxd-v0.4.0
Updating 0431a98cc2..56393c852e
Fast-forward
 .../ocaml-solo5-cross-aarch64.1.2.1/opam           | 60 ++++++++++++++++++++++
 packages/ocaml-solo5/ocaml-solo5.1.2.1/opam        | 58 +++++++++++++++++++++
 2 files changed, 118 insertions(+)
 create mode 100644 packages/ocaml-solo5-cross-aarch64/ocaml-solo5-cross-aarch64.1.2.1/opam
 create mode 100644 packages/ocaml-solo5/ocaml-solo5.1.2.1/opam

(from ocaml/opam:debian-13-ocaml-4.14-nnpchecker@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14-nnpchecker@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df' locally
docker.io/ocaml/opam@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df: Pulling from ocaml/opam
ef235bf1a09a: Already exists
63ff7b8f62f7: Already exists
d97a3c4f37e5: Already exists
998bb0585113: Already exists
94828ef2bfe2: Already exists
3dd00a8a6b86: Already exists
1816e5253dcb: Already exists
e502341419e0: Already exists
7741a83685ca: Already exists
713e411af135: Already exists
5d3b19c24612: Already exists
29b7cdb1fafb: Already exists
015412fc79ef: Already exists
bbb53f8a3678: Already exists
e4b20c98bd52: Already exists
09103d92a91d: Already exists
042e26f97610: Already exists
1ee2a20e6c74: Already exists
83c7c07ee7d9: Already exists
4e9ca69a996f: Already exists
3e6921c56ad6: Already exists
c16273f75711: Already exists
4f4fb700ef54: Already exists
4876e5de169a: Already exists
924fedb47896: Already exists
eab21cd4733f: Already exists
2a28c5a72f80: Already exists
a565bce96cc2: Already exists
1b84da29c428: Already exists
a99c55249385: Already exists
5043a4afe7d4: Already exists
e596723297c6: Already exists
9233633d4448: Already exists
f0cc407c3599: Already exists
5737f0b22df8: Already exists
757775b7c837: Already exists
2d2d616aaf57: Already exists
b240f925287f: Already exists
a05b65e9dec1: Already exists
752e118a24d2: Already exists
6f4175cf580f: Already exists
003ad83f4996: Pulling fs layer
6b72968668f3: Pulling fs layer
3b681a7fde38: Pulling fs layer
7c16ede807c4: Pulling fs layer
7c16ede807c4: Waiting
3b681a7fde38: Waiting
6b72968668f3: Download complete
3b681a7fde38: Verifying Checksum
3b681a7fde38: Download complete
7c16ede807c4: Download complete
003ad83f4996: Verifying Checksum
003ad83f4996: Download complete
003ad83f4996: Pull complete
6b72968668f3: Pull complete
3b681a7fde38: Pull complete
7c16ede807c4: Pull complete
Digest: sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df
Status: Downloaded newer image for ocaml/opam@sha256:440edd548e0ed9dafd3beb881a46998f0e3ddc622a669ba90c8b6f78df3517df
2026-02-18 17:42.40 ---> using "6ed14a0b210a5803cf4be08a06a18387ffec36f0688fcef7addb5780342dc35f" 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-02-18 17:42.40 ---> using "9cdcf450e37c5699c3a4da949082fe4f5f2e3c5cf8958d2bf5730cfa7295e65b" 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
[NOTE] The 'jobs' option was reset, its value was 71 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=71 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-02-18 17:42.40 ---> using "c0e91c65b86364adc28059c420937d8064d8d057af4cb34bd0170f36150e6626" 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                 255
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       4.14
# invariant            ["ocaml-options-only-nnpchecker"]
# compiler-packages    ocaml-option-nnpchecker.1, ocaml-options-only-nnpchecker.1, ocaml-variants.4.14.2+options
# 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+options
2026-02-18 17:42.40 ---> using "3f56dbe201b4962241911f6258d8f9c13773ab58f3722626edb565db36b88406" 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-02-18 17:42.40 ---> using "d227be041a5189db60312424c31ba3b0af1678f068ed900b99dd999c79de3e76" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-02-18 17:42.59 ---> saved as "a0ea1e95057303c84202526dda48437f0ac6d2827873bba15cd419bc8eab0c74"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-02-18 17:43.18 ---> saved as "f92ba9f0538e15af2a8a5c0f2520cff34629dc13e20a679dfcaaf018a95e54ef"

/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 [110 kB]
- Fetched 200 kB in 0s (1460 kB/s)
- Reading package lists...
2026-02-18 17:43.19 ---> saved as "e68565dbeb95bd9099db42598f43ff17404f20707bb2326d9ae447a256f907b1"

/home/opam: (run (shell "opam pin add -k version -yn ocaml-solo5-cross-aarch64.1.2.1 1.2.1"))
ocaml-solo5-cross-aarch64 is now pinned to version 1.2.1
2026-02-18 17:43.20 ---> saved as "3239a375a2c7bfbc2340429898d2e5d334a65b0c3bb0f1f767eab481395c2bac"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall ocaml-solo5-cross-aarch64.1.2.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 \"\\\"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\" != 'ocaml-solo5-cross-aarch64.1.2.1' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
ocaml-solo5-cross-aarch64.1.2.1 is not installed. Install it? [Y/n] y
  * Incompatible packages:
    - (invariant) -> ocaml-options-only-nnpchecker -> ocaml-option-nnpchecker
    - ocaml-solo5-cross-aarch64 >= 1.2.1 -> ocaml = 5.4.1 -> ocaml-base-compiler >= 5.4.1~ -> ocaml-options-vanilla
    You can temporarily relax the switch invariant with `--update-invariant'

No solution found, exiting
"/usr/bin/env" "bash" "-c" "opam reinstall ocaml-solo5-cross-aarch64.1.2.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 "\"debian-13\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'ocaml-solo5-cross-aarch64.1.2.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 20
2026-02-18 17:43.34: Job failed: Failed: Build failed
2026-02-18 17:43.34: Log analysis:
2026-02-18 17:43.34: >>> 
No solution found, exiting
 (score = 100)
2026-02-18 17:43.34: [SKIP] Package not available