Build:
  1. 0
2026-03-09 22:11.51: New job: build malfunction.0.7.1, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29529/head (4035af2de09889c401bbd4a265b86d97ad9474cf)
                              on opensuse-15.6-ocaml-5.4/amd64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29529/head" && git reset --hard 4035af2d
git fetch origin master
git merge --no-edit 3c70647a78a7fd22066fca4f17f7ca4514500663
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-15.6-ocaml-5.4@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c
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 malfunction.0.7.1 0.7.1
RUN opam reinstall malfunction.0.7.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 "\"opensuse-15.6\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'malfunction.0.7.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-03-09 22:11.51: Using cache hint "ocaml/opam:opensuse-15.6-ocaml-5.4@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c-malfunction.0.7.1-4035af2de09889c401bbd4a265b86d97ad9474cf"
2026-03-09 22:11.51: Using OBuilder spec:
((from ocaml/opam:opensuse-15.6-ocaml-5.4@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c)
 (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 malfunction.0.7.1 0.7.1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall malfunction.0.7.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 \"\\\"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\" != 'malfunction.0.7.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-03-09 22:11.51: Waiting for resource in pool OCluster
2026-03-09 22:11.52: Waiting for worker…
2026-03-09 22:11.52: Got resource from pool OCluster
Building on bremusa.ocamllabs.io
All commits already cached
HEAD is now at 3c70647a78 Merge pull request #29507 from NathanReb/release-ppxlib-0-38-0-5-5-preview
Updating 3c70647a78..4035af2de0
Fast-forward
 packages/malfunction/malfunction.0.7.1/opam | 33 +++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 packages/malfunction/malfunction.0.7.1/opam

(from ocaml/opam:opensuse-15.6-ocaml-5.4@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c)
Unable to find image 'ocaml/opam:opensuse-15.6-ocaml-5.4@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c' locally
docker.io/ocaml/opam@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c: Pulling from ocaml/opam
392654b0e264: Pulling fs layer
4bd382cee485: Pulling fs layer
382a0bfe3b04: Pulling fs layer
dfc3f49ed4d4: Pulling fs layer
382a0bfe3b04: Waiting
dfc3f49ed4d4: Waiting
5b3de6229413: Pulling fs layer
6c4133dfab92: Pulling fs layer
5b3de6229413: Waiting
a3fcb32089bb: Pulling fs layer
6c4133dfab92: Waiting
6592d044237d: Pulling fs layer
a3fcb32089bb: Waiting
5c2d8f43cf18: Pulling fs layer
6592d044237d: Waiting
f9e08193a21d: Pulling fs layer
9105e8ba57ce: Pulling fs layer
f9e08193a21d: Waiting
5cec5459a088: Pulling fs layer
be55681f3223: Pulling fs layer
5071507e8599: Pulling fs layer
5cec5459a088: Waiting
be55681f3223: Waiting
26cf90a26320: Pulling fs layer
5071507e8599: Waiting
6e12c9accd5a: Pulling fs layer
26cf90a26320: Waiting
9a030d2d17ff: Pulling fs layer
968910779b8e: Pulling fs layer
9a030d2d17ff: Waiting
6e12c9accd5a: Waiting
a77b6e39d2f3: Pulling fs layer
968910779b8e: Waiting
4f4fb700ef54: Pulling fs layer
1df42fc2ddb2: Pulling fs layer
4f4fb700ef54: Waiting
77602c200c21: Pulling fs layer
1df42fc2ddb2: Waiting
a77b6e39d2f3: Waiting
72f433c57f50: Pulling fs layer
77602c200c21: Waiting
d5dc1c9a9805: Pulling fs layer
f6a05d59c6bd: Pulling fs layer
72f433c57f50: Waiting
d5dc1c9a9805: Waiting
11be80df2eb4: Pulling fs layer
a0ee284f3973: Pulling fs layer
28f06cb9d92c: Pulling fs layer
f6a05d59c6bd: Waiting
11be80df2eb4: Waiting
16dcb67fb968: Pulling fs layer
c7fe483fab92: Pulling fs layer
16dcb67fb968: Waiting
55710f66ea12: Pulling fs layer
4092255f2cc7: Pulling fs layer
089f6ac70578: Pulling fs layer
c7fe483fab92: Waiting
547317caeef5: Pulling fs layer
9a6df5f23549: Pulling fs layer
55710f66ea12: Waiting
5db74958c1e0: Pulling fs layer
4092255f2cc7: Waiting
aeb7d736d992: Pulling fs layer
089f6ac70578: Waiting
b72eb0407610: Pulling fs layer
9a6df5f23549: Waiting
547317caeef5: Waiting
1be6f5445725: Pulling fs layer
b72eb0407610: Waiting
4522c60f3df8: Pulling fs layer
1be6f5445725: Waiting
7990c05188f8: Pulling fs layer
4522c60f3df8: Waiting
aeb7d736d992: Waiting
e6cff384d931: Pulling fs layer
7990c05188f8: Waiting
a08540c2f513: Pulling fs layer
e6cff384d931: Waiting
48fbccb260e1: Pulling fs layer
a08540c2f513: Waiting
7a32015d1138: Pulling fs layer
48fbccb260e1: Waiting
7a32015d1138: Waiting
4bd382cee485: Download complete
392654b0e264: Verifying Checksum
392654b0e264: Download complete
392654b0e264: Pull complete
4bd382cee485: Pull complete
dfc3f49ed4d4: Verifying Checksum
dfc3f49ed4d4: Download complete
5b3de6229413: Verifying Checksum
5b3de6229413: Download complete
6c4133dfab92: Verifying Checksum
6c4133dfab92: Download complete
382a0bfe3b04: Verifying Checksum
382a0bfe3b04: Download complete
a3fcb32089bb: Verifying Checksum
a3fcb32089bb: Download complete
6592d044237d: Verifying Checksum
6592d044237d: Download complete
5c2d8f43cf18: Verifying Checksum
5c2d8f43cf18: Download complete
9105e8ba57ce: Download complete
f9e08193a21d: Verifying Checksum
f9e08193a21d: Download complete
5071507e8599: Verifying Checksum
5071507e8599: Download complete
be55681f3223: Verifying Checksum
be55681f3223: Download complete
5cec5459a088: Verifying Checksum
5cec5459a088: Download complete
6e12c9accd5a: Verifying Checksum
6e12c9accd5a: Download complete
26cf90a26320: Verifying Checksum
26cf90a26320: Download complete
9a030d2d17ff: Download complete
968910779b8e: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
a77b6e39d2f3: Download complete
1df42fc2ddb2: Verifying Checksum
1df42fc2ddb2: Download complete
77602c200c21: Verifying Checksum
77602c200c21: Download complete
72f433c57f50: Download complete
d5dc1c9a9805: Verifying Checksum
d5dc1c9a9805: Download complete
11be80df2eb4: Verifying Checksum
11be80df2eb4: Download complete
f6a05d59c6bd: Verifying Checksum
f6a05d59c6bd: Download complete
a0ee284f3973: Verifying Checksum
a0ee284f3973: Download complete
28f06cb9d92c: Verifying Checksum
28f06cb9d92c: Download complete
16dcb67fb968: Verifying Checksum
16dcb67fb968: Download complete
382a0bfe3b04: Pull complete
c7fe483fab92: Verifying Checksum
c7fe483fab92: Download complete
55710f66ea12: Download complete
4092255f2cc7: Verifying Checksum
4092255f2cc7: Download complete
547317caeef5: Verifying Checksum
547317caeef5: Download complete
5db74958c1e0: Download complete
aeb7d736d992: Download complete
b72eb0407610: Download complete
1be6f5445725: Verifying Checksum
1be6f5445725: Download complete
4522c60f3df8: Verifying Checksum
4522c60f3df8: Download complete
7990c05188f8: Verifying Checksum
7990c05188f8: Download complete
9a6df5f23549: Verifying Checksum
9a6df5f23549: Download complete
089f6ac70578: Verifying Checksum
089f6ac70578: Download complete
a08540c2f513: Download complete
48fbccb260e1: Verifying Checksum
48fbccb260e1: Download complete
7a32015d1138: Download complete
dfc3f49ed4d4: Pull complete
5b3de6229413: Pull complete
6c4133dfab92: Pull complete
a3fcb32089bb: Pull complete
6592d044237d: Pull complete
5c2d8f43cf18: Pull complete
e6cff384d931: Verifying Checksum
e6cff384d931: Download complete
f9e08193a21d: Pull complete
9105e8ba57ce: Pull complete
5cec5459a088: Pull complete
be55681f3223: Pull complete
5071507e8599: Pull complete
26cf90a26320: Pull complete
6e12c9accd5a: Pull complete
9a030d2d17ff: Pull complete
968910779b8e: Pull complete
a77b6e39d2f3: Pull complete
4f4fb700ef54: Pull complete
1df42fc2ddb2: Pull complete
77602c200c21: Pull complete
72f433c57f50: Pull complete
d5dc1c9a9805: Pull complete
f6a05d59c6bd: Pull complete
11be80df2eb4: Pull complete
a0ee284f3973: Pull complete
28f06cb9d92c: Pull complete
16dcb67fb968: Pull complete
c7fe483fab92: Pull complete
55710f66ea12: Pull complete
4092255f2cc7: Pull complete
089f6ac70578: Pull complete
547317caeef5: Pull complete
9a6df5f23549: Pull complete
5db74958c1e0: Pull complete
aeb7d736d992: Pull complete
b72eb0407610: Pull complete
1be6f5445725: Pull complete
4522c60f3df8: Pull complete
7990c05188f8: Pull complete
e6cff384d931: Pull complete
a08540c2f513: Pull complete
48fbccb260e1: Pull complete
7a32015d1138: Pull complete
Digest: sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c
Status: Downloaded newer image for ocaml/opam@sha256:46496ca3c3f86bb61799cfbd9185f39cb56f6ecb253ee1909e38bcc4c5f2de2c
2026-03-09 22:12.20 ---> using "89f1345fd13fe67d34b32b45b6cd71a6f37a48e76a002ff4667fe408a5150d1f" 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-03-09 22:12.20 ---> using "98a94e32db578747812bf9f6c26422070dbc2c8cf0e04088323980172ff51d6a" 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.

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

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-03-09 22:12.20 ---> using "1fc4775cc0ca9b3bd5211a8e0da72b51dbe85690f015875e18b65f7847e6e896" 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=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         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {= "5.4.0"}]
# compiler-packages    ocaml-base-compiler.5.4.0, ocaml-compiler.5.4.0, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       5.4.0
2026-03-09 22:12.20 ---> using "132577bd4d8189bb744669f4a66798c1936c251d9d27431a01336105e0b9ebfb" 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-03-09 22:12.20 ---> using "7c926aa4e27f9e85b8a411d941f6c2b53ec3d954ad892fc94f6efd29a6dca18d" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-03-09 22:12.29 ---> saved as "e9722f3a253d0c2bf7600976eab807e0126d128f36fad626b27d9c41f84fe930"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-03-09 22:12.48 ---> saved as "238e1573eb7c8b2f70fd3b381d302bcd5d6106346bbf8b3071d78119796669f4"

/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]
- Retrieving repository 'Update repository with updates from SUSE Linux Enterprise 15' metadata [..
- Looking for gpg keys in repository Update repository with updates from SUSE Linux Enterprise 15.
-   gpgkey=http://download.opensuse.org/update/leap/15.6/sle/repodata/repomd.xml.key
- ......
- ....
- ....
- ...........
- .........
- ..........
- .........
- .........
- ..........
- .........
- .........
- ..........
- ......
- ..........
- .........
- ........
- ......done]
- Building repository 'Update repository with updates from SUSE Linux Enterprise 15' cache [..
- ..done]
- 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-09 22:18.27 ---> saved as "7d883b893d8cad9d2cb213d2d624577a13495b199bee1cda2c75bb3332829dd2"

