(not at the head of any monitored branch or PR)
2026-04-30 02:00.27: New job: test dkml-install-installer.0.1.0 with dyn.3.23.0~alpha2, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29824/head (89a6ae888498500bf7c0fc05361da936fc6acacf)
                              on debian-13-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/29824/head" && git reset --hard 89a6ae88
git fetch origin master
git merge --no-edit d1c56642b8ca7e1166c90bfe0c74f38007bbad58
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353
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 dyn.3.23.0~alpha2 3.23.0~alpha2
RUN opam reinstall dyn.3.23.0~alpha2; \
    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" != 'dyn.3.23.0~alpha2' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN opam reinstall dkml-install-installer.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'dkml-install-installer.0.1.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 dkml-install-installer.0.1.0) || true
RUN opam reinstall --with-test --verbose dkml-install-installer.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'dkml-install-installer.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-04-30 02:00.27: Using cache hint "ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353-dyn.3.23.0~alpha2-dkml-install-installer.0.1.0-89a6ae888498500bf7c0fc05361da936fc6acacf"
2026-04-30 02:00.27: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353)
 (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 dyn.3.23.0~alpha2 3.23.0~alpha2"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dyn.3.23.0~alpha2;\
             \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\" != 'dyn.3.23.0~alpha2' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dkml-install-installer.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 \"\\\"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\" != 'dkml-install-installer.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"))
 (run (network host)
      (shell "(opam reinstall --with-test dkml-install-installer.0.1.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose dkml-install-installer.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 \"\\\"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\" != 'dkml-install-installer.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-04-30 02:00.27: Waiting for resource in pool OCluster
2026-04-30 03:27.04: Waiting for worker…
2026-04-30 03:30.33: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
Updating files:  67% (12728/18887)
Updating files:  68% (12844/18887)
Updating files:  69% (13033/18887)
Updating files:  70% (13221/18887)
Updating files:  71% (13410/18887)
Updating files:  72% (13599/18887)
Updating files:  73% (13788/18887)
Updating files:  74% (13977/18887)
Updating files:  75% (14166/18887)
Updating files:  76% (14355/18887)
Updating files:  77% (14543/18887)
Updating files:  78% (14732/18887)
Updating files:  79% (14921/18887)
Updating files:  80% (15110/18887)
Updating files:  81% (15299/18887)
Updating files:  82% (15488/18887)
Updating files:  83% (15677/18887)
Updating files:  84% (15866/18887)
Updating files:  85% (16054/18887)
Updating files:  86% (16243/18887)
Updating files:  87% (16432/18887)
Updating files:  88% (16621/18887)
Updating files:  89% (16810/18887)
Updating files:  90% (16999/18887)
Updating files:  91% (17188/18887)
Updating files:  92% (17377/18887)
Updating files:  93% (17565/18887)
Updating files:  94% (17754/18887)
Updating files:  95% (17943/18887)
Updating files:  96% (18132/18887)
Updating files:  97% (18321/18887)
Updating files:  98% (18510/18887)
Updating files:  99% (18699/18887)
Updating files: 100% (18887/18887)
Updating files: 100% (18887/18887), done.
HEAD is now at d1c56642b8 Merge pull request #29820 from jmid/core-0.17.1-bound
Merge made by the 'ort' strategy.
 .../chrome-trace/chrome-trace.3.23.0~alpha2/opam   | 39 +++++++++++
 .../dune-action-plugin.3.23.0~alpha2/opam          | 52 ++++++++++++++
 .../dune-action-trace.3.23.0~alpha2/opam           | 39 +++++++++++
 .../dune-build-info.3.23.0~alpha2/opam             | 45 ++++++++++++
 .../dune-configurator.3.23.0~alpha2/opam           | 49 +++++++++++++
 packages/dune-glob/dune-glob.3.23.0~alpha2/opam    | 42 ++++++++++++
 .../dune-private-libs.3.23.0~alpha2/opam           | 50 ++++++++++++++
 .../dune-rpc-lwt/dune-rpc-lwt.3.23.0~alpha2/opam   | 41 +++++++++++
 packages/dune-rpc/dune-rpc.3.23.0~alpha2/opam      | 44 ++++++++++++
 packages/dune-site/dune-site.3.23.0~alpha2/opam    | 37 ++++++++++
 packages/dune/dune.3.23.0~alpha2/opam              | 80 ++++++++++++++++++++++
 packages/dyn/dyn.3.23.0~alpha2/opam                | 40 +++++++++++
 packages/fs-io/fs-io.3.23.0~alpha2/opam            | 39 +++++++++++
 packages/ocamlc-loc/ocamlc-loc.3.23.0~alpha2/opam  | 43 ++++++++++++
 packages/ordering/ordering.3.23.0~alpha2/opam      | 38 ++++++++++
 packages/stdune/stdune.3.23.0~alpha2/opam          | 46 +++++++++++++
 .../top-closure/top-closure.3.23.0~alpha2/opam     | 38 ++++++++++
 packages/xdg/xdg.3.23.0~alpha2/opam                | 39 +++++++++++
 18 files changed, 801 insertions(+)
 create mode 100644 packages/chrome-trace/chrome-trace.3.23.0~alpha2/opam
 create mode 100644 packages/dune-action-plugin/dune-action-plugin.3.23.0~alpha2/opam
 create mode 100644 packages/dune-action-trace/dune-action-trace.3.23.0~alpha2/opam
 create mode 100644 packages/dune-build-info/dune-build-info.3.23.0~alpha2/opam
 create mode 100644 packages/dune-configurator/dune-configurator.3.23.0~alpha2/opam
 create mode 100644 packages/dune-glob/dune-glob.3.23.0~alpha2/opam
 create mode 100644 packages/dune-private-libs/dune-private-libs.3.23.0~alpha2/opam
 create mode 100644 packages/dune-rpc-lwt/dune-rpc-lwt.3.23.0~alpha2/opam
 create mode 100644 packages/dune-rpc/dune-rpc.3.23.0~alpha2/opam
 create mode 100644 packages/dune-site/dune-site.3.23.0~alpha2/opam
 create mode 100644 packages/dune/dune.3.23.0~alpha2/opam
 create mode 100644 packages/dyn/dyn.3.23.0~alpha2/opam
 create mode 100644 packages/fs-io/fs-io.3.23.0~alpha2/opam
 create mode 100644 packages/ocamlc-loc/ocamlc-loc.3.23.0~alpha2/opam
 create mode 100644 packages/ordering/ordering.3.23.0~alpha2/opam
 create mode 100644 packages/stdune/stdune.3.23.0~alpha2/opam
 create mode 100644 packages/top-closure/top-closure.3.23.0~alpha2/opam
 create mode 100644 packages/xdg/xdg.3.23.0~alpha2/opam

(from ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353' locally
docker.io/ocaml/opam@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353: Pulling from ocaml/opam
3b32e3bb7338: Already exists
745aa02d649b: Already exists
bc737f5d3c43: Already exists
435aae15a5aa: Already exists
0c18c39f6bae: Already exists
eef74b82df23: Already exists
f7d9cf0406d8: Already exists
01a1dc37e798: Already exists
4960811e07ec: Already exists
be2894c36d5e: Already exists
b5a017ae191d: Already exists
3ba39ce4e9c9: Already exists
1db570dbe1c8: Already exists
753bb4b44994: Already exists
b5a1e811909d: Already exists
6f3d83ba47b6: Already exists
002305272cbf: Already exists
002305272cbf: Already exists
249535cd82cd: Already exists
87fe8c2a0989: Already exists
b6932f04a343: Already exists
17b274223ca8: Already exists
4f4fb700ef54: Already exists
924952a8fbf8: Already exists
17671b650f63: Already exists
9fe75d873195: Already exists
24216535046d: Already exists
ac2e1c9e90df: Already exists
c2126be13b26: Already exists
01ff22a5eb70: Already exists
50415235a68f: Already exists
deb6182b549b: Already exists
ad728fb9a18c: Already exists
a36bcae85a3d: Already exists
1c746fdc6a3a: Already exists
4351b787b295: Already exists
380abb093977: Already exists
0fc1b10f3fd9: Already exists
966bc35978c3: Already exists
ae53b61ccb9e: Already exists
d8ada9072f1a: Already exists
70f923473ca1: Already exists
df81036acc4a: Already exists
1b9253ea29a0: Already exists
14d08e4f5c89: Already exists
Digest: sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353
Status: Downloaded newer image for ocaml/opam@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353
2026-04-30 03:30.37 ---> using "59750879172620501422dd230c4db220684ca7fe3e97409754eb72dcd3390183" 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-04-30 03:30.37 ---> using "b9ebb375f27da820f646269f579489455309b96c19083cd92f7f6ddd05a4b5f2" 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
2026-04-30 03:30.37 ---> using "a861010f9e8d58738e62217a8c0fc067b85ae67b915e1ef93e08d814bb3c914c" 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.1
# 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                 71
# repositories         1 (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-30 03:30.37 ---> using "a880c606232c92d84d818c349c45696fe9be139917bfa5f7b1065b497e8df441" 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-04-30 03:30.37 ---> using "47c085e53aa5880966ff9fc1e1e12a4661255166181f7931a397db06034201cf" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-04-30 03:30.39 ---> using "4f46738dfb91aa0cd6670022d574de26b7ba05050d8f85957ea4872d96399e01" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-30 03:30.39 ---> using "f445e8c26fbca2dd0e343fb9cad949aab8e50ebe8f19361a10c799b6322ab39c" from cache

/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 [129 kB]
- Fetched 219 kB in 0s (2095 kB/s)
- Reading package lists...
2026-04-30 03:30.39 ---> using "b966a5b49a15ba3eb63ca44315c18e89b0e8b1ab5327a74622eb8f27705503f7" from cache

/home/opam: (run (shell "opam pin add -k version -yn dyn.3.23.0~alpha2 3.23.0~alpha2"))
dyn is now pinned to version 3.23.0~alpha2
2026-04-30 03:30.39 ---> using "1b940b3804ca89a2239613be439126da48ada497eb132ef1d35a95d03a607cd8" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dyn.3.23.0~alpha2;\
                        \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\" != 'dyn.3.23.0~alpha2' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
dyn.3.23.0~alpha2 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 4 packages
  - install dune     3.23.0~alpha2          [required by dyn]
  - install dyn      3.23.0~alpha2 (pinned)
  - install ordering 3.23.0~alpha2          [required by dyn]
  - install pp       2.0.0                  [required by dyn]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.23.0~alpha2, dyn.3.23.0~alpha2, ordering.3.23.0~alpha2  (cached)
-> retrieved pp.2.0.0  (cached)
-> installed dune.3.23.0~alpha2
-> installed pp.2.0.0
-> installed ordering.3.23.0~alpha2
-> installed dyn.3.23.0~alpha2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 03:30.39 ---> using "bd8db15c5caac115e1815f776dabb5b44eec3ef16cff80647f2a70e3b483d6a9" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dkml-install-installer.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 \"\\\"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\" != 'dkml-install-installer.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"))
dkml-install-installer.0.1.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 45 packages
  - install astring                0.8.5         [required by dkml-install-installer]
  - install base                   v0.16.5       [required by ppx_expect]
  - install bos                    0.2.1         [required by dkml-install-installer]
  - install cmdliner               1.3.0         [required by dkml-install-installer]
  - install cppo                   1.8.0         [required by ppx_deriving]
  - install crunch                 4.0.0         [required by dkml-install-installer]
  - install csexp                  1.5.2         [required by dune-configurator]
  - install diskuvbox              0.2.0         [required by dkml-install-runner]
  - install dkml-install           0.1.0         [required by dkml-install-installer]
  - install dkml-install-installer 0.1.0
  - install dkml-install-runner    0.1.0         [required by dkml-install-installer]
  - install dune-configurator      3.23.0~alpha2 [required by base]
  - install fmt                    0.11.0        [required by dkml-install-installer]
  - install fpath                  0.7.3         [required by bos]
  - install jane-street-headers    v0.16.0       [required by time_now]
  - install jst-config             v0.16.0       [required by time_now]
  - install logs                   0.10.0        [required by dkml-install-installer]
  - install ocaml-compiler-libs    v0.12.4       [required by ppxlib]
  - install ocamlbuild             0.16.1        [required by astring, bos]
  - install ocamlfind              1.9.8         [required by astring, bos]
  - install ppx_assert             v0.16.0       [required by jst-config]
  - install ppx_base               v0.16.0       [required by time_now]
  - install ppx_cold               v0.16.0       [required by ppx_base]
  - install ppx_compare            v0.16.0       [required by ppx_base]
  - install ppx_derivers           1.2.1         [required by ppx_deriving]
  - install ppx_deriving           6.0.3         [required by dkml-install]
  - install ppx_enumerate          v0.16.0       [required by ppx_base]
  - install ppx_expect             v0.16.2       [required by dkml-install-runner]
  - install ppx_globalize          v0.16.0       [required by ppx_base]
  - install ppx_hash               v0.16.0       [required by ppx_base]
  - install ppx_here               v0.16.0       [required by ppx_expect]
  - install ppx_inline_test        v0.16.1       [required by ppx_expect]
  - install ppx_optcomp            v0.16.0       [required by time_now]
  - install ppx_sexp_conv          v0.16.0       [required by ppx_base]
  - install ppxlib                 0.35.0        [required by ppx_deriving, ppx_expect]
  - install ptime                  1.2.0         [required by crunch]
  - install re                     1.14.0        [required by ppx_expect]
  - install result                 1.5           [required by dkml-install]
  - install rresult                0.7.0         [required by bos]
  - install sexplib0               v0.16.0       [required by ppxlib, base]
  - install stdio                  v0.16.0       [required by ppx_expect]
  - install stdlib-shims           0.3.0         [required by ppxlib]
  - install time_now               v0.16.0       [required by ppx_inline_test]
  - install topkg                  1.1.1         [required by astring, bos]
  - install tsort                  2.2.0         [required by dkml-install]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved astring.0.8.5  (cached)
-> retrieved base.v0.16.5  (cached)
-> retrieved bos.0.2.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> retrieved cppo.1.8.0  (cached)
-> retrieved crunch.4.0.0  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved diskuvbox.0.2.0  (cached)
-> retrieved dkml-install.0.1.0, dkml-install-installer.0.1.0, dkml-install-runner.0.1.0  (cached)
-> installed csexp.1.5.2
-> installed cppo.1.8.0
-> retrieved dune-configurator.3.23.0~alpha2  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved jane-street-headers.v0.16.0  (cached)
-> retrieved jst-config.v0.16.0  (cached)
-> retrieved logs.0.10.0  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> installed cmdliner.1.3.0
-> installed jane-street-headers.v0.16.0
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ppx_assert.v0.16.0  (cached)
-> retrieved ppx_base.v0.16.0  (cached)
-> retrieved ppx_cold.v0.16.0  (cached)
-> retrieved ppx_compare.v0.16.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppx_deriving.6.0.3  (cached)
-> retrieved ppx_enumerate.v0.16.0  (cached)
-> retrieved ppx_expect.v0.16.2  (cached)
-> retrieved ppx_globalize.v0.16.0  (cached)
-> retrieved ppx_hash.v0.16.0  (cached)
-> retrieved ppx_here.v0.16.0  (cached)
-> retrieved ppx_inline_test.v0.16.1  (cached)
-> retrieved ppx_optcomp.v0.16.0  (cached)
-> retrieved ppx_sexp_conv.v0.16.0  (cached)
-> installed ppx_derivers.1.2.1
-> installed dune-configurator.3.23.0~alpha2
-> retrieved ppxlib.0.35.0  (cached)
-> retrieved ptime.1.2.0  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved result.1.5  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved sexplib0.v0.16.0  (cached)
-> retrieved stdio.v0.16.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved time_now.v0.16.0  (cached)
-> retrieved topkg.1.1.1  (cached)
-> retrieved tsort.2.2.0  (cached)
-> installed result.1.5
-> installed stdlib-shims.0.3.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed tsort.2.2.0
-> installed sexplib0.v0.16.0
-> installed re.1.14.0
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed base.v0.16.5
-> installed stdio.v0.16.0
-> installed topkg.1.1.1
-> installed rresult.0.7.0
-> installed ptime.1.2.0
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed crunch.4.0.0
-> installed logs.0.10.0
-> installed fpath.0.7.3
-> installed bos.0.2.1
-> installed ppxlib.0.35.0
-> installed ppx_globalize.v0.16.0
-> installed ppx_optcomp.v0.16.0
-> installed ppx_cold.v0.16.0
-> installed ppx_here.v0.16.0
-> installed ppx_enumerate.v0.16.0
-> installed ppx_compare.v0.16.0
-> installed ppx_deriving.6.0.3
-> installed ppx_sexp_conv.v0.16.0
-> installed dkml-install.0.1.0
-> installed diskuvbox.0.2.0
-> installed ppx_hash.v0.16.0
-> installed ppx_assert.v0.16.0
-> installed ppx_base.v0.16.0
-> installed jst-config.v0.16.0
-> installed time_now.v0.16.0
-> installed ppx_inline_test.v0.16.1
-> installed ppx_expect.v0.16.2
-> installed dkml-install-runner.0.1.0
-> installed dkml-install-installer.0.1.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 03:32.38 ---> saved as "c8ed29263ae28e967273024b5e19ed57d921011b58d5b26ba33a56ec27819c76"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test dkml-install-installer.0.1.0) || true"))
The following actions will be performed:
=== recompile 1 package
  - recompile dkml-install-installer 0.1.0
