(not at the head of any monitored branch or PR)
2026-04-30 02:05.09: New job: test dns.4.6.3 with dune-configurator.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 dune-configurator.3.23.0~alpha2 3.23.0~alpha2
RUN opam reinstall dune-configurator.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" != 'dune-configurator.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 dns.4.6.3; \
    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" != 'dns.4.6.3' && 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 dns.4.6.3) || true
RUN opam reinstall --with-test --verbose dns.4.6.3; \
    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" != 'dns.4.6.3' && 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:05.09: Using cache hint "ocaml/opam:debian-13-ocaml-4.14@sha256:9fe84ffeeaa92507d198c7af8adb382726e06ae36c031f5ef645a3241cac0353-dune-configurator.3.23.0~alpha2-dns.4.6.3-89a6ae888498500bf7c0fc05361da936fc6acacf"
2026-04-30 02:05.09: 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 dune-configurator.3.23.0~alpha2 3.23.0~alpha2"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dune-configurator.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\" != 'dune-configurator.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 dns.4.6.3;\
             \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\" != 'dns.4.6.3' && 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 dns.4.6.3) || true"))
 (run (shell  "opam reinstall --with-test --verbose dns.4.6.3;\
             \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\" != 'dns.4.6.3' && 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:05.09: Waiting for resource in pool OCluster
2026-04-30 12:11.49: Waiting for worker…
2026-04-30 12:15.15: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
All commits already cached
Updating files:  72% (13685/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)
2026-04-30 12:16.06 ---> 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 12:16.06 ---> 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 12:16.06 ---> 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 12:16.06 ---> 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 12:16.06 ---> using "47c085e53aa5880966ff9fc1e1e12a4661255166181f7931a397db06034201cf" from cache

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

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-30 12:16.07 ---> 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 1s (212 kB/s)
- Reading package lists...
2026-04-30 12:16.07 ---> using "b966a5b49a15ba3eb63ca44315c18e89b0e8b1ab5327a74622eb8f27705503f7" from cache

/home/opam: (run (shell "opam pin add -k version -yn dune-configurator.3.23.0~alpha2 3.23.0~alpha2"))
dune-configurator is now pinned to version 3.23.0~alpha2
2026-04-30 12:16.07 ---> using "9626eb3f72c6886eed38db70a806f24da7d64d25588b5416dc43cf8d67558751" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dune-configurator.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\" != 'dune-configurator.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"))
dune-configurator.3.23.0~alpha2 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 3 packages
  - install csexp             1.5.2                  [required by dune-configurator]
  - install dune              3.23.0~alpha2          [required by dune-configurator]
  - install dune-configurator 3.23.0~alpha2 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved csexp.1.5.2  (cached)
-> retrieved dune.3.23.0~alpha2, dune-configurator.3.23.0~alpha2  (cached)
-> installed dune.3.23.0~alpha2
-> installed csexp.1.5.2
-> installed dune-configurator.3.23.0~alpha2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 12:16.07 ---> using "79495b309dbba2c640b58413499799bf6eb0b6e53b5025f16354c21ab3266ac1" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dns.4.6.3;\
                        \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\" != 'dns.4.6.3' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
dns.4.6.3 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 20 packages
  - install astring         0.8.5  [required by dns]
  - install bigarray-compat 1.1.0  [required by cstruct]
  - install cstruct         6.0.1  [required by dns]
  - install dns             4.6.3
  - install domain-name     0.5.0  [required by dns]
  - install duration        0.3.1  [required by dns]
  - install fmt             0.11.0 [required by dns]
  - install gmap            0.3.0  [required by dns]
  - install ipaddr          5.6.2  [required by dns]
  - install logs            0.10.0 [required by dns]
  - install lru             0.3.1  [required by dns]
  - install macaddr         5.6.2  [required by ipaddr]
  - install metrics         0.5.0  [required by dns]
  - install ocamlbuild      0.16.1 [required by ptime, fmt, astring, etc.]
  - install ocamlfind       1.9.8  [required by ptime, fmt, astring, etc.]
  - install psq             0.2.1  [required by lru]
  - install ptime           1.2.0  [required by dns]
  - install rresult         0.7.0  [required by dns]
  - install seq             base   [required by psq]
  - install topkg           1.1.1  [required by ptime, fmt, astring, etc.]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved astring.0.8.5  (cached)
-> retrieved bigarray-compat.1.1.0  (cached)
-> retrieved cstruct.6.0.1  (cached)
-> retrieved dns.4.6.3  (cached)
-> retrieved domain-name.0.5.0  (cached)
-> retrieved duration.0.3.1  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved gmap.0.3.0  (cached)
-> retrieved ipaddr.5.6.2, macaddr.5.6.2  (cached)
-> retrieved logs.0.10.0  (cached)
-> retrieved lru.0.3.1  (cached)
-> retrieved metrics.0.5.0  (cached)
-> installed bigarray-compat.1.1.0
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> installed duration.0.3.1
-> installed domain-name.0.5.0
-> installed gmap.0.3.0
-> retrieved psq.0.2.1  (cached)
-> installed macaddr.5.6.2
-> retrieved ptime.1.2.0  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved topkg.1.1.1  (cached)
-> installed cstruct.6.0.1
-> installed psq.0.2.1
-> installed ipaddr.5.6.2
-> installed lru.0.3.1
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed rresult.0.7.0
-> installed fmt.0.11.0
-> installed ptime.1.2.0
-> installed metrics.0.5.0
-> installed astring.0.8.5
-> installed logs.0.10.0
-> installed dns.4.6.3
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 12:16.36 ---> saved as "a978627fe2022d7e4d99c841a301293aea747d8beef047dbb1b43a052cc2d7e3"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test dns.4.6.3) || true"))
The following actions will be performed:
=== recompile 4 packages
  - recompile dns                4.6.3
  - recompile fmt                0.11.0 [uses cmdliner]
  - recompile logs               0.10.0 [uses cmdliner]
  - recompile metrics            0.5.0  [uses fmt]
