Build:
  1. 0
2025-12-11 04:26.35: New job: test atdgen.2.15.0, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29055/head (14ee109db3ae9c9e16a17e8c754f90715d88e4fc)
                              on opensuse-tumbleweed-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/29055/head" && git reset --hard 14ee109d
git fetch origin master
git merge --no-edit 810e1f14b7fa6411c66a3549f4c2aff47c52fc36
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-tumbleweed-ocaml-5.4@sha256:8ddf0d35e61a654e89393b7285ecdcf5448f941aa41803bebfe6b19f45371967
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 atdgen.2.15.0 2.15.0
RUN opam reinstall atdgen.2.15.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-tumbleweed\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'atdgen.2.15.0' && 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 atdgen.2.15.0) || true
RUN opam reinstall --with-test --verbose atdgen.2.15.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-tumbleweed\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'atdgen.2.15.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 .

2025-12-11 04:26.35: Using cache hint "ocaml/opam:opensuse-tumbleweed-ocaml-5.4@sha256:8ddf0d35e61a654e89393b7285ecdcf5448f941aa41803bebfe6b19f45371967-atdgen.2.15.0-14ee109db3ae9c9e16a17e8c754f90715d88e4fc"
2025-12-11 04:26.35: Using OBuilder spec:
((from ocaml/opam:opensuse-tumbleweed-ocaml-5.4@sha256:8ddf0d35e61a654e89393b7285ecdcf5448f941aa41803bebfe6b19f45371967)
 (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 atdgen.2.15.0 2.15.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall atdgen.2.15.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-tumbleweed\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'atdgen.2.15.0' && 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 atdgen.2.15.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose atdgen.2.15.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-tumbleweed\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'atdgen.2.15.0' && 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 04:26.35: Waiting for resource in pool OCluster
2025-12-11 19:11.21: Waiting for worker…
2025-12-11 19:14.25: Got resource from pool OCluster
Building on bremusa.ocamllabs.io
All commits already cached
Updating files:  97% (18566/19010)
Updating files:  98% (18630/19010)
Updating files:  99% (18820/19010)
Updating files: 100% (19010/19010)
Updating files: 100% (19010/19010), done.
HEAD is now at 810e1f14b7 Merge pull request #29066 from gares/release-elpi-v3.4.4
Merge made by the 'ort' strategy.
 packages/atd/atd.3.0.1/opam                        | 124 ++++++++++++++++++++
 packages/atdcpp/atdcpp.3.0.1/opam                  | 116 ++++++++++++++++++
 packages/atdd/atdd.3.0.1/opam                      | 116 ++++++++++++++++++
 .../atdgen-codec-runtime.3.0.1/opam                | 115 ++++++++++++++++++
 packages/atdgen-runtime/atdgen-runtime.3.0.1/opam  | 117 +++++++++++++++++++
 packages/atdgen/atdgen.2.14.0/opam                 |   2 +-
 packages/atdgen/atdgen.2.14.1/opam                 |   2 +-
 packages/atdgen/atdgen.2.15.0/opam                 |   2 +-
 packages/atdgen/atdgen.2.16.0/opam                 |   2 +-
 packages/atdgen/atdgen.3.0.1/opam                  | 130 +++++++++++++++++++++
 packages/atdj/atdj.3.0.1/opam                      | 129 ++++++++++++++++++++
 packages/atdpy/atdpy.3.0.1/opam                    | 118 +++++++++++++++++++
 packages/atds/atds.3.0.1/opam                      | 114 ++++++++++++++++++
 packages/atdts/atdts.3.0.1/opam                    | 117 +++++++++++++++++++
 packages/sarif/sarif.0.1.0/opam                    |   2 +-
 .../spotify-web-api/spotify-web-api.0.2.1/opam     |   2 +-
 packages/uritemplate/uritemplate.0.1.0/opam        |   2 +-
 packages/uritemplate/uritemplate.0.2.0/opam        |   2 +-
 18 files changed, 1204 insertions(+), 8 deletions(-)
 create mode 100644 packages/atd/atd.3.0.1/opam
 create mode 100644 packages/atdcpp/atdcpp.3.0.1/opam
 create mode 100644 packages/atdd/atdd.3.0.1/opam
 create mode 100644 packages/atdgen-codec-runtime/atdgen-codec-runtime.3.0.1/opam
 create mode 100644 packages/atdgen-runtime/atdgen-runtime.3.0.1/opam
 create mode 100644 packages/atdgen/atdgen.3.0.1/opam
 create mode 100644 packages/atdj/atdj.3.0.1/opam
 create mode 100644 packages/atdpy/atdpy.3.0.1/opam
 create mode 100644 packages/atds/atds.3.0.1/opam
 create mode 100644 packages/atdts/atdts.3.0.1/opam

(from ocaml/opam:opensuse-tumbleweed-ocaml-5.4@sha256:8ddf0d35e61a654e89393b7285ecdcf5448f941aa41803bebfe6b19f45371967)
2025-12-11 19:14.38 ---> using "57afb8690d24b136ff7fae23ae8c93c27f988cf9934bb3d4b349ac11e8246bc1" 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 19:14.39 ---> using "eec9c8fb60848a56ecdde57e1776881b7109b5a7ce895e2c1380842ce1ecc20d" 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 19:15.05 ---> saved as "2b6eda95e70126e96967d66f2564399755fbb79e580d4447d291d26b764c7029"

/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-tumbleweed os-version=20251204
# 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
2025-12-11 19:15.06 ---> saved as "2381c50f9406a02f1f09a316fc55af27435824acc889c3db85b6923b3347a846"

/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 19:15.21 ---> saved as "6b6ce8607d513ee1a1e62ee4adf87cbd970168996e591f223ffdfae464993d98"

/home/opam: (copy (src .) (dst opam-repository/))
2025-12-11 19:15.28 ---> saved as "b4fba5071c8bb6adf20a5d5a782e83206aaa2e8c2c8775c3a70f9b0637394c3b"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-12-11 19:15.53 ---> saved as "8e9708a125feb8ed349705abe3263a3aa44a9df4a65f2023247ece79c5daf599"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "zypper" "--non-interactive" "refresh"
- Repository 'openSUSE-Tumbleweed-Update' is up to date.
- Retrieving repository 'openSUSE-Tumbleweed-Non-Oss' metadata [...
- Looking for gpg keys in repository openSUSE-Tumbleweed-Non-Oss.
-   gpgkey=http://download.opensuse.org/tumbleweed/repo/non-oss/repodata/repomd.xml.key
- ...
- ......
- .done]
- Building repository 'openSUSE-Tumbleweed-Non-Oss' cache [....done]
- Retrieving repository 'openSUSE-Tumbleweed-Oss' metadata [...
- Looking for gpg keys in repository openSUSE-Tumbleweed-Oss.
-   gpgkey=http://download.opensuse.org/tumbleweed/repo/oss/repodata/repomd.xml.key
- ...
- .........
- ..........
- ..........
- ........
- .done]
- Building repository 'openSUSE-Tumbleweed-Oss' cache [..
- ..done]
- All repositories have been refreshed.
2025-12-11 19:16.09 ---> saved as "b80a66c79907782eb1636694f1970d5388b75917706ee567e7ff0850ed9afb2a"

/home/opam: (run (shell "opam pin add -k version -yn atdgen.2.15.0 2.15.0"))
atdgen is now pinned to version 2.15.0
2025-12-11 19:16.10 ---> saved as "90f8a4fb0e6cc73867f5c08a24e6d9c79f369ad3766c8f6fdc1d9df250739765"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall atdgen.2.15.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-tumbleweed\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'atdgen.2.15.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
atdgen.2.15.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 15 packages
  - install atd            2.16.0          [required by atdgen]
  - install atdgen         2.15.0 (pinned)
  - install atdgen-runtime 2.16.0          [required by atdgen]
  - install biniou         1.2.2           [required by atdgen]
  - install camlp-streams  5.0.1           [required by biniou]
  - install cmdliner       2.1.0           [required by atd]
  - install dune           3.20.2          [required by atdgen]
  - install easy-format    1.3.4           [required by atd]
  - install menhir         20250912        [required by atd]
  - install menhirCST      20250912        [required by menhir]
  - install menhirLib      20250912        [required by menhir]
  - install menhirSdk      20250912        [required by menhir]
  - install re             1.14.0          [required by atdgen]
  - install seq            base            [required by yojson]
  - install yojson         2.2.2           [required by atdgen]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved atd.2.16.0, atdgen-runtime.2.16.0  (cached)
-> retrieved atdgen.2.15.0  (cached)
-> retrieved biniou.1.2.2  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved cmdliner.2.1.0  (cached)
-> retrieved dune.3.20.2  (cached)
-> retrieved easy-format.1.3.4  (cached)
-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved yojson.2.2.2  (cached)
-> installed cmdliner.2.1.0
-> installed dune.3.20.2
-> installed easy-format.1.3.4
-> installed menhirCST.20250912
-> installed camlp-streams.5.0.1
-> installed menhirSdk.20250912
-> installed menhirLib.20250912
-> installed biniou.1.2.2
-> installed re.1.14.0
-> installed yojson.2.2.2
-> installed atdgen-runtime.2.16.0
-> installed menhir.20250912
-> installed atd.2.16.0
-> installed atdgen.2.15.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-11 19:17.09 ---> saved as "bcd6c90ce162b04cf1548cb984577e40549b99b756cafdb022c47468e9f250e3"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test atdgen.2.15.0) || true"))
The following actions will be performed:
=== recompile 1 package
  - recompile atdgen               2.15.0 (pinned)
=== install 10 packages
  - install   alcotest             1.9.1           [required by atdgen]
  - install   astring              0.8.5           [required by alcotest]
  - install   atdgen-codec-runtime 3.0.1           [required by atdgen]
  - install   fmt                  0.11.0          [required by alcotest]
  - install   ocaml-syntax-shims   1.0.0           [required by alcotest]
  - install   ocamlbuild           0.16.1          [required by fmt, astring, uutf]
  - install   ocamlfind            1.9.8           [required by fmt, astring, uutf]
  - install   stdlib-shims         0.3.0           [required by alcotest]
  - install   topkg                1.1.1           [required by fmt, astring, uutf]
  - install   uutf                 1.0.4           [required by alcotest]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved astring.0.8.5  (https://opam.ocaml.org/cache)
-> retrieved atdgen-codec-runtime.3.0.1  (https://github.com/ahrefs/atd/releases/download/3.0.1/atd-3.0.1.tbz)
-> retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
-> retrieved ocaml-syntax-shims.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved ocamlbuild.0.16.1  (https://opam.ocaml.org/cache)
-> installed atdgen-codec-runtime.3.0.1
-> retrieved ocamlfind.1.9.8  (https://opam.ocaml.org/cache)
-> retrieved stdlib-shims.0.3.0  (https://opam.ocaml.org/cache)
-> retrieved topkg.1.1.1  (https://opam.ocaml.org/cache)
-> installed stdlib-shims.0.3.0
-> retrieved uutf.1.0.4  (https://opam.ocaml.org/cache)
-> installed ocaml-syntax-shims.1.0.0
-> installed ocamlfind.1.9.8
-> removed   atdgen.2.15.0
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed alcotest.1.9.1
-> installed atdgen.2.15.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-11 19:17.35 ---> saved as "557e8ee36d4b97125573963efbdfa5a2c2ef77fedb57734554c1b8fe724ae720"

/home/opam: (run (shell  "opam reinstall --with-test --verbose atdgen.2.15.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-tumbleweed\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'atdgen.2.15.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
The following actions will be performed:
=== recompile 1 package
  - recompile atdgen 2.15.0 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/4: [atdgen: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "atdgen" "-j" "71" "@install" (CWD=/home/opam/.opam/5.4/.opam-switch/build/atdgen.2.15.0)
- (cd _build/default && /home/opam/.opam/5.4/bin/ocamlopt.opt -w -40 -w -27 -safe-string -g -I atdgen/src/deprecated/.atdgen.objs/byte -I atdgen/src/deprecated/.atdgen.objs/native -I /home/opam/.opam/5.4/lib/atdgen-runtime -cmi-file atdgen/src/deprecated/.atdgen.objs/byte/atdgen.cmi -no-alias-deps -open Atdgen__ -o atdgen/src/deprecated/.atdgen.objs/native/atdgen.cmx -c -impl atdgen/src/deprecated/atdgen.ml)
- File "atdgen/src/deprecated/atdgen.ml", line 1, characters 4-14:
- 1 | [@@@deprecated "The runtime for Atdgen is now the module Atdgen_runtime existing
-         ^^^^^^^^^^
- Warning 53 [misplaced-attribute]: the deprecated attribute cannot appear in this context
-> compiled  atdgen.2.15.0
-> removed   atdgen.2.15.0
-> installed atdgen.2.15.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-11 19:17.46 ---> saved as "6c9198947ff440001f5d2d4c4538b6bcb95dd2924653a868833d7ec2f23302b8"
Job succeeded
2025-12-11 19:18.04: Job succeeded