- github
- ocaml
- opam-repository
- 3e0c39
- compilers,4.14,dune.3.22.2,revdeps,maxminddb.0.3
(not at the head of any monitored branch or PR)
2026-04-13 14:37.55: New job: test maxminddb.0.3 with dune.3.22.2, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/29704/head (3e0c395e7b1393a792367f8edca3654dac71e6fd)
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/29704/head" && git reset --hard 3e0c395e
git fetch origin master
git merge --no-edit 6a41074e987f45580dd8672b99e1d9355175a27f
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.14@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126
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.22.2 3.22.2
RUN opam reinstall dune.3.22.2; \
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.22.2' && 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.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" != 'maxminddb.0.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 maxminddb.0.3) || true
RUN opam reinstall --with-test --verbose maxminddb.0.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" != 'maxminddb.0.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-13 14:37.55: Using cache hint "ocaml/opam:debian-13-ocaml-4.14@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126-dune.3.22.2-maxminddb.0.3-3e0c395e7b1393a792367f8edca3654dac71e6fd"
2026-04-13 14:37.55: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.14@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126)
(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.22.2 3.22.2"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall dune.3.22.2;\
\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.22.2' && 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.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\" != 'maxminddb.0.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 maxminddb.0.3) || true"))
(run (shell "opam reinstall --with-test --verbose maxminddb.0.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\" != 'maxminddb.0.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-13 14:37.55: Waiting for resource in pool OCluster
2026-04-13 14:55.38: Waiting for worker…
2026-04-13 15:01.23: Got resource from pool OCluster
Building on phoebe.caelum.ci.dev
All commits already cached
HEAD is now at 6a41074e98 Merge pull request #29690 from paurkedal/caqti.2.3.0
Merge made by the 'ort' strategy.
packages/chrome-trace/chrome-trace.3.22.2/opam | 39 +++++++++++
.../dune-action-plugin.3.22.2/opam | 52 +++++++++++++++
.../dune-action-trace.3.22.2/opam | 39 +++++++++++
.../dune-build-info/dune-build-info.3.22.2/opam | 45 +++++++++++++
.../dune-configurator.3.22.2/opam | 49 ++++++++++++++
packages/dune-glob/dune-glob.3.22.2/opam | 42 ++++++++++++
.../dune-private-libs.3.22.2/opam | 50 +++++++++++++++
packages/dune-rpc-lwt/dune-rpc-lwt.3.22.2/opam | 41 ++++++++++++
packages/dune-rpc/dune-rpc.3.22.2/opam | 44 +++++++++++++
packages/dune-site/dune-site.3.22.2/opam | 37 +++++++++++
packages/dune/dune.3.22.2/opam | 75 ++++++++++++++++++++++
packages/dyn/dyn.3.22.2/opam | 40 ++++++++++++
packages/fs-io/fs-io.3.22.2/opam | 39 +++++++++++
packages/ocamlc-loc/ocamlc-loc.3.22.2/opam | 43 +++++++++++++
packages/ordering/ordering.3.22.2/opam | 38 +++++++++++
packages/stdune/stdune.3.22.2/opam | 46 +++++++++++++
packages/top-closure/top-closure.3.22.2/opam | 38 +++++++++++
packages/xdg/xdg.3.22.2/opam | 39 +++++++++++
18 files changed, 796 insertions(+)
create mode 100644 packages/chrome-trace/chrome-trace.3.22.2/opam
create mode 100644 packages/dune-action-plugin/dune-action-plugin.3.22.2/opam
create mode 100644 packages/dune-action-trace/dune-action-trace.3.22.2/opam
create mode 100644 packages/dune-build-info/dune-build-info.3.22.2/opam
create mode 100644 packages/dune-configurator/dune-configurator.3.22.2/opam
create mode 100644 packages/dune-glob/dune-glob.3.22.2/opam
create mode 100644 packages/dune-private-libs/dune-private-libs.3.22.2/opam
create mode 100644 packages/dune-rpc-lwt/dune-rpc-lwt.3.22.2/opam
create mode 100644 packages/dune-rpc/dune-rpc.3.22.2/opam
create mode 100644 packages/dune-site/dune-site.3.22.2/opam
create mode 100644 packages/dune/dune.3.22.2/opam
create mode 100644 packages/dyn/dyn.3.22.2/opam
create mode 100644 packages/fs-io/fs-io.3.22.2/opam
create mode 100644 packages/ocamlc-loc/ocamlc-loc.3.22.2/opam
create mode 100644 packages/ordering/ordering.3.22.2/opam
create mode 100644 packages/stdune/stdune.3.22.2/opam
create mode 100644 packages/top-closure/top-closure.3.22.2/opam
create mode 100644 packages/xdg/xdg.3.22.2/opam
(from ocaml/opam:debian-13-ocaml-4.14@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.14@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126' locally
docker.io/ocaml/opam@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126: Pulling from ocaml/opam
8f6ad858d0a4: Already exists
9cb5e198c8cf: Already exists
2d346d36dcf2: Already exists
cdc35e289b8d: Already exists
aeb7244bb580: Already exists
fc1943254a0d: Already exists
84238c416f8e: Already exists
fbbfe75d3112: Already exists
221fdc5d9929: Already exists
1fec9149b52a: Already exists
9c6e52557f24: Already exists
8737f5036aae: Already exists
d69c4074de14: Already exists
7237152a5f04: Already exists
fba4b414d8a0: Already exists
40d552afb3ef: Already exists
077cc17dc8e4: Already exists
077cc17dc8e4: Already exists
169e1be36a55: Already exists
0a8a005097ab: Already exists
caba3ec4b361: Already exists
6a364dc641f8: Already exists
4f4fb700ef54: Already exists
ab8052928cdc: Already exists
f5717a28dd6a: Already exists
79233a9b9bed: Already exists
d832d53e7392: Already exists
1872dad82243: Already exists
bfd849b08ba7: Already exists
834a8024ef15: Already exists
98ccec79258b: Already exists
fb48f36a0542: Already exists
3688b13db8e7: Already exists
a5c099f5f72c: Already exists
1ff1760de5b0: Already exists
98eec6764aa5: Already exists
aa22ae69debd: Already exists
12bfb7b962a2: Already exists
ec25ce9bb816: Already exists
beadd3cf7357: Already exists
d0d0c65a426d: Already exists
27080da82c6b: Pulling fs layer
3b99adeb504e: Pulling fs layer
867c8a52ad10: Pulling fs layer
01ca275a6ca2: Pulling fs layer
01ca275a6ca2: Waiting
867c8a52ad10: Verifying Checksum
867c8a52ad10: Download complete
3b99adeb504e: Verifying Checksum
3b99adeb504e: Download complete
01ca275a6ca2: Verifying Checksum
01ca275a6ca2: Download complete
27080da82c6b: Verifying Checksum
27080da82c6b: Download complete
27080da82c6b: Pull complete
3b99adeb504e: Pull complete
867c8a52ad10: Pull complete
01ca275a6ca2: Pull complete
Digest: sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126
Status: Downloaded newer image for ocaml/opam@sha256:ec5999d94ff5da2754b2d163583ef868ccaefbaaabbe66412fde8712ae6f5126
2026-04-13 15:01.24 ---> using "d0e330c08fa445d83f06df86dbe749aac73c20b9c3be340824d01a143f189b82" 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-13 15:01.24 ---> using "3ec7ac935151f5277a236626f366bf7f6f18395cb01e6e86eff2abeffc750f69" 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-13 15:01.24 ---> using "b5a0847c35501fd963cedc3388b00c999e5617a9db85df5529c240a6fc10a617" 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.0
# 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-13 15:01.24 ---> using "28464b62e165a839b63b1c2ae024a4b4fcbe23c1802c3adf881d35db6bc1d4c2" 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-13 15:01.24 ---> using "4dfd69403557bd9c8ecec7a8b2fdd9b50feea12943fd8b9150cd347ede8d5f38" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-04-13 15:01.25 ---> using "edfc1136fda934d7cb565de13b26830fecc90a7ab0b3857f616327ea2529452b" from cache
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-13 15:01.25 ---> using "b0e78c7a2e37b10ad9605e02581a51654b0778194c38cb8fb47cf5dccb0d651f" 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 [122 kB]
- Fetched 213 kB in 0s (563 kB/s)
- Reading package lists...
-
2026-04-13 15:01.25 ---> using "044cfe461c26a47734ddd2294ed3e29edb1a69aa3837f8ab53eee87e4aaa3c6d" from cache
/home/opam: (run (shell "opam pin add -k version -yn dune.3.22.2 3.22.2"))
dune is now pinned to version 3.22.2
2026-04-13 15:01.25 ---> using "12f72cd8261a737fbe7223f71f57c1e6abfb3d9cd5eae55fb044ffbcd6c001c9" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall dune.3.22.2;\
\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.22.2' && 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.22.2 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 1 package
- install dune 3.22.2 (pinned)
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.22.2 (cached)
-> installed dune.3.22.2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-13 15:01.25 ---> using "80da19535b3d415cbd7848b51e46710db4adfd09b8d6835aafee57876f9fae60" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall maxminddb.0.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\" != 'maxminddb.0.3' && 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.3 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.3
- install oasis 0.4.11 [required by maxminddb]
- install ocamlbuild 0.16.1 [required by maxminddb]
- install ocamlfind 1.9.8 [required by maxminddb]
- install ocamlify 0.0.1 [required by oasis]
- install ocamlmod 0.1.1 [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 ... 20623 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+deb13u2) ...
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> installed conf-pkg-config.4
-> installed conf-libmaxminddb.1
-> retrieved maxminddb.0.3 (https://opam.ocaml.org/cache)
-> retrieved oasis.0.4.11 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocamlify.0.0.1 (cached)
-> retrieved ocamlmod.0.1.1 (cached)
-> installed ocamlmod.0.1.1
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed ocamlify.0.0.1
-> installed oasis.0.4.11
[ERROR] The compilation of maxminddb.0.3 failed at "ocaml setup.ml -build".
#=== ERROR while compiling maxminddb.0.3 ======================================#
# context 2.5.0 | linux/x86_64 | ocaml-base-compiler.4.14.3 | file:///home/opam/opam-repository
# path ~/.opam/4.14/.opam-switch/build/maxminddb.0.3
# command ~/.opam/opam-init/hooks/sandbox.sh build ocaml setup.ml -build
# exit-code 1
# env-file ~/.opam/log/maxminddb-7-e0d6dd.env
# output-file ~/.opam/log/maxminddb-7-e0d6dd.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:63:3: error: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]
# 63 | mkstemp(temp_name);
# | ^~~~~~~
# In file included from src/maxminddb_stubs.c:10:
# src/maxminddb_stubs.c: In function 'mmdb_ml_open':
# /home/opam/.opam/4.14/lib/ocaml/caml/mlvalues.h:290:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
# 290 | #define String_val(x) ((const char *) Bp_val(x))
# | ^
# src/maxminddb_stubs.c:88:21: note: in expansion of macro 'String_val'
# 88 | char *as_string = String_val(s);
# | ^~~~~~~~~~
# src/maxminddb_stubs.c: In function 'mmdb_ml_dump_per_ip':
# /home/opam/.opam/4.14/lib/ocaml/caml/mlvalues.h:290:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
# 290 | #define String_val(x) ((const char *) Bp_val(x))
# | ^
# src/maxminddb_stubs.c:126:21: note: in expansion of macro 'String_val'
# 126 | char *as_string = String_val(ip);
# | ^~~~~~~~~~
# src/maxminddb_stubs.c: In function 'mmdb_ml_lookup_path':
# /home/opam/.opam/4.14/lib/ocaml/caml/mlvalues.h:290:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
# 290 | #define String_val(x) ((const char *) Bp_val(x))
# | ^
# src/maxminddb_stubs.c:151:21: note: in expansion of macro 'String_val'
# 151 | char *ip_as_str = String_val(ip);
# | ^~~~~~~~~~
# src/maxminddb_stubs.c:167:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
# 167 | 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.3
+-
+- 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.1.1
+-
# To update the current shell environment, run: eval $(opam env)
The former state can be restored with:
/usr/bin/opam switch import "/home/opam/.opam/4.14/.opam-switch/backup/state-20260413150126.export"
[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.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" != 'maxminddb.0.3' && 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
2026-04-13 15:03.13: Job failed: Failed: Build failed
2026-04-13 15:03.13: Log analysis:
2026-04-13 15:03.13: >>>
[ERROR] The compilation of maxminddb.0.3 failed at "ocaml setup.ml -build".
(score = 20)
2026-04-13 15:03.13: >>>
# src/maxminddb_stubs.c:63:3: error: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]
(score = 30)
2026-04-13 15:03.13: implicit declaration of function 'mkstemp' [-Wimplicit-function-declaration]