=== install 6 packages
  - install   alcotest           1.9.1  [required by dns]
  - install   cmdliner           2.1.1  [required by alcotest]
  - install   ocaml-syntax-shims 1.0.0  [required by alcotest]
  - install   re                 1.14.0 [required by alcotest]
  - install   stdlib-shims       0.3.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 cmdliner.2.1.1  (https://opam.ocaml.org/cache)
-> retrieved dns.4.6.3  (https://opam.ocaml.org/cache)
-> retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
-> retrieved logs.0.10.0  (https://opam.ocaml.org/cache)
-> retrieved metrics.0.5.0  (https://opam.ocaml.org/cache)
-> retrieved ocaml-syntax-shims.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved re.1.14.0  (https://opam.ocaml.org/cache)
-> retrieved stdlib-shims.0.3.0  (https://opam.ocaml.org/cache)
-> retrieved uutf.1.0.4  (https://opam.ocaml.org/cache)
-> installed stdlib-shims.0.3.0
-> installed ocaml-syntax-shims.1.0.0
-> installed re.1.14.0
-> removed   dns.4.6.3
-> removed   logs.0.10.0
-> removed   metrics.0.5.0
-> removed   fmt.0.11.0
-> installed cmdliner.2.1.1
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed metrics.0.5.0
-> installed logs.0.10.0
-> installed alcotest.1.9.1
-> installed dns.4.6.3
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 12:16.59 ---> saved as "97d0b60523593b68a1f512419f510e43e27bf99577192d9aab29472c98552efc"

/home/opam: (run (shell  "opam reinstall --with-test --verbose dns.4.6.3;\
                        \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\" != 'dns.4.6.3' && 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 dns 4.6.3

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/4: [dns.4.6.3: extract]
-> retrieved dns.4.6.3  (cached)
Processing  2/4: [dns: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "dns" "-j" "71" (CWD=/home/opam/.opam/4.14/.opam-switch/build/dns.4.6.3)
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I cache/.dns_cache.objs/byte -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bigarray-compat -I /home/opam/.opam/4.14/lib/cstruct -I /home/opam/.opam/4.14/lib/domain-name -I /home/opam/.opam/4.14/lib/duration -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/gmap -I /home/opam/.opam/4.14/lib/ipaddr -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/lru -I /home/opam/.opam/4.14/lib/macaddr -I /home/opam/.opam/4.14/lib/metrics -I /home/opam/.opam/4.14/lib/psq -I /home/opam/.opam/4.14/lib/ptime -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/seq -I src/.dns.objs/byte -intf-suffix .ml -no-alias-deps -o cache/.dns_cache.objs/byte/dns_cache.cmo -c -impl cache/dns_cache.ml)
- File "cache/dns_cache.ml", line 88, characters 24-28:
- 88 |         Fmt.(list ~sep:(unit ";@,") (pair Rr_map.ppk pp_entry))
-                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 119, characters 32-36:
- 119 | let pp = LRU.pp Fmt.(pair ~sep:(unit ": ") Domain_name.pp Entry.pp)
-                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 137, characters 24-30:
- 137 |   | `No_data ns -> Fmt.(prefix (unit "no data ") pp_ns) ppf ns
-                               ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 137, characters 32-36:
- 137 |   | `No_data ns -> Fmt.(prefix (unit "no data ") pp_ns) ppf ns
-                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 138, characters 26-32:
- 138 |   | `No_domain ns -> Fmt.(prefix (unit "no domain ") pp_ns) ppf ns
-                                 ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 138, characters 34-38:
- 138 |   | `No_domain ns -> Fmt.(prefix (unit "no domain ") pp_ns) ppf ns
-                                         ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 139, characters 26-32:
- 139 |   | `Serv_fail ns -> Fmt.(prefix (unit "serv fail ") pp_ns) ppf ns
-                                 ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 139, characters 34-38:
- 139 |   | `Serv_fail ns -> Fmt.(prefix (unit "serv fail ") pp_ns) ppf ns
-                                         ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I src/.dns.objs/byte -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bigarray-compat -I /home/opam/.opam/4.14/lib/cstruct -I /home/opam/.opam/4.14/lib/domain-name -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/gmap -I /home/opam/.opam/4.14/lib/ipaddr -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/macaddr -I /home/opam/.opam/4.14/lib/metrics -I /home/opam/.opam/4.14/lib/ptime -I /home/opam/.opam/4.14/lib/rresult -intf-suffix .ml -no-alias-deps -o src/.dns.objs/byte/dns.cmo -c -impl src/dns.ml)
- File "src/dns.ml", line 70, characters 41-49:
- 70 |     | c -> Error (`Not_implemented (off, Fmt.strf "class %X" c))
-                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 108, characters 41-49:
- 108 |     | x -> Error (`Not_implemented (off, Fmt.strf "opcode 0x%X" x))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 166, characters 41-49:
- 166 |     | x -> Error (`Not_implemented (off, Fmt.strf "rcode 0x%04X" x))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 203, characters 50-58:
- 203 |       | i when i >= 64 -> Error (`Malformed (off, Fmt.strf "label tag 0x%x" i)) (* bit patterns starting with 10 or 01 *)
-                                                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 295, characters 25-33:
- 295 |         `Malformed (off, Fmt.strf "invalid hostname %a" Domain_name.pp name))
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 745, characters 34-42:
- 745 |       (`Not_implemented (off + 2, Fmt.strf "dnskey protocol 0x%x" proto)) >>| fun () ->
-                                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 754, characters 13-24:
- 754 |     let kl = Cstruct.len t.key in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 796, characters 39-43:
- 796 |       t.critical t.tag Fmt.(list ~sep:(unit "; ") string) t.value
-                                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 811, characters 35-43:
- 811 |       (`Not_implemented (succ off, Fmt.strf "caa tag 0x%x" tl)) >>= fun () ->
-                                          ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 961, characters 12-23:
- 961 |     let l = Cstruct.len tlsa.data in
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1059, characters 12-23:
- 1059 |     let l = Cstruct.len sshfp.fingerprint in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1152, characters 17-25:
- 1152 |          let m = Fmt.strf "algorithm name %a" Domain_name.pp b in
-                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1178, characters 30-38:
- 1178 |       Error (`Malformed (off, Fmt.strf "timestamp does not fit in time range %Ld" s))
-                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1184, characters 44-52:
- 1184 |           | None -> Error (`Malformed (off, Fmt.strf "span does not fit into timestamp %Ld" s))
-                                                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1186, characters 40-48:
- 1186 |       | None -> Error (`Malformed (off, Fmt.strf "timestamp does not fit %Ld" s))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1237, characters 25-29:
- 1237 |       Fmt.(option ~none:(unit "none") (Ptime.pp_rfc3339 ())) t.other
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1251, characters 11-22:
- 1251 |     guard (Cstruct.len buf - off >= 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1253, characters 39-47:
- 1253 |     guard (ttl = 0l) (`Malformed (off, Fmt.strf "tsig ttl is not zero %lu" ttl)) >>= fun () ->
-                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1256, characters 11-22:
- 1256 |     guard (Cstruct.len buf - rdata_start >= len) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1259, characters 11-22:
- 1259 |     guard (Cstruct.len buf - off' >= 10) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1264, characters 11-22:
- 1264 |     guard (Cstruct.len buf - off' >= 10 + mac_len + 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1272, characters 11-22:
- 1272 |     guard (Cstruct.len buf >= rdata_end) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1322, characters 18-29:
- 1322 |     let mac_len = Cstruct.len t.mac in
-                          ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1380, characters 16-27:
- 1380 |       let len = Cstruct.len t.mac in
-                        ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1390, characters 35-46:
- 1390 |       Cstruct.BE.set_uint16 buf 0 (Cstruct.len rdata) ;
-                                           ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1418, characters 70-74:
- 1418 |     | Tcp_keepalive i -> Fmt.pf ppf "keepalive %a" Fmt.(option ~none:(unit "none") int) i
-                                                                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1465, characters 12-23:
- 1465 |     let l = Cstruct.len v in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1486, characters 46-54:
- 1486 |          | _ -> Error (`Not_implemented (off, Fmt.strf "edns keepalive 0x%x" tl))
-                                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1536, characters 23-27:
- 1536 |            (list ~sep:(unit ", ") pp_extension) opt.extensions)
-                               ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1553, characters 11-22:
- 1553 |     guard (Cstruct.len buf - off >= 11) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1916, characters 30-41:
- 1916 |       let buf = Bytes.create (Cstruct.len cs * 2) in
-                                      ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1917, characters 25-36:
- 1917 |       for i = 0 to pred (Cstruct.len cs) do
-                                 ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1945, characters 31-37:
- 1945 |     let ttl_fmt = Fmt.(option (suffix (unit "\t") uint32)) in
-                                       ^^^^^^
- Alert deprecated: Fmt.suffix
- use Fmt.(++) instead.
- File "src/dns.ml", line 1945, characters 39-43:
- 1945 |     let ttl_fmt = Fmt.(option (suffix (unit "\t") uint32)) in
-                                               ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1950, characters 10-18:
- 1950 |         [ Fmt.strf "%s\t%aCNAME\t%s" str_name ttl_fmt (ttl_opt ttl) (name alias) ]
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1953, characters 12-20:
- 1953 |             Fmt.strf "%s\t%aMX\t%u\t%s" str_name ttl_fmt (ttl_opt ttl) preference (name mail_exchange) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1957, characters 12-20:
- 1957 |             Fmt.strf "%s\t%aNS\t%s" str_name ttl_fmt (ttl_opt ttl) (name ns) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1960, characters 10-18:
- 1960 |         [ Fmt.strf "%s\t%aPTR\t%s" str_name ttl_fmt (ttl_opt ttl) (name ptr) ]
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1962, characters 10-18:
- 1962 |         [ Fmt.strf "%s\t%aSOA\t%s\t%s\t%lu\t%lu\t%lu\t%lu\t%lu" str_name
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1970, characters 12-20:
- 1970 |             Fmt.strf "%s\t%aTXT\t\"%s\"" str_name ttl_fmt (ttl_opt ttl) txt :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1974, characters 10-18:
- 1974 |           Fmt.strf "%s\t%aA\t%s" str_name ttl_fmt (ttl_opt ttl) (Ipaddr.V4.to_string ip) :: acc)
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1978, characters 12-20:
- 1978 |             Fmt.strf "%s\t%aAAAA\t%s" str_name ttl_fmt (ttl_opt ttl) (Ipaddr.V6.to_string ip) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1982, characters 12-20:
- 1982 |             Fmt.strf "%s\t%aSRV\t%u\t%u\t%u\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1989, characters 12-20:
- 1989 |             Fmt.strf "%s%a\tDNSKEY\t%u\t3\t%d\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1997, characters 12-20:
- 1997 |             Fmt.strf "%s\t%aCAA\t%s\t%s\t\"%s\""
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2004, characters 12-20:
- 2004 |             Fmt.strf "%s\t%aTLSA\t%u\t%u\t%u\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2013, characters 12-20:
- 2013 |             Fmt.strf "%s\t%aSSHFP\t%u\t%u\t%s" str_name ttl_fmt (ttl_opt ttl)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2020, characters 12-20:
- 2020 |             Fmt.strf "%s\t%aTYPE%d\t\\# %d %s" str_name ttl_fmt (ttl_opt ttl)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2165, characters 11-22:
- 2165 |     guard (Cstruct.len buf - off >= 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2171, characters 24-32:
- 2171 |       (`Malformed (off, Fmt.strf "bad TTL (high bit set) %lu" ttl)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2172, characters 11-22:
- 2172 |     guard (Cstruct.len buf - rdata_start >= len) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2174, characters 28-36:
- 2174 |       (`Malformed (off + 4, Fmt.strf "length %d exceeds maximum rdata size" len)) >>= fun () ->
-                                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2236, characters 24-28:
- 2236 |         Fmt.(list ~sep:(unit "@.") string) ppf
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 2350, characters 24-28:
- 2350 |         Fmt.(list ~sep:(unit ", ") Flag.pp) (Flags.elements flags)
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 2374, characters 13-24:
- 2374 |       guard (Cstruct.len buf >= len) `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2485, characters 11-22:
- 2485 |     guard (Cstruct.len buf - off >= 4) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2542, characters 18-26:
- 2542 |         let msg = Fmt.strf "bad RRTYp in question %a" Rr_map.pp_rr typ in
-                          ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2548, characters 40-48:
- 2548 |           Error (`Not_implemented (off, Fmt.strf "bad class in question 0x%x" c))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2567, characters 30-38:
- 2567 |       (`Not_implemented (off, Fmt.strf "rr class not IN 0x%x" clas)) >>= fun () ->
-                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2573, characters 36-44:
- 2573 |       Error (`Not_implemented (off, Fmt.strf "unexpected RR typ %a"
-                                            ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2608, characters 26-34:
- 2608 |         (`Malformed (off, Fmt.strf "tsig class must be ANY 0x%x" clas)) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2613, characters 26-34:
- 2613 |         (`Malformed (off, Fmt.strf "additional class must be IN 0x%x" clas)) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2616, characters 35-43:
- 2616 |     | _ -> Error (`Malformed (off, Fmt.strf "decode additional, unexpected rr %a"
-                                           ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2718, characters 24-32:
- 2718 |         (`Malformed (6, Fmt.strf "AXFR needs at least one RRs in answer %d" ancount)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2873, characters 24-32:
- 2873 |         (`Malformed (6, Fmt.strf "IXFR needs at least one RRs in answer %d" ancount)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2976, characters 13-24:
- 2976 |       guard (Cstruct.len buf >= off') `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2978, characters 41-49:
- 2978 |       guard (ttl = 0l) (`Malformed (off, Fmt.strf "prereq TTL not zero %lu" ttl)) >>= fun () ->
-                                                 ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2980, characters 54-62:
- 2980 |       let r0 = guard (rlen = 0) (`Malformed (off + 4, Fmt.strf "prereq rdlength must be zero %d" rlen)) in
-                                                              ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2990, characters 37-45:
- 2990 |       | _ -> Error (`Malformed (off, Fmt.strf "prereq bad class 0x%x or typ %a"
-                                             ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3045, characters 13-24:
- 3045 |       guard (Cstruct.len buf >= off') `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3048, characters 54-62:
- 3048 |       let r0 = guard (rlen = 0) (`Malformed (off + 4, Fmt.strf "update rdlength must be zero %d" rlen)) in
-                                                              ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3049, characters 52-60:
- 3049 |       let ttl0 = guard (ttl = 0l) (`Malformed (off, Fmt.strf "update ttl must be zero %lu" ttl)) in
-                                                            ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3067, characters 37-45:
- 3067 |       | _ -> Error (`Malformed (off, Fmt.strf "bad update class 0x%x" cls))
-                                             ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3103, characters 24-28:
- 3103 |         Fmt.(list ~sep:(unit ";@ ")
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3104, characters 27-31:
- 3104 |                (pair ~sep:(unit ":") Domain_name.pp
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3105, characters 30-34:
- 3105 |                   (list ~sep:(unit ", ") pp_prereq)))
-                                      ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3107, characters 24-28:
- 3107 |         Fmt.(list ~sep:(unit ";@ ")
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3108, characters 27-31:
- 3108 |                (pair ~sep:(unit ":") Domain_name.pp
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3109, characters 30-34:
- 3109 |                   (list ~sep:(unit ", ") pp_update)))
-                                      ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3122, characters 26-34:
- 3122 |         (`Malformed (off, Fmt.strf "update question not SOA %a" Rr_map.pp_rr (snd question))) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3159, characters 63-67:
- 3159 |     | `Notify soa -> Fmt.pf ppf "notify %a" Fmt.(option ~none:(unit "no") Soa.pp) soa
-                                                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3206, characters 27-31:
- 3206 |         Fmt.(option ~none:(unit "no data") Answer.pp) q
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3277, characters 25-29:
- 3277 |       Fmt.(option ~none:(unit "no") Edns.pp) t.edns
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3278, characters 25-29:
- 3278 |       Fmt.(option ~none:(unit "no") pp_tsig) t.tsig
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3335, characters 10-21:
- 3335 |       (if Cstruct.len buf > off then
-                  ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3336, characters 17-28:
- 3336 |          let n = Cstruct.len buf - off in
-                         ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3395, characters 45-53:
- 3395 |           | x -> Error (`Not_implemented (2, Fmt.strf "unsupported opcode %a" Opcode.pp x))
-                                                     ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3402, characters 55-63:
- 3402 |                   guard (au_count = 0) (`Malformed (8, Fmt.strf "AXFR with aucount %d > 0" au_count)) >>= fun () ->
-                                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3406, characters 55-63:
- 3406 |                   guard (au_count = 0) (`Malformed (8, Fmt.strf "IXFR with aucount %d > 0" au_count)) >>= fun () ->
-                                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3421, characters 47-55:
- 3421 |             | x -> Error (`Not_implemented (2, Fmt.strf "unsupported opcode %a"
-                                                       ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3553, characters 10-21:
- 3553 |           Cstruct.len buf, true
-                  ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3601, characters 7-18:
- 3601 |     if Cstruct.len buf < 12 then
-               ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I src/.dns.objs/byte -I src/.dns.objs/native -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bigarray-compat -I /home/opam/.opam/4.14/lib/cstruct -I /home/opam/.opam/4.14/lib/domain-name -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/gmap -I /home/opam/.opam/4.14/lib/ipaddr -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/macaddr -I /home/opam/.opam/4.14/lib/metrics -I /home/opam/.opam/4.14/lib/ptime -I /home/opam/.opam/4.14/lib/rresult -intf-suffix .ml -no-alias-deps -o src/.dns.objs/native/dns.cmx -c -impl src/dns.ml)
- File "src/dns.ml", line 70, characters 41-49:
- 70 |     | c -> Error (`Not_implemented (off, Fmt.strf "class %X" c))
-                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 108, characters 41-49:
- 108 |     | x -> Error (`Not_implemented (off, Fmt.strf "opcode 0x%X" x))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 166, characters 41-49:
- 166 |     | x -> Error (`Not_implemented (off, Fmt.strf "rcode 0x%04X" x))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 203, characters 50-58:
- 203 |       | i when i >= 64 -> Error (`Malformed (off, Fmt.strf "label tag 0x%x" i)) (* bit patterns starting with 10 or 01 *)
-                                                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 295, characters 25-33:
- 295 |         `Malformed (off, Fmt.strf "invalid hostname %a" Domain_name.pp name))
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 745, characters 34-42:
- 745 |       (`Not_implemented (off + 2, Fmt.strf "dnskey protocol 0x%x" proto)) >>| fun () ->
-                                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 754, characters 13-24:
- 754 |     let kl = Cstruct.len t.key in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 796, characters 39-43:
- 796 |       t.critical t.tag Fmt.(list ~sep:(unit "; ") string) t.value
-                                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 811, characters 35-43:
- 811 |       (`Not_implemented (succ off, Fmt.strf "caa tag 0x%x" tl)) >>= fun () ->
-                                          ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 961, characters 12-23:
- 961 |     let l = Cstruct.len tlsa.data in
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1059, characters 12-23:
- 1059 |     let l = Cstruct.len sshfp.fingerprint in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1152, characters 17-25:
- 1152 |          let m = Fmt.strf "algorithm name %a" Domain_name.pp b in
-                         ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1178, characters 30-38:
- 1178 |       Error (`Malformed (off, Fmt.strf "timestamp does not fit in time range %Ld" s))
-                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1184, characters 44-52:
- 1184 |           | None -> Error (`Malformed (off, Fmt.strf "span does not fit into timestamp %Ld" s))
-                                                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1186, characters 40-48:
- 1186 |       | None -> Error (`Malformed (off, Fmt.strf "timestamp does not fit %Ld" s))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1237, characters 25-29:
- 1237 |       Fmt.(option ~none:(unit "none") (Ptime.pp_rfc3339 ())) t.other
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1251, characters 11-22:
- 1251 |     guard (Cstruct.len buf - off >= 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1253, characters 39-47:
- 1253 |     guard (ttl = 0l) (`Malformed (off, Fmt.strf "tsig ttl is not zero %lu" ttl)) >>= fun () ->
-                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1256, characters 11-22:
- 1256 |     guard (Cstruct.len buf - rdata_start >= len) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1259, characters 11-22:
- 1259 |     guard (Cstruct.len buf - off' >= 10) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1264, characters 11-22:
- 1264 |     guard (Cstruct.len buf - off' >= 10 + mac_len + 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1272, characters 11-22:
- 1272 |     guard (Cstruct.len buf >= rdata_end) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1322, characters 18-29:
- 1322 |     let mac_len = Cstruct.len t.mac in
-                          ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1380, characters 16-27:
- 1380 |       let len = Cstruct.len t.mac in
-                        ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1390, characters 35-46:
- 1390 |       Cstruct.BE.set_uint16 buf 0 (Cstruct.len rdata) ;
-                                           ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1418, characters 70-74:
- 1418 |     | Tcp_keepalive i -> Fmt.pf ppf "keepalive %a" Fmt.(option ~none:(unit "none") int) i
-                                                                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1465, characters 12-23:
- 1465 |     let l = Cstruct.len v in
-                    ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1486, characters 46-54:
- 1486 |          | _ -> Error (`Not_implemented (off, Fmt.strf "edns keepalive 0x%x" tl))
-                                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1536, characters 23-27:
- 1536 |            (list ~sep:(unit ", ") pp_extension) opt.extensions)
-                               ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1553, characters 11-22:
- 1553 |     guard (Cstruct.len buf - off >= 11) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1916, characters 30-41:
- 1916 |       let buf = Bytes.create (Cstruct.len cs * 2) in
-                                      ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1917, characters 25-36:
- 1917 |       for i = 0 to pred (Cstruct.len cs) do
-                                 ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 1945, characters 31-37:
- 1945 |     let ttl_fmt = Fmt.(option (suffix (unit "\t") uint32)) in
-                                       ^^^^^^
- Alert deprecated: Fmt.suffix
- use Fmt.(++) instead.
- File "src/dns.ml", line 1945, characters 39-43:
- 1945 |     let ttl_fmt = Fmt.(option (suffix (unit "\t") uint32)) in
-                                               ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 1950, characters 10-18:
- 1950 |         [ Fmt.strf "%s\t%aCNAME\t%s" str_name ttl_fmt (ttl_opt ttl) (name alias) ]
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1953, characters 12-20:
- 1953 |             Fmt.strf "%s\t%aMX\t%u\t%s" str_name ttl_fmt (ttl_opt ttl) preference (name mail_exchange) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1957, characters 12-20:
- 1957 |             Fmt.strf "%s\t%aNS\t%s" str_name ttl_fmt (ttl_opt ttl) (name ns) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1960, characters 10-18:
- 1960 |         [ Fmt.strf "%s\t%aPTR\t%s" str_name ttl_fmt (ttl_opt ttl) (name ptr) ]
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1962, characters 10-18:
- 1962 |         [ Fmt.strf "%s\t%aSOA\t%s\t%s\t%lu\t%lu\t%lu\t%lu\t%lu" str_name
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1970, characters 12-20:
- 1970 |             Fmt.strf "%s\t%aTXT\t\"%s\"" str_name ttl_fmt (ttl_opt ttl) txt :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1974, characters 10-18:
- 1974 |           Fmt.strf "%s\t%aA\t%s" str_name ttl_fmt (ttl_opt ttl) (Ipaddr.V4.to_string ip) :: acc)
-                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1978, characters 12-20:
- 1978 |             Fmt.strf "%s\t%aAAAA\t%s" str_name ttl_fmt (ttl_opt ttl) (Ipaddr.V6.to_string ip) :: acc)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1982, characters 12-20:
- 1982 |             Fmt.strf "%s\t%aSRV\t%u\t%u\t%u\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1989, characters 12-20:
- 1989 |             Fmt.strf "%s%a\tDNSKEY\t%u\t3\t%d\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 1997, characters 12-20:
- 1997 |             Fmt.strf "%s\t%aCAA\t%s\t%s\t\"%s\""
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2004, characters 12-20:
- 2004 |             Fmt.strf "%s\t%aTLSA\t%u\t%u\t%u\t%s"
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2013, characters 12-20:
- 2013 |             Fmt.strf "%s\t%aSSHFP\t%u\t%u\t%s" str_name ttl_fmt (ttl_opt ttl)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2020, characters 12-20:
- 2020 |             Fmt.strf "%s\t%aTYPE%d\t\\# %d %s" str_name ttl_fmt (ttl_opt ttl)
-                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2165, characters 11-22:
- 2165 |     guard (Cstruct.len buf - off >= 6) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2171, characters 24-32:
- 2171 |       (`Malformed (off, Fmt.strf "bad TTL (high bit set) %lu" ttl)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2172, characters 11-22:
- 2172 |     guard (Cstruct.len buf - rdata_start >= len) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2174, characters 28-36:
- 2174 |       (`Malformed (off + 4, Fmt.strf "length %d exceeds maximum rdata size" len)) >>= fun () ->
-                                    ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2236, characters 24-28:
- 2236 |         Fmt.(list ~sep:(unit "@.") string) ppf
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 2350, characters 24-28:
- 2350 |         Fmt.(list ~sep:(unit ", ") Flag.pp) (Flags.elements flags)
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 2374, characters 13-24:
- 2374 |       guard (Cstruct.len buf >= len) `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2485, characters 11-22:
- 2485 |     guard (Cstruct.len buf - off >= 4) `Partial >>= fun () ->
-                   ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2542, characters 18-26:
- 2542 |         let msg = Fmt.strf "bad RRTYp in question %a" Rr_map.pp_rr typ in
-                          ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2548, characters 40-48:
- 2548 |           Error (`Not_implemented (off, Fmt.strf "bad class in question 0x%x" c))
-                                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2567, characters 30-38:
- 2567 |       (`Not_implemented (off, Fmt.strf "rr class not IN 0x%x" clas)) >>= fun () ->
-                                      ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2573, characters 36-44:
- 2573 |       Error (`Not_implemented (off, Fmt.strf "unexpected RR typ %a"
-                                            ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2608, characters 26-34:
- 2608 |         (`Malformed (off, Fmt.strf "tsig class must be ANY 0x%x" clas)) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2613, characters 26-34:
- 2613 |         (`Malformed (off, Fmt.strf "additional class must be IN 0x%x" clas)) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2616, characters 35-43:
- 2616 |     | _ -> Error (`Malformed (off, Fmt.strf "decode additional, unexpected rr %a"
-                                           ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2718, characters 24-32:
- 2718 |         (`Malformed (6, Fmt.strf "AXFR needs at least one RRs in answer %d" ancount)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2873, characters 24-32:
- 2873 |         (`Malformed (6, Fmt.strf "IXFR needs at least one RRs in answer %d" ancount)) >>= fun () ->
-                                ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2976, characters 13-24:
- 2976 |       guard (Cstruct.len buf >= off') `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 2978, characters 41-49:
- 2978 |       guard (ttl = 0l) (`Malformed (off, Fmt.strf "prereq TTL not zero %lu" ttl)) >>= fun () ->
-                                                 ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2980, characters 54-62:
- 2980 |       let r0 = guard (rlen = 0) (`Malformed (off + 4, Fmt.strf "prereq rdlength must be zero %d" rlen)) in
-                                                              ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 2990, characters 37-45:
- 2990 |       | _ -> Error (`Malformed (off, Fmt.strf "prereq bad class 0x%x or typ %a"
-                                             ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3045, characters 13-24:
- 3045 |       guard (Cstruct.len buf >= off') `Partial >>= fun () ->
-                     ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3048, characters 54-62:
- 3048 |       let r0 = guard (rlen = 0) (`Malformed (off + 4, Fmt.strf "update rdlength must be zero %d" rlen)) in
-                                                              ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3049, characters 52-60:
- 3049 |       let ttl0 = guard (ttl = 0l) (`Malformed (off, Fmt.strf "update ttl must be zero %lu" ttl)) in
-                                                            ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3067, characters 37-45:
- 3067 |       | _ -> Error (`Malformed (off, Fmt.strf "bad update class 0x%x" cls))
-                                             ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3103, characters 24-28:
- 3103 |         Fmt.(list ~sep:(unit ";@ ")
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3104, characters 27-31:
- 3104 |                (pair ~sep:(unit ":") Domain_name.pp
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3105, characters 30-34:
- 3105 |                   (list ~sep:(unit ", ") pp_prereq)))
-                                      ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3107, characters 24-28:
- 3107 |         Fmt.(list ~sep:(unit ";@ ")
-                                ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3108, characters 27-31:
- 3108 |                (pair ~sep:(unit ":") Domain_name.pp
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3109, characters 30-34:
- 3109 |                   (list ~sep:(unit ", ") pp_update)))
-                                      ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3122, characters 26-34:
- 3122 |         (`Malformed (off, Fmt.strf "update question not SOA %a" Rr_map.pp_rr (snd question))) >>= fun () ->
-                                  ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3159, characters 63-67:
- 3159 |     | `Notify soa -> Fmt.pf ppf "notify %a" Fmt.(option ~none:(unit "no") Soa.pp) soa
-                                                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3206, characters 27-31:
- 3206 |         Fmt.(option ~none:(unit "no data") Answer.pp) q
-                                   ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3277, characters 25-29:
- 3277 |       Fmt.(option ~none:(unit "no") Edns.pp) t.edns
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3278, characters 25-29:
- 3278 |       Fmt.(option ~none:(unit "no") pp_tsig) t.tsig
-                                 ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "src/dns.ml", line 3335, characters 10-21:
- 3335 |       (if Cstruct.len buf > off then
-                  ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3336, characters 17-28:
- 3336 |          let n = Cstruct.len buf - off in
-                         ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3395, characters 45-53:
- 3395 |           | x -> Error (`Not_implemented (2, Fmt.strf "unsupported opcode %a" Opcode.pp x))
-                                                     ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3402, characters 55-63:
- 3402 |                   guard (au_count = 0) (`Malformed (8, Fmt.strf "AXFR with aucount %d > 0" au_count)) >>= fun () ->
-                                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3406, characters 55-63:
- 3406 |                   guard (au_count = 0) (`Malformed (8, Fmt.strf "IXFR with aucount %d > 0" au_count)) >>= fun () ->
-                                                               ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3421, characters 47-55:
- 3421 |             | x -> Error (`Not_implemented (2, Fmt.strf "unsupported opcode %a"
-                                                       ^^^^^^^^
- Alert deprecated: Fmt.strf
- use Fmt.str instead.
- File "src/dns.ml", line 3553, characters 10-21:
- 3553 |           Cstruct.len buf, true
-                  ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- File "src/dns.ml", line 3601, characters 7-18:
- 3601 |     if Cstruct.len buf < 12 then
-               ^^^^^^^^^^^
- Alert deprecated: Cstruct.len
- len is deprecated, you should use length instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I cache/.dns_cache.objs/byte -I cache/.dns_cache.objs/native -I /home/opam/.opam/4.14/lib/astring -I /home/opam/.opam/4.14/lib/bigarray-compat -I /home/opam/.opam/4.14/lib/cstruct -I /home/opam/.opam/4.14/lib/domain-name -I /home/opam/.opam/4.14/lib/duration -I /home/opam/.opam/4.14/lib/fmt -I /home/opam/.opam/4.14/lib/gmap -I /home/opam/.opam/4.14/lib/ipaddr -I /home/opam/.opam/4.14/lib/logs -I /home/opam/.opam/4.14/lib/lru -I /home/opam/.opam/4.14/lib/macaddr -I /home/opam/.opam/4.14/lib/metrics -I /home/opam/.opam/4.14/lib/psq -I /home/opam/.opam/4.14/lib/ptime -I /home/opam/.opam/4.14/lib/rresult -I /home/opam/.opam/4.14/lib/seq -I src/.dns.objs/byte -I src/.dns.objs/native -intf-suffix .ml -no-alias-deps -o cache/.dns_cache.objs/native/dns_cache.cmx -c -impl cache/dns_cache.ml)
- File "cache/dns_cache.ml", line 88, characters 24-28:
- 88 |         Fmt.(list ~sep:(unit ";@,") (pair Rr_map.ppk pp_entry))
-                              ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 119, characters 32-36:
- 119 | let pp = LRU.pp Fmt.(pair ~sep:(unit ": ") Domain_name.pp Entry.pp)
-                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 137, characters 24-30:
- 137 |   | `No_data ns -> Fmt.(prefix (unit "no data ") pp_ns) ppf ns
-                               ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 137, characters 32-36:
- 137 |   | `No_data ns -> Fmt.(prefix (unit "no data ") pp_ns) ppf ns
-                                       ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 138, characters 26-32:
- 138 |   | `No_domain ns -> Fmt.(prefix (unit "no domain ") pp_ns) ppf ns
-                                 ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 138, characters 34-38:
- 138 |   | `No_domain ns -> Fmt.(prefix (unit "no domain ") pp_ns) ppf ns
-                                         ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
- File "cache/dns_cache.ml", line 139, characters 26-32:
- 139 |   | `Serv_fail ns -> Fmt.(prefix (unit "serv fail ") pp_ns) ppf ns
-                                 ^^^^^^
- Alert deprecated: Fmt.prefix
- use Fmt.(++) instead.
- File "cache/dns_cache.ml", line 139, characters 34-38:
- 139 |   | `Serv_fail ns -> Fmt.(prefix (unit "serv fail ") pp_ns) ppf ns
-                                         ^^^^
- Alert deprecated: Fmt.unit
- use Fmt.any instead.
Processing  2/4: [dns: dune runtest]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "runtest" "-p" "dns" "-j" "71" (CWD=/home/opam/.opam/4.14/.opam-switch/build/dns.4.6.3)
- (cd _build/default/test && ./cache.exe)
- Testing `DNS cache tests'.
- This run has ID `DGAVCRAP'.
- 
-   [OK]          cache tests          0   empty cache.
-   [OK]          cache tests          1   cache with A.
-   [OK]          cache tests          2   cache nodata.
- 
- Full test results in `~/.opam/4.14/.opam-switch/build/dns.4.6.3/_build/default/test/_build/_tests/DNS cache tests'.
- Test Successful in 0.001s. 3 tests run.
- (cd _build/default/test && ./tests.exe)
- Testing `DNS name and packet tests'.
- This run has ID `MK2PRGA6'.
- 
-   [OK]          Packet decode          0   bad query.
-   [OK]          Packet decode          1   regression0.
-   [OK]          Packet decode          2   regression1.
-   [OK]          Packet decode          3   regression2.
-   [OK]          Packet decode          4   regression4.
-   [OK]          Packet decode          5   regression5.
-   [OK]          Packet decode          6   regression6.
-   [OK]          Packet decode          7   regression7.
-   [OK]          Packet decode          8   regression8.
-   [OK]          Packet decode          9   regression9.
-   [OK]          Packet decode         10   regression10.
-   [OK]          Packet decode         11   regression11.
-   [OK]          Packet decode         12   regression12.
- 
- Full test results in `~/.opam/4.14/.opam-switch/build/dns.4.6.3/_build/default/test/_build/_tests/DNS name and packet tests'.
- Test Successful in 0.004s. 13 tests run.
-> compiled  dns.4.6.3
-> removed   dns.4.6.3
-> installed dns.4.6.3
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 12:17.10 ---> saved as "b1e9f5e4a473cce5d2b227d4fbe0a4ede1300d76e92e8893faeb0de05bc5036e"
Job succeeded
2026-04-30 12:18.35: Job succeeded