(for PR #29807)

2026-04-27 09:15.47: New job: build bin_there.0.2.1a2, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29807/head (e0fe0e5778da777992e8690ed4faab031f74f9af)
                              on opensuse-16.0-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/29807/head" && git reset --hard e0fe0e57
git fetch origin master
git merge --no-edit d5058a91d400180e2118d7eeefa040cfcee45d2c
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-16.0-ocaml-4.14@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb
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 bin_there.0.2.1a2 0.2.1a2
RUN opam reinstall bin_there.0.2.1a2; \
    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-16.0\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'bin_there.0.2.1a2' && 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-04-27 09:15.47: Using cache hint "ocaml/opam:opensuse-16.0-ocaml-4.14@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb-bin_there.0.2.1a2-e0fe0e5778da777992e8690ed4faab031f74f9af"
2026-04-27 09:15.47: Using OBuilder spec:
((from ocaml/opam:opensuse-16.0-ocaml-4.14@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb)
 (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 bin_there.0.2.1a2 0.2.1a2"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall bin_there.0.2.1a2;\
             \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-16.0\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'bin_there.0.2.1a2' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-04-27 09:15.47: Waiting for resource in pool OCluster
2026-04-27 09:15.48: Waiting for worker…
2026-04-27 09:15.48: Got resource from pool OCluster
Building on eumache.caelum.ci.dev
All commits already cached
HEAD is now at d5058a91d4 Merge pull request #29801 from YuriyKrasilnikov/opam-publish-idna.0.4.0
Updating d5058a91d4..e0fe0e5778
Fast-forward
 packages/bin_there/bin_there.0.2.1a2/opam         | 30 +++++++++++++++++++++++
 packages/ppx_bin_there/ppx_bin_there.0.2.1a2/opam | 30 +++++++++++++++++++++++
 2 files changed, 60 insertions(+)
 create mode 100644 packages/bin_there/bin_there.0.2.1a2/opam
 create mode 100644 packages/ppx_bin_there/ppx_bin_there.0.2.1a2/opam

(from ocaml/opam:opensuse-16.0-ocaml-4.14@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb)
Unable to find image 'ocaml/opam:opensuse-16.0-ocaml-4.14@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb' locally
docker.io/ocaml/opam@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb: Pulling from ocaml/opam
64cfa2a65095: Already exists
a1c954aa9f5d: Pulling fs layer
d92bc6c6b974: Pulling fs layer
8448b413e5c7: Pulling fs layer
14a50110c407: Pulling fs layer
a1c954aa9f5d: Waiting
61a61b729795: Pulling fs layer
d92bc6c6b974: Waiting
1beb74174368: Pulling fs layer
8448b413e5c7: Waiting
14a50110c407: Waiting
aebb65146c23: Pulling fs layer
61a61b729795: Waiting
1beb74174368: Waiting
03444ae55a83: Pulling fs layer
aebb65146c23: Waiting
a1ced4e29c0d: Pulling fs layer
7a4895494d11: Pulling fs layer
03444ae55a83: Waiting
7dcacbbfa130: Pulling fs layer
a1ced4e29c0d: Waiting
e3876e6b71b4: Pulling fs layer
7a4895494d11: Waiting
1c8fe80fea82: Pulling fs layer
7dcacbbfa130: Waiting
f16b23aa0c12: Pulling fs layer
82c7d0f0ec76: Pulling fs layer
e3876e6b71b4: Waiting
f16b23aa0c12: Waiting
1c8fe80fea82: Waiting
101b2e3a1dfc: Pulling fs layer
82c7d0f0ec76: Waiting
c002708afbbc: Pulling fs layer
101b2e3a1dfc: Waiting
c002708afbbc: Waiting
4f4fb700ef54: Pulling fs layer
21a9e591d3af: Pulling fs layer
30fa210cc2a2: Pulling fs layer
a77d2952d34e: Pulling fs layer
30fa210cc2a2: Waiting
904a0a7059e8: Pulling fs layer
312ce581bafb: Pulling fs layer
5ce56401b4aa: Pulling fs layer
52a871a76b5c: Pulling fs layer
6bf70c818af5: Pulling fs layer
21a9e591d3af: Waiting
929523e95824: Pulling fs layer
904a0a7059e8: Waiting
a77d2952d34e: Waiting
3e8eac09fb45: Pulling fs layer
960b748e3373: Pulling fs layer
52a871a76b5c: Waiting
5ce56401b4aa: Waiting
b35afdde9537: Pulling fs layer
6bf70c818af5: Waiting
929523e95824: Waiting
e86bd721afba: Pulling fs layer
312ce581bafb: Waiting
39e999d1ca12: Pulling fs layer
cf9aa7a4f7a6: Pulling fs layer
3b79ef0be1a2: Pulling fs layer
b35afdde9537: Waiting
495a6c99c169: Pulling fs layer
cf9aa7a4f7a6: Waiting
e86bd721afba: Waiting
d7daee0651d0: Pulling fs layer
960b748e3373: Waiting
495a6c99c169: Waiting
c68833deb44b: Pulling fs layer
d7daee0651d0: Waiting
39e999d1ca12: Waiting
c68833deb44b: Waiting
3b79ef0be1a2: Waiting
d9b9f535d9be: Pulling fs layer
8fc813cc5204: Pulling fs layer
19188acf13a5: Pulling fs layer
4d7b0ed6f74a: Pulling fs layer
d9b9f535d9be: Waiting
8fc813cc5204: Waiting
4d7b0ed6f74a: Waiting
19188acf13a5: Waiting
3e8eac09fb45: Waiting
a1c954aa9f5d: Verifying Checksum
a1c954aa9f5d: Download complete
a1c954aa9f5d: Pull complete
14a50110c407: Verifying Checksum
14a50110c407: Download complete
61a61b729795: Download complete
1beb74174368: Verifying Checksum
1beb74174368: Download complete
aebb65146c23: Verifying Checksum
aebb65146c23: Download complete
8448b413e5c7: Verifying Checksum
8448b413e5c7: Download complete
03444ae55a83: Verifying Checksum
03444ae55a83: Download complete
a1ced4e29c0d: Verifying Checksum
a1ced4e29c0d: Download complete
7a4895494d11: Verifying Checksum
7a4895494d11: Download complete
7dcacbbfa130: Verifying Checksum
7dcacbbfa130: Download complete
1c8fe80fea82: Verifying Checksum
1c8fe80fea82: Download complete
d92bc6c6b974: Verifying Checksum
d92bc6c6b974: Download complete
82c7d0f0ec76: Verifying Checksum
82c7d0f0ec76: Download complete
f16b23aa0c12: Verifying Checksum
f16b23aa0c12: Download complete
101b2e3a1dfc: Verifying Checksum
101b2e3a1dfc: Download complete
e3876e6b71b4: Verifying Checksum
e3876e6b71b4: Download complete
c002708afbbc: Verifying Checksum
c002708afbbc: Download complete
4f4fb700ef54: Download complete
30fa210cc2a2: Download complete
21a9e591d3af: Verifying Checksum
21a9e591d3af: Download complete
a77d2952d34e: Verifying Checksum
a77d2952d34e: Download complete
312ce581bafb: Download complete
904a0a7059e8: Verifying Checksum
904a0a7059e8: Download complete
5ce56401b4aa: Verifying Checksum
5ce56401b4aa: Download complete
52a871a76b5c: Download complete
6bf70c818af5: Verifying Checksum
6bf70c818af5: Download complete
929523e95824: Download complete
3e8eac09fb45: Verifying Checksum
3e8eac09fb45: Download complete
b35afdde9537: Download complete
39e999d1ca12: Verifying Checksum
39e999d1ca12: Download complete
3b79ef0be1a2: Download complete
495a6c99c169: Download complete
d7daee0651d0: Download complete
d92bc6c6b974: Pull complete
cf9aa7a4f7a6: Verifying Checksum
cf9aa7a4f7a6: Download complete
d9b9f535d9be: Verifying Checksum
d9b9f535d9be: Download complete
8fc813cc5204: Download complete
19188acf13a5: Download complete
4d7b0ed6f74a: Verifying Checksum
4d7b0ed6f74a: Download complete
e86bd721afba: Verifying Checksum
e86bd721afba: Download complete
c68833deb44b: Verifying Checksum
c68833deb44b: Download complete
8448b413e5c7: Pull complete
14a50110c407: Pull complete
61a61b729795: Pull complete
1beb74174368: Pull complete
aebb65146c23: Pull complete
03444ae55a83: Pull complete
a1ced4e29c0d: Pull complete
7a4895494d11: Pull complete
7dcacbbfa130: Pull complete
e3876e6b71b4: Pull complete
1c8fe80fea82: Pull complete
f16b23aa0c12: Pull complete
82c7d0f0ec76: Pull complete
101b2e3a1dfc: Pull complete
c002708afbbc: Pull complete
4f4fb700ef54: Pull complete
21a9e591d3af: Pull complete
30fa210cc2a2: Pull complete
a77d2952d34e: Pull complete
904a0a7059e8: Pull complete
312ce581bafb: Pull complete
5ce56401b4aa: Pull complete
52a871a76b5c: Pull complete
6bf70c818af5: Pull complete
929523e95824: Pull complete
3e8eac09fb45: Pull complete
960b748e3373: Pull complete
b35afdde9537: Pull complete
e86bd721afba: Pull complete
39e999d1ca12: Pull complete
cf9aa7a4f7a6: Pull complete
3b79ef0be1a2: Pull complete
495a6c99c169: Pull complete
d7daee0651d0: Pull complete
c68833deb44b: Pull complete
d9b9f535d9be: Pull complete
8fc813cc5204: Pull complete
19188acf13a5: Pull complete
4d7b0ed6f74a: Pull complete
Digest: sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb
Status: Downloaded newer image for ocaml/opam@sha256:48f908230535eaf30f1f1ab3c2634328f67f6bdb1a46835ab0ad19cea391f2fb
2026-04-27 09:21.56 ---> saved as "ef29318a721018cf9c750ec73a59349c0036afe2d3a929c7e12565c2b9d9c2ad"

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-04-27 09:21.56 ---> saved as "3685ca329f926abd4b710ddfaafad9f76c51de92293157a836cfdac6483746f3"

/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-04-27 09:22.23 ---> saved as "31187ffaa7f97ba3a546ff1c233dbe5d35a8755d4fa802c91ee4a8addab11fb5"

/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version         2.5.1
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=opensuse-leap os-version=16.0
# 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-04-27 09:22.23 ---> saved as "ef52602eebb685eedcba6d85db3017ccce99d4a0cd655f6432a175709a4c4a3c"

/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-04-27 09:22.30 ---> saved as "9c681c156d08b00f0ed1407b814f7ed08bf587604fb478a4d744d430a7fb0722"

/home/opam: (copy (src .) (dst opam-repository/))
2026-04-27 09:22.39 ---> saved as "40a51fdf3687dda46d50284f21438ed8ae4d04aca3d254c7825d71b55e6dd5e3"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-27 09:22.58 ---> saved as "8ae106a37de4a910355d11d0305838b0881cebec59d71a003d3f285d42b015c6"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "zypper" "--non-interactive" "refresh"
- Repository 'repo-openh264 (16.0)' is up to date.
- Retrieving repository 'repo-oss (16.0)' metadata [..
- Looking for gpg keys in repository repo-oss (16.0).
-   gpgkey=http://cdn.opensuse.org/distribution/leap/16.0/repo/oss/x86_64/repodata/repomd.xml.key
- ..
- 
- Note: Received 1 new package signing key from repository "repo-oss (16.0)":
- 
-   Those additional keys are usually used to sign packages shipped by the repository. In order to
-   validate those packages upon download and installation the new keys will be imported into the rpm
-   database.
- 
-   New:
-   Key Fingerprint:  F044 C2C5 07A1 262B 538A AADD 8A49 EB03 25DB 7AE0
-   Key Name:         openSUSE:Backports OBS Project <openSUSE:Backports@build.opensuse.org>
-   Key Algorithm:    RSA 4096
-   Key Created:      Wed May 10 14:46:12 2023
-   Key Expires:      Sun May  9 14:46:12 2027
-   Rpm Name:         gpg-pubkey-25db7ae0-645bae34
- 
-   The repository metadata introducing the new keys have been signed and validated by the trusted
-   key:
- 
-   Repository:       repo-oss (16.0)
-   Key Fingerprint:  AD48 5664 E901 B867 051A B15F 35A2 F86E 29B7 00A4
-   Key Name:         openSUSE Project Signing Key <opensuse@opensuse.org>
-   Key Algorithm:    RSA 4096
-   Key Created:      Mon Jun 20 14:03:14 2022
-   Key Expires:      Fri Jun 19 14:03:14 2026 (expires in 53 days)
-   Rpm Name:         gpg-pubkey-29b700a4-62b07e22
- 
- .
- ..
- ........
- ..........
- ........done]
- Building repository 'repo-oss (16.0)' cache [..
- ..done]
- All repositories have been refreshed.
2026-04-27 09:23.14 ---> saved as "3495bb022b44495189b929f30b2555743e7d4c71c355748993c5bbdc1642f4e7"

/home/opam: (run (shell "opam pin add -k version -yn bin_there.0.2.1a2 0.2.1a2"))
bin_there is now pinned to version 0.2.1a2
2026-04-27 09:23.14 ---> saved as "a26bbac38da3b1bb28b0cad7ef663ea5ea4c1e5e0570f616249bc3e9cc6d0bf6"

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

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved bin_there.0.2.1a2  (cached)
-> retrieved dune.3.22.2  (cached)
-> installed dune.3.22.2
-> installed bin_there.0.2.1a2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-27 09:23.43 ---> saved as "5af297dfa444695aa1206c32145251d5ad10c90f32f46f2a084ff4a71b8fd25c"
Job succeeded
2026-04-27 09:23.51: Job succeeded