=== install 3 packages
  - install   alcotest               1.9.1 [required by dkml-install-installer]
  - install   ocaml-syntax-shims     1.0.0 [required by alcotest]
  - install   uutf                   1.0.4 [required by alcotest]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved dkml-install-installer.0.1.0  (https://opam.ocaml.org/cache)
-> retrieved ocaml-syntax-shims.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved uutf.1.0.4  (https://opam.ocaml.org/cache)
-> installed ocaml-syntax-shims.1.0.0
-> removed   dkml-install-installer.0.1.0
-> installed uutf.1.0.4
-> installed alcotest.1.9.1
-> installed dkml-install-installer.0.1.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 03:32.56 ---> saved as "4befc9e0ed4badb4b2bcaa80ce06f4fab26aac64bc175e21ae7fba47015cb398"

/home/opam: (run (shell  "opam reinstall --with-test --verbose dkml-install-installer.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 \"\\\"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\" != 'dkml-install-installer.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"))
The following actions will be performed:
=== recompile 1 package
  - recompile dkml-install-installer 0.1.0

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/4: [dkml-install-installer.0.1.0: extract]
-> retrieved dkml-install-installer.0.1.0  (cached)
Processing  2/4: [dkml-install-installer: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "dkml-install-installer" "-j" "71" "--promote-install-files=false" "@install" "@runtest" (CWD=/home/opam/.opam/4.14/.opam-switch/build/dkml-install-installer.0.1.0)
- (cd _build/default/installer/ml-generator && /home/opam/.opam/4.14/bin/ocaml-crunch -m plain -e ml -e manifest -o code.ml code/)
- Generating code.ml
- Skipping generation of .mli
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I installer/dune-generator/.main.eobjs/byte -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bos -I /home/opam/.opam/4.14/lib/cmdliner -I /home/opam/.opam/4.14/lib/findlib -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/fmt/cli -I /home/opam/.opam/4.14/lib/fmt/tty -I /home/opam/.opam/4.14/lib/fpath -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/logs/cli -I /home/opam/.opam/4.14/lib/logs/fmt -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/sexplib0 -I installer/common-generator/.common_installer_generator.objs/byte -no-alias-deps -open Dune__exe -o installer/dune-generator/.main.eobjs/byte/dune__exe__Main.cmo -c -impl installer/dune-generator/main.ml)
- File "installer/dune-generator/main.ml", line 249, characters 8-12:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-               ^^^^
- Alert deprecated: Term.exit
- Use Stdlib.exit and Cmd.eval instead.
- File "installer/dune-generator/main.ml", line 249, characters 16-20:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-                       ^^^^
- Alert deprecated: Term.eval
- Use Cmd.v and one of Cmd.eval* instead.
- File "installer/dune-generator/main.ml", line 249, characters 30-34:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-                                     ^^^^
- Alert deprecated: Term.info
- Use Cmd.info instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I installer/ml-generator/.main.eobjs/byte -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bos -I /home/opam/.opam/4.14/lib/cmdliner -I /home/opam/.opam/4.14/lib/diskuvbox -I /home/opam/.opam/4.14/lib/dkml-install-runner -I /home/opam/.opam/4.14/lib/dkml-install/api -I /home/opam/.opam/4.14/lib/dkml-install/register -I /home/opam/.opam/4.14/lib/findlib -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/fmt/cli -I /home/opam/.opam/4.14/lib/fmt/tty -I /home/opam/.opam/4.14/lib/fpath -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/logs/cli -I /home/opam/.opam/4.14/lib/logs/fmt -I /home/opam/.opam/4.14/lib/ppx_deriving/runtime -I /home/opam/.opam/4.14/lib/re -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/tsort -I installer/common-generator/.common_installer_generator.objs/byte -I installer/ml-generator/lib/.ml_of_installer_generator_lib.objs/byte -no-alias-deps -open Dune__exe -o installer/ml-generator/.main.eobjs/byte/dune__exe__Main.cmo -c -impl installer/ml-generator/main.ml)
- File "installer/ml-generator/main.ml", line 63, characters 4-8:
- 63 |     exit
-          ^^^^
- Alert deprecated: Term.exit
- Use Stdlib.exit and Cmd.eval instead.
- File "installer/ml-generator/main.ml", line 65, characters 20-24:
- 65 |          (fun () -> eval (main_t, info "ml-of-installer-generator" ~doc)))
-                          ^^^^
- Alert deprecated: Term.eval
- Use Cmd.v and one of Cmd.eval* instead.
- File "installer/ml-generator/main.ml", line 65, characters 34-38:
- 65 |          (fun () -> eval (main_t, info "ml-of-installer-generator" ~doc)))
-                                        ^^^^
- Alert deprecated: Term.info
- Use Cmd.info instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I installer/ml-generator/.main.eobjs/byte -I installer/ml-generator/.main.eobjs/native -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bos -I /home/opam/.opam/4.14/lib/cmdliner -I /home/opam/.opam/4.14/lib/diskuvbox -I /home/opam/.opam/4.14/lib/dkml-install-runner -I /home/opam/.opam/4.14/lib/dkml-install/api -I /home/opam/.opam/4.14/lib/dkml-install/register -I /home/opam/.opam/4.14/lib/findlib -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/fmt/cli -I /home/opam/.opam/4.14/lib/fmt/tty -I /home/opam/.opam/4.14/lib/fpath -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/logs/cli -I /home/opam/.opam/4.14/lib/logs/fmt -I /home/opam/.opam/4.14/lib/ppx_deriving/runtime -I /home/opam/.opam/4.14/lib/re -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/tsort -I installer/common-generator/.common_installer_generator.objs/byte -I installer/common-generator/.common_installer_generator.objs/native -I installer/ml-generator/lib/.ml_of_installer_generator_lib.objs/byte -I installer/ml-generator/lib/.ml_of_installer_generator_lib.objs/native -intf-suffix .ml -no-alias-deps -open Dune__exe -o installer/ml-generator/.main.eobjs/native/dune__exe__Main.cmx -c -impl installer/ml-generator/main.ml)
- File "installer/ml-generator/main.ml", line 63, characters 4-8:
- 63 |     exit
-          ^^^^
- Alert deprecated: Term.exit
- Use Stdlib.exit and Cmd.eval instead.
- File "installer/ml-generator/main.ml", line 65, characters 20-24:
- 65 |          (fun () -> eval (main_t, info "ml-of-installer-generator" ~doc)))
-                          ^^^^
- Alert deprecated: Term.eval
- Use Cmd.v and one of Cmd.eval* instead.
- File "installer/ml-generator/main.ml", line 65, characters 34-38:
- 65 |          (fun () -> eval (main_t, info "ml-of-installer-generator" ~doc)))
-                                        ^^^^
- Alert deprecated: Term.info
- Use Cmd.info instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I installer/dune-generator/.main.eobjs/byte -I installer/dune-generator/.main.eobjs/native -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bos -I /home/opam/.opam/4.14/lib/cmdliner -I /home/opam/.opam/4.14/lib/findlib -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/fmt/cli -I /home/opam/.opam/4.14/lib/fmt/tty -I /home/opam/.opam/4.14/lib/fpath -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/logs/cli -I /home/opam/.opam/4.14/lib/logs/fmt -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/sexplib0 -I installer/common-generator/.common_installer_generator.objs/byte -I installer/common-generator/.common_installer_generator.objs/native -intf-suffix .ml -no-alias-deps -open Dune__exe -o installer/dune-generator/.main.eobjs/native/dune__exe__Main.cmx -c -impl installer/dune-generator/main.ml)
- File "installer/dune-generator/main.ml", line 249, characters 8-12:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-               ^^^^
- Alert deprecated: Term.exit
- Use Stdlib.exit and Cmd.eval instead.
- File "installer/dune-generator/main.ml", line 249, characters 16-20:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-                       ^^^^
- Alert deprecated: Term.eval
- Use Cmd.v and one of Cmd.eval* instead.
- File "installer/dune-generator/main.ml", line 249, characters 30-34:
- 249 |   Term.(exit @@ eval (main_t, info "dune-of-installer-generator" ~doc))
-                                     ^^^^
- Alert deprecated: Term.info
- Use Cmd.info instead.
- (cd _build/default/installer/ml-generator/tests && ./test_template.exe)
- Testing `ml_of_installer_generator_lib'.
- This run has ID `M1TSCVU3'.
- 
-   [OK]          templatized_content          0   'register ()' template repla...
-   [OK]          templatized_content          1   'target_abi' template replac...
-   [OK]          templatized_content          2   'target_abi' template with n...
- 
- Full test results in `~/.opam/4.14/.opam-switch/build/dkml-install-installer.0.1.0/_build/default/installer/ml-generator/tests/_build/_tests/ml_of_installer_generator_lib'.
- Test Successful in 0.001s. 3 tests run.
Processing  2/4: [dkml-install-installer: dune install]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "install" "-p" "dkml-install-installer" "--create-install-files" "dkml-install-installer" (CWD=/home/opam/.opam/4.14/.opam-switch/build/dkml-install-installer.0.1.0)
-> compiled  dkml-install-installer.0.1.0
-> removed   dkml-install-installer.0.1.0
-> installed dkml-install-installer.0.1.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 03:33.08 ---> saved as "18f44af4e06db4f671681c426a742106f3539fb2a6224ce40efd6290a054382f"
Job succeeded
2026-04-30 03:33.27: Job succeeded