/home/opam: (run (shell "opam pin add -k version -yn malfunction.0.7.1 0.7.1"))
malfunction is now pinned to version 0.7.1
2026-03-09 22:18.28 ---> saved as "219199c11da4e6d949bc32c92ccee0224e36df12ec4909cdb6f8540577ae03c5"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall malfunction.0.7.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 \"\\\"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\" != 'malfunction.0.7.1' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
malfunction.0.7.1 is not installed. Install it? [Y/n] y
  * Incompatible packages:
    - (invariant) -> ocaml-base-compiler = 5.4.0
    - malfunction >= 0.7.1 -> ocaml < 5.4 -> dkml-base-compiler
    You can temporarily relax the switch invariant with `--update-invariant'
  * Incompatible packages:
    - (invariant) -> ocaml-base-compiler = 5.4.0
    - malfunction >= 0.7.1 -> ocaml < 5.4 -> ocaml-variants
  * Missing dependency:
    - malfunction >= 0.7.1 -> ocaml < 5.4 -> ocaml-base-compiler (<= 3.07+1 | = 3.07+2 | = 3.08.0 | = 3.08.1 | = 3.08.2 | = 3.08.3 | = 3.08.4 | = 3.09.0) | ocaml-system (<= 3.07+1 | = 3.07+2 | >= 3.08.0) | ocaml-variants < 3.09.1~
    not available because the package is pinned to version 5.4.0
    unmet availability conditions, e.g. 'sys-ocaml-version = "5.4.1" & (os != "win32" | sys-ocaml-libc = "msvc")'
    no matching version
  * Missing dependency:
    - malfunction >= 0.7.1 -> ocaml < 5.4 -> ocaml-variants -> ocaml-beta
    unmet availability conditions: 'enable-ocaml-beta-repository'
  * Missing dependency:
    - malfunction >= 0.7.1 -> ocaml < 5.4 -> ocaml-variants -> system-msvc
    unmet availability conditions: 'os = "win32"'

No solution found, exiting
"/usr/bin/env" "bash" "-c" "opam reinstall malfunction.0.7.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 "\"opensuse-15.6\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'malfunction.0.7.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-03-09 22:21.40: Job failed: Failed: Build failed
2026-03-09 22:21.40: Log analysis:
2026-03-09 22:21.40: >>> 
No solution found, exiting
 (score = 100)
2026-03-09 22:21.40: [SKIP] Package not available