Build:
  1. 0
2025-09-18 09:51.46: New job: test maxminddb.0.4 with dune.3.12.1, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/28542/head (94ae65678b1f98854907785aa1107fabdeec47d2)
                              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/28542/head" && git reset --hard 94ae6567
git fetch origin master
git merge --no-edit 151ffce963e54519dd5d1280848f631d38db358e
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
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.3.12.1 3.12.1
RUN opam reinstall dune.3.12.1; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'dune.3.12.1' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN opam reinstall maxminddb.0.4; \
    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" != 'maxminddb.0.4' && 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 maxminddb.0.4) || true
RUN opam reinstall --with-test --verbose maxminddb.0.4; \
    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" != 'maxminddb.0.4' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2025-09-18 09:51.46: Using cache hint "ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc-dune.3.12.1-maxminddb.0.4-94ae65678b1f98854907785aa1107fabdeec47d2"
2025-09-18 09:51.46: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc)
 (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.3.12.1 3.12.1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dune.3.12.1;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"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.3.12.1' && 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 maxminddb.0.4;\
             \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\" != 'maxminddb.0.4' && 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 maxminddb.0.4) || true"))
 (run (shell  "opam reinstall --with-test --verbose maxminddb.0.4;\
             \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\" != 'maxminddb.0.4' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2025-09-18 09:51.46: Waiting for resource in pool OCluster
2025-09-18 16:34.26: Waiting for worker…
2025-09-18 16:36.02: Got resource from pool OCluster
Building on clete.caelum.ci.dev
All commits already cached
Updating files:  74% (13671/18275)
Updating files:  75% (13707/18275)
Updating files:  76% (13889/18275)
Updating files:  77% (14072/18275)
Updating files:  78% (14255/18275)
Updating files:  79% (14438/18275)
Updating files:  80% (14620/18275)
Updating files:  81% (14803/18275)
Updating files:  82% (14986/18275)
Updating files:  83% (15169/18275)
Updating files:  84% (15351/18275)
Updating files:  85% (15534/18275)
Updating files:  86% (15717/18275)
Updating files:  87% (15900/18275)
Updating files:  88% (16082/18275)
Updating files:  89% (16265/18275)
Updating files:  90% (16448/18275)
Updating files:  91% (16631/18275)
Updating files:  92% (16813/18275)
Updating files:  93% (16996/18275)
Updating files:  94% (17179/18275)
Updating files:  95% (17362/18275)
Updating files:  96% (17544/18275)
Updating files:  97% (17727/18275)
Updating files:  98% (17910/18275)
Updating files:  99% (18093/18275)
Updating files: 100% (18275/18275)
Updating files: 100% (18275/18275), done.
HEAD is now at 151ffce963 Merge pull request #28412 from andersfugmann/release-ocaml-protoc-plugin-6.2.0
Updating 151ffce963..94ae65678b
Fast-forward
 packages/dune/dune.3.12.1/opam | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(from ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc' locally
docker.io/ocaml/opam@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc: Pulling from ocaml/opam
15b1d8a5ff03: Already exists
4d5eb3ed0208: Already exists
b44e00377829: Already exists
93018e586176: Already exists
587e432a29e2: Already exists
cdf304204754: Already exists
a444cfe202e3: Already exists
964991c828c0: Already exists
a94458d90f79: Already exists
e972c69afbc9: Already exists
3997d62e9de2: Already exists
d78ea61f72f9: Already exists
c68a1176424c: Already exists
63495b383f1a: Already exists
aa1a6204320d: Already exists
187b2023e0b3: Already exists
4787e66ddf43: Already exists
973a552bac2d: Already exists
8ad831d15267: Already exists
a8377bc33a29: Already exists
84a002321686: Already exists
4f4fb700ef54: Already exists
5d52c4f201d6: Already exists
68ef19bc296a: Already exists
1cda2aa0af1b: Already exists
769f31bcfe07: Already exists
b1d715eb0b34: Already exists
6b92d559de80: Already exists
1552f16d9075: Already exists
7a69328970da: Already exists
e66b1fc86e6f: Already exists
b14737f10b30: Already exists
4b7cf33f8dea: Already exists
0499d18bfcaa: Already exists
fb0e4a52e51b: Already exists
af1ea896d29c: Already exists
cff41317f198: Already exists
fbb90a49a8ca: Already exists
2f7f155032eb: Already exists
02f68e1ce660: Already exists
ecccefc40725: Pulling fs layer
b3c55c49d7c7: Pulling fs layer
086c23210c52: Pulling fs layer
be64ebf82eb2: Pulling fs layer
be64ebf82eb2: Waiting
b3c55c49d7c7: Verifying Checksum
b3c55c49d7c7: Download complete
086c23210c52: Verifying Checksum
086c23210c52: Download complete
be64ebf82eb2: Verifying Checksum
be64ebf82eb2: Download complete
ecccefc40725: Verifying Checksum
ecccefc40725: Download complete
ecccefc40725: Pull complete
b3c55c49d7c7: Pull complete
086c23210c52: Pull complete
be64ebf82eb2: Pull complete
Digest: sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
Status: Downloaded newer image for ocaml/opam@sha256:ce7583a4463e517dda39f02d53e6fd4065fe70d94a26e5f51dcceb761272b5dc
2025-09-18 16:36.48 ---> using "f2c15438f4e8107ac42e1adfbd29c5c483ff0e5aaf05ff1291b0b30470c339be" from cache

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2025-09-18 16:36.48 ---> using "8e4815ff6b482deb2badd55f707e4331a2daf52d1f97e062604f979853124597" from cache

/home/opam: (run (network host)
                 (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.

Continue? [Y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-09-18 16:36.48 ---> using "0309994c25db3359b71c182dd526d9cd4b87f08f6fd345755107482f61709ee3" 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.4.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.2"}]
# compiler-packages    ocaml-base-compiler.4.14.2, 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.2
2025-09-18 16:36.48 ---> using "01960dce876bd083c0e115ca8b857f355a6f4a5b1589bc70acef12378d72e36e" 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/"))
2025-09-18 16:36.48 ---> using "88d8ec224acefa159471a25872197bf5efdd28e8b95159888107feac1f31a583" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2025-09-18 16:36.50 ---> using "cb2103c25b21ee4e1c59329d950656d40b52719523d4f917d56f5ec814fa100f" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-09-18 16:36.50 ---> using "a05965c65de41c6eff3032a5634279c228b5ac3eb5b903c6c68c60936ca1d1a4" 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 [40.4 kB]
- Fetched 131 kB in 0s (886 kB/s)
- Reading package lists...
- 
2025-09-18 16:36.50 ---> using "38023c57e0f91a1fd554d35e557178fc24782f93a8ea1da4e25d2c03340933a9" from cache

/home/opam: (run (shell "opam pin add -k version -yn dune.3.12.1 3.12.1"))
dune is now pinned to version 3.12.1
2025-09-18 16:36.50 ---> using "cb7452ac8f079a11102b292cd8b4ab7a95bf7ca7b6ff4bcfee9ec005ec60d9fe" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dune.3.12.1;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"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.3.12.1' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
dune.3.12.1 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 1 package
  - install dune 3.12.1 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.12.1  (cached)
-> installed dune.3.12.1
Done.
# To update the current shell environment, run: eval $(opam env)
2025-09-18 16:36.50 ---> using "3636cd7fb69dfe196588ca0977383ce2de3c796811a263630e34d36c7ce41c8d" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall maxminddb.0.4;\
                        \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\" != 'maxminddb.0.4' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
maxminddb.0.4 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 8 packages
  - install conf-libmaxminddb 1      [required by maxminddb]
  - install conf-pkg-config   4      [required by conf-libmaxminddb]
  - install maxminddb         0.4
  - install oasis             0.4.11 [required by maxminddb]
  - install ocamlbuild        0.16.1 [required by oasis]
  - install ocamlfind         1.9.8  [required by maxminddb]
  - install ocamlify          0.0.1  [required by oasis]
  - install ocamlmod          0.0.9  [required by oasis]

The following system packages will first need to be installed:
    libmaxminddb-dev pkg-config

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1

+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "libmaxminddb-dev" "pkg-config"
- Selecting previously unselected package libmaxminddb0:amd64.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20622 files and directories currently installed.)
- Preparing to unpack .../0-libmaxminddb0_1.12.2-1_amd64.deb ...
- Unpacking libmaxminddb0:amd64 (1.12.2-1) ...
- Selecting previously unselected package libmaxminddb-dev:amd64.
- Preparing to unpack .../1-libmaxminddb-dev_1.12.2-1_amd64.deb ...
- Unpacking libmaxminddb-dev:amd64 (1.12.2-1) ...
- Selecting previously unselected package libpkgconf3:amd64.
- Preparing to unpack .../2-libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../3-pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../4-pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../5-pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libmaxminddb0:amd64 (1.12.2-1) ...
- Setting up libmaxminddb-dev:amd64 (1.12.2-1) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved maxminddb.0.4  (cached)
-> installed conf-pkg-config.4
-> retrieved oasis.0.4.11  (cached)
-> installed conf-libmaxminddb.1
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ocamlify.0.0.1  (cached)
-> retrieved ocamlmod.0.0.9  (cached)
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed ocamlify.0.0.1
-> installed ocamlmod.0.0.9
-> installed oasis.0.4.11
[ERROR] The compilation of maxminddb.0.4 failed at "ocaml setup.ml -build".

#=== ERROR while compiling maxminddb.0.4 ======================================#
# context              2.4.1 | linux/x86_64 | ocaml-base-compiler.4.14.2 | file:///home/opam/opam-repository
# path                 ~/.opam/4.14/.opam-switch/build/maxminddb.0.4
# command              ~/.opam/opam-init/hooks/sandbox.sh build ocaml setup.ml -build
# exit-code            1
# env-file             ~/.opam/log/maxminddb-7-0fdce1.env
# output-file          ~/.opam/log/maxminddb-7-0fdce1.out
### output ###
# File "./setup.ml", line 575, characters 4-15:
# 575 |     Stream.from next
#           ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 603, characters 19-36:
# 603 |         let strm = Stream.of_channel chn in
#                          ^^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 610, characters 37-48:
# 610 |                 Buffer.add_char buf (Stream.next strm);
#                                            ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 613, characters 17-31:
# 613 |             with Stream.Failure ->
#                        ^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 1431, characters 16-33:
# 1431 |       let lxr = Genlex.make_lexer [] in
#                        ^^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1433, characters 22-38:
# 1433 |         let st = lxr (Stream.of_string s) in
#                              ^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 1434, characters 14-26:
# 1434 |         match Stream.npeek 3 st with
#                      ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "./setup.ml", line 1435, characters 11-23:
# 1435 |         | [Genlex.Ident fn; Genlex.Ident nm] -> Call(fn, Ident nm)
#                   ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1435, characters 28-40:
# 1435 |         | [Genlex.Ident fn; Genlex.Ident nm] -> Call(fn, Ident nm)
#                                    ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1436, characters 11-23:
# 1436 |         | [Genlex.Ident fn; Genlex.String str] -> Call(fn, String str)
#                   ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1436, characters 28-41:
# 1436 |         | [Genlex.Ident fn; Genlex.String str] -> Call(fn, String str)
#                                    ^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1437, characters 11-24:
# 1437 |         | [Genlex.String str] -> String str
#                   ^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1438, characters 11-23:
# 1438 |         | [Genlex.Ident nm] -> Ident nm
#                   ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "./setup.ml", line 1775, characters 22-40:
# 1775 |         let compare = Pervasives.compare
#                              ^^^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Pervasives
# Use Stdlib instead.
# 
# If you need to stay compatible with OCaml < 4.07, you can use the 
# stdlib-shims library: https://github.com/ocaml/stdlib-shims
# File "setup.ml", line 3176, characters 8-19:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3179, characters 21-32:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3182, characters 18-32:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3184, characters 6-23:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3187, characters 12-24:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3188, characters 9-21:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3188, characters 26-36:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3188, characters 42-55:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3189, characters 8-19:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3189, characters 25-36:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3189, characters 42-53:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3201, characters 17-34:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3326, characters 16-33:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3345, characters 22-38:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3347, characters 17-29:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3348, characters 16-28:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3348, characters 37-49:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3350, characters 16-28:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3350, characters 37-50:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3352, characters 16-28:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3352, characters 46-58:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3354, characters 16-28:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3354, characters 46-59:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3356, characters 16-28:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 3369, characters 13-25:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 3467, characters 16-34:
# Alert deprecated: module Stdlib.Pervasives
# Use Stdlib instead.
# 
# If you need to stay compatible with OCaml < 4.07, you can use the 
# stdlib-shims library: https://github.com/ocaml/stdlib-shims
# File "setup.ml", line 4518, characters 21-38:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 4520, characters 19-31:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 4521, characters 16-29:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 4521, characters 33-46:
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "setup.ml", line 4523, characters 15-26:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "setup.ml", line 4523, characters 32-43:
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# + ocamlfind ocamlc -config
# + ocamlfind ocamlopt unix.cmxa -I /home/opam/.opam/4.14/lib/ocamlbuild /home/opam/.opam/4.14/lib/ocamlbuild/ocamlbuildlib.cmxa -linkpkg myocamlbuild.ml /home/opam/.opam/4.14/lib/ocamlbuild/ocamlbuild.cmx -o myocamlbuild
# + ocamlfind ocamlc -config
# + /home/opam/.opam/4.14/bin/ocamlfind ocamlc -g -ccopt -g -ccopt -Wextra -ccopt -Wall -ccopt '-std=c99' -c src/maxminddb_stubs.c
# + /home/opam/.opam/4.14/bin/ocamlfind ocamlc -g -ccopt -g -ccopt -Wextra -ccopt -Wall -ccopt '-std=c99' -c src/maxminddb_stubs.c
# src/maxminddb_stubs.c: In function 'data_from_dump':
# src/maxminddb_stubs.c:66:3: error: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]
#    66 |   mkstemp(temp_name);
#       |   ^~~~~~~
# src/maxminddb_stubs.c: In function 'mmdb_ml_open':
# src/maxminddb_stubs.c:100:13: warning: "caml_strdup" is deprecated: use "caml_stat_strdup" instead
#   100 |   char *copied = caml_strdup(String_val(s));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# src/maxminddb_stubs.c: In function 'mmdb_ml_dump_per_ip':
# src/maxminddb_stubs.c:153:13: warning: "caml_strdup" is deprecated: use "caml_stat_strdup" instead
#   153 |   char *as_string = caml_strdup(String_val(ip));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# src/maxminddb_stubs.c: In function 'mmdb_ml_lookup_path':
# src/maxminddb_stubs.c:187:13: warning: "caml_strdup" is deprecated: use "caml_stat_strdup" instead
#   187 |   char *as_string = caml_strdup(String_val(ip));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# src/maxminddb_stubs.c:206:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
#   206 |     query[copy_count] = String_val(Field(query_list, 0));
#       |                       ^
# Command exited with code 2.
# + ocamlfind ocamlopt unix.cmxa -I /home/opam/.opam/4.14/lib/ocamlbuild /home/opam/.opam/4.14/lib/ocamlbuild/ocamlbuildlib.cmxa -linkpkg myocamlbuild.ml /home/opam/.opam/4.14/lib/ocamlbuild/ocamlbuild.cmx -o myocamlbuild
# File "myocamlbuild.ml", line 454, characters 8-19:
# 454 |         Stream.from
#               ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 457, characters 21-32:
# 457 |                match Stream.next st with
#                            ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 460, characters 18-32:
# 460 |              with Stream.Failure -> None)
#                         ^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 462, characters 6-23:
# 462 |       Genlex.make_lexer ["="] st_line
#             ^^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 465, characters 12-24:
# 465 |       match Stream.npeek 3 lxr with
#                   ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 466, characters 9-21:
# 466 |       | [Genlex.Ident nm; Genlex.Kwd "="; Genlex.String value] ->
#                ^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 466, characters 26-36:
# 466 |       | [Genlex.Ident nm; Genlex.Kwd "="; Genlex.String value] ->
#                                 ^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 466, characters 42-55:
# 466 |       | [Genlex.Ident nm; Genlex.Kwd "="; Genlex.String value] ->
#                                                 ^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Genlex
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 467, characters 8-19:
# 467 |         Stream.junk lxr; Stream.junk lxr; Stream.junk lxr;
#               ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 467, characters 25-36:
# 467 |         Stream.junk lxr; Stream.junk lxr; Stream.junk lxr;
#                                ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 467, characters 42-53:
# 467 |         Stream.junk lxr; Stream.junk lxr; Stream.junk lxr;
#                                                 ^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# File "myocamlbuild.ml", line 479, characters 17-34:
# 479 |         let st = Stream.of_channel chn in
#                        ^^^^^^^^^^^^^^^^^
# Alert deprecated: module Stdlib.Stream
# Use the camlp-streams library instead.
# E: Failure("Command ''/home/opam/.opam/4.14/bin/ocamlbuild' src/libmaxminddb_stubs.a src/dllmaxminddb_stubs.so src/maxminddb.cma src/maxminddb.cmxa src/maxminddb.a src/maxminddb.cmxs -use-ocamlfind -tag debug' terminated with error code 10")



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build maxminddb 0.4
+- 
+- The following changes have been performed
| - install conf-libmaxminddb 1
| - install conf-pkg-config   4
| - install oasis             0.4.11
| - install ocamlbuild        0.16.1
| - install ocamlfind         1.9.8
| - install ocamlify          0.0.1
| - install ocamlmod          0.0.9
+- 

The former state can be restored with:
    /usr/bin/opam switch import "/home/opam/.opam/4.14/.opam-switch/backup/state-20250918163651.export"
# To update the current shell environment, run: eval $(opam env)
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
"/usr/bin/env" "bash" "-c" "opam reinstall maxminddb.0.4;
        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" != 'maxminddb.0.4' && partial_fails="$partial_fails $pkg";
        done;
        test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
        exit 1" failed with exit status 1
2025-09-18 16:39.24: Job failed: Failed: Build failed
2025-09-18 16:39.24: Log analysis:
2025-09-18 16:39.24: >>> 
[ERROR] The compilation of maxminddb.0.4 failed at "ocaml setup.ml -build".
 (score = 20)
2025-09-18 16:39.24: >>> 
# src/maxminddb_stubs.c:66:3: error: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]
 (score = 30)
2025-09-18 16:39.24: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]