(for PR #27360)
2026-04-27 07:45.26: New job: build ocaml-rocksdb.0.02, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/27360/head (879cce6341a5b8d26f5989e5001751782571cb8b)
on alpine-3.23-ocaml-5.4/amd64
To reproduce locally:
cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/27360/head" && git reset --hard 879cce63
git fetch origin master
git merge --no-edit d5058a91d400180e2118d7eeefa040cfcee45d2c
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.23-ocaml-5.4@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366
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 ocaml-rocksdb.0.02 0.02
RUN opam reinstall ocaml-rocksdb.0.02; \
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 "\"alpine-3.23\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'ocaml-rocksdb.0.02' && 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-27 07:45.26: Using cache hint "ocaml/opam:alpine-3.23-ocaml-5.4@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366-ocaml-rocksdb.0.02-879cce6341a5b8d26f5989e5001751782571cb8b"
2026-04-27 07:45.26: Using OBuilder spec:
((from ocaml/opam:alpine-3.23-ocaml-5.4@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366)
(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 ocaml-rocksdb.0.02 0.02"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall ocaml-rocksdb.0.02;\
\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 \"\\\"alpine-3.23\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-rocksdb.0.02' && 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-27 07:45.26: Connecting to build cluster…
2026-04-27 07:45.26: Waiting for resource in pool OCluster
2026-04-27 07:59.17: Waiting for worker…
2026-04-27 08:00.45: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
HEAD is now at d5058a91d4 Merge pull request #29801 from YuriyKrasilnikov/opam-publish-idna.0.4.0
Merge made by the 'ort' strategy.
.../conf-rocksdb-ge-5-17-2.5.17.2/opam | 37 ++++++++++++++
packages/ocaml-rocksdb/ocaml-rocksdb.0.02/opam | 59 ++++++++++++++++++++++
2 files changed, 96 insertions(+)
create mode 100644 packages/conf-rocksdb-ge-5-17-2/conf-rocksdb-ge-5-17-2.5.17.2/opam
create mode 100644 packages/ocaml-rocksdb/ocaml-rocksdb.0.02/opam
(from ocaml/opam:alpine-3.23-ocaml-5.4@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366)
Unable to find image 'ocaml/opam:alpine-3.23-ocaml-5.4@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366' locally
docker.io/ocaml/opam@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366: Pulling from ocaml/opam
6a0ac1617861: Already exists
9630673831f3: Already exists
4cffb540229a: Already exists
aa3cee094119: Already exists
f2700202f619: Already exists
33135c7375d5: Already exists
1ea4b64ae955: Already exists
ca34ef70eda1: Already exists
d4998b6f8f35: Already exists
4a43cfe8648c: Already exists
453dd28eaace: Already exists
a962f0379f0a: Already exists
b68882dcbbd8: Already exists
3f63b4eac828: Already exists
0720e1e1068a: Already exists
0676d4d6023a: Already exists
0ab690805f49: Already exists
fc0af979c0fe: Already exists
4f4fb700ef54: Already exists
63f1d0bef8ae: Already exists
43fd6995d88f: Already exists
c775bfb331ab: Already exists
a7a9b5ed8780: Already exists
86ac791930d3: Already exists
2e34d70b785c: Already exists
56c554cb0baa: Already exists
0109b7ea4beb: Already exists
a72aa581a14e: Already exists
0b969b88b90b: Already exists
d1ae0e2bf910: Already exists
cfd8efe5a061: Already exists
a34595d6f491: Already exists
7333547f58a0: Already exists
803cdf5f2902: Already exists
d74501489c54: Already exists
628aecb9cafb: Already exists
0c52f398a865: Already exists
f4e18988783e: Pulling fs layer
d9b0005bf058: Pulling fs layer
ac511140fcec: Pulling fs layer
e5e3b5898b4b: Pulling fs layer
08e53197d17a: Pulling fs layer
9502f6b2d19e: Pulling fs layer
e5e3b5898b4b: Waiting
08e53197d17a: Waiting
9502f6b2d19e: Waiting
d9b0005bf058: Download complete
f4e18988783e: Verifying Checksum
f4e18988783e: Download complete
e5e3b5898b4b: Verifying Checksum
e5e3b5898b4b: Download complete
f4e18988783e: Pull complete
d9b0005bf058: Pull complete
08e53197d17a: Verifying Checksum
08e53197d17a: Download complete
9502f6b2d19e: Verifying Checksum
9502f6b2d19e: Download complete
ac511140fcec: Verifying Checksum
ac511140fcec: Download complete
ac511140fcec: Pull complete
e5e3b5898b4b: Pull complete
08e53197d17a: Pull complete
9502f6b2d19e: Pull complete
Digest: sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366
Status: Downloaded newer image for ocaml/opam@sha256:b5f9c251ed23ceaf402a2fd8548d89b9d710ba800ef8a7f46f773bfff6f63366
2026-04-27 08:01.21 ---> using "01c11b07ac2b5cd48e66007e5a5cac291b476dda37442ad969d24b0ab6dc0559" 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-27 08:01.21 ---> using "5fa6b9ef5549d606fde31aba0d2d7485a36147f16a3ee218cbb6a6f517620475" 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.
[NOTE] The 'jobs' option was reset, its value was 255 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
opam option jobs=255 --global
Continue? [Y/n] y
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-04-27 08:01.21 ---> using "2b7c0c1ec60c3c866c21f4c48a177ecdc8d20898064aa58e8186b73bd0a3b82c" 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=alpine os-version=3.23.4
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 71
# repositories 1 (version-controlled)
# pinned 1 (version)
# current-switch 5.4
# invariant ["ocaml-base-compiler" {= "5.4.1"}]
# compiler-packages ocaml-base-compiler.5.4.1, ocaml-compiler.5.4.1, ocaml-options-vanilla.1
# ocaml:native true
# ocaml:native-tools true
# ocaml:native-dynlink true
# ocaml:stubsdir /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 5.4.1
2026-04-27 08:01.21 ---> using "7862949e114365a7d947f371162aff05306891b079ee9ff96207c1c35ea17ff1" 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-27 08:01.21 ---> using "b5281aa9dc433b8ef976cfc81df3773fee0eb65d5c716c2c984d2975eae1fea3" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-04-27 08:01.21 ---> using "18f38f55aff3a7f02821eb059e82110118123a5bf4e0ba79b8adcadc93207de8" from cache
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-27 08:01.42 ---> saved as "9ef38f0abcd52d1a7bc7f6e0c4d08a1d52302fab51db760069ca7f80d6cf9bc4"
/home/opam: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/bin/sudo "apk" "update"
- v3.23.4-59-gb9ff5fecad9 [https://dl-cdn.alpinelinux.org/alpine/v3.23/main]
- v3.23.4-62-gc06bcbb6e5a [https://dl-cdn.alpinelinux.org/alpine/v3.23/community]
- v20260127-8558-gb12fae68f31 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20260127-8559-g6fd958a3511 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20260127-8554-gb33de4ab903 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 62089 distinct packages available
2026-04-27 08:01.44 ---> saved as "32c0d6fd77b03b0dabcb84a2b914d3118465dd26387690eb00bcf3ee9d80f1c9"
/home/opam: (run (shell "opam pin add -k version -yn ocaml-rocksdb.0.02 0.02"))
ocaml-rocksdb is now pinned to version 0.02
2026-04-27 08:01.45 ---> saved as "bfde42a7532264c1d3dde5d2d09843fc94c92bb8cc63c6c3fbf051b578b2f918"
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall ocaml-rocksdb.0.02;\
\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 \"\\\"alpine-3.23\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-rocksdb.0.02' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
ocaml-rocksdb.0.02 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 102 packages
- install astring 0.8.5 [required by bos]
- install base v0.17.3 [required by core]
- install base_bigstring v0.17.0 [required by core]
- install base_quickcheck v0.17.1 [required by core]
- install bin_prot v0.17.0-1 [required by core]
- install bos 0.2.1 [required by camlp5-buildscripts]
- install camlp-streams 5.0.1 [required by not-ocamlfind]
- install camlp5-buildscripts 0.06 [required by ocaml-rocksdb]
- install capitalization v0.17.0 [required by ppx_string_conv]
- install cmdliner 1.3.0 [required by cppffigen]
- install conf-g++ 1.0 [required by ocaml-rocksdb]
- install conf-libbz2 1 [required by ocaml-rocksdb]
- install conf-liblz4 1 [required by ocaml-rocksdb]
- install conf-libpcre 2 [required by pcre]
- install conf-m4 1 [required by not-ocamlfind]
- install conf-pkg-config 4 [required by conf-rocksdb-ge-5-17-2, conf-liblz4, conf-zlib]
- install conf-rocksdb 1 [required by conf-rocksdb-ge-5-17-2]
- install conf-rocksdb-ge-5-17-2 5.17.2 [required by ocaml-rocksdb]
- install conf-snappy 1 [required by ocaml-rocksdb]
- install conf-which 1 [required by not-ocamlfind]
- install conf-zlib 1 [required by ocaml-rocksdb]
- install core v0.17.2 [required by ocaml-rocksdb]
- install cppffigen 0.002 [required by ocaml-rocksdb]
- install cppo 1.8.0 [required by ppx_deriving]
- install csexp 1.5.2 [required by dune-configurator]
- install cstruct 6.2.0 [required by hex]
- install dune 3.22.2 [required by core, result]
- install dune-compiledb 0.6.0 [required by pcre]
- install dune-configurator 3.22.2 [required by base, pcre]
- install ezjsonm 1.3.0 [required by dune-compiledb]
- install fieldslib v0.17.0 [required by core]
- install fmt 0.11.0 [required by camlp5-buildscripts]
- install fpath 0.7.3 [required by bos]
- install gel v0.17.0 [required by ppx_diff]
- install hex 1.5.0 [required by ezjsonm]
- install int_repr v0.17.0 [required by base_bigstring]
- install jane-street-headers v0.17.0 [required by core]
- install jsonm 1.0.2 [required by ezjsonm]
- install jst-config v0.17.0 [required by core]
- install logs 0.10.0 [required by bos]
- install not-ocamlfind 0.14 [required by ocaml-rocksdb]
- install num 1.6 [required by sexplib]
- install ocaml-compiler-libs v0.17.0 [required by ppxlib]
- install ocaml-rocksdb 0.02 (pinned)
- install ocaml_intrinsics_kernel v0.17.1 [required by base]
- install ocamlbuild 0.16.1 [required by bos]
- install ocamlfind 1.9.8 [required by not-ocamlfind, bos, ppx_deriving]
- install ocamlgraph 2.2.0 [required by not-ocamlfind]
- install parsexp v0.17.0 [required by sexplib]
- install pcre 8.0.5 [required by cppffigen]
- install ppx_assert v0.17.0 [required by core]
- install ppx_base v0.17.0 [required by core]
- install ppx_bench v0.17.1 [required by ppx_jane]
- install ppx_bin_prot v0.17.1 [required by ppx_jane]
- install ppx_cold v0.17.0 [required by ppx_base]
- install ppx_compare v0.17.0 [required by ppx_diff]
- install ppx_custom_printf v0.17.0 [required by ppx_jane]
- install ppx_derivers 1.2.1 [required by ppx_deriving]
- install ppx_deriving 6.1.1 [required by cppffigen]
- install ppx_diff v0.17.1 [required by core]
- install ppx_disable_unused_warnings v0.17.0 [required by ppx_jane]
- install ppx_enumerate v0.17.0 [required by ppx_diff]
- install ppx_expect v0.17.3 [required by ppx_jane]
- install ppx_fields_conv v0.17.0 [required by ppx_jane]
- install ppx_fixed_literal v0.17.0 [required by ppx_jane]
- install ppx_globalize v0.17.2 [required by ppx_base]
- install ppx_hash v0.17.0 [required by core]
- install ppx_here v0.17.0 [required by ppx_jane]
- install ppx_ignore_instrumentation v0.17.0 [required by ppx_jane]
- install ppx_inline_test v0.17.1 [required by core]
- install ppx_jane v0.17.0 [required by core]
- install ppx_let v0.17.1 [required by ppx_jane]
- install ppx_log v0.17.0 [required by ppx_jane]
- install ppx_module_timer v0.17.0 [required by ppx_jane]
- install ppx_optcomp v0.17.1 [required by core]
- install ppx_optional v0.17.0 [required by ppx_jane]
- install ppx_pipebang v0.17.0 [required by ppx_jane]
- install ppx_sexp_conv v0.17.1 [required by core, cppffigen]
- install ppx_sexp_message v0.17.0 [required by core]
- install ppx_sexp_value v0.17.0 [required by ppx_jane]
- install ppx_stable v0.17.1 [required by ppx_jane]
- install ppx_stable_witness v0.17.0 [required by ppx_jane]
- install ppx_string v0.17.0 [required by ppx_jane]
- install ppx_string_conv v0.17.0 [required by ppx_jane]
- install ppx_tydi v0.17.1 [required by ppx_jane]
- install ppx_typerep_conv v0.17.1 [required by ppx_jane]
- install ppx_variants_conv v0.17.1 [required by ppx_jane]
- install ppxlib 0.38.0 [required by ppx_diff, ppx_deriving]
- install ppxlib_jane v0.17.4 [required by ppx_diff]
- install re 1.14.0 [required by camlp5-buildscripts]
- install result 1.5 [required by ocaml-rocksdb]
- install rresult 0.7.0 [required by bos, not-ocamlfind]
- install sexplib v0.17.0 [required by core, cppffigen]
- install sexplib0 v0.17.0 [required by base]
- install splittable_random v0.17.0 [required by core]
- install stdio v0.17.0 [required by core]
- install stdlib-shims 0.3.0 [required by ppxlib]
- install time_now v0.17.0 [required by core]
- install topkg 1.1.1 [required by bos]
- install typerep v0.17.1 [required by core]
- install uutf 1.0.4 [required by ezjsonm]
- install variantslib v0.17.0 [required by core]
The following system packages will first need to be installed:
bzip2-dev lz4-dev m4 pcre-dev rocksdb-dev snappy-dev zlib-dev
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
opam believes some required external dependencies are missing. opam can:
> 1. Run apk to install them (may need root/sudo access)
2. Display the recommended apk 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 "apk" "add" "bzip2-dev" "lz4-dev" "m4" "pcre-dev" "rocksdb-dev" "snappy-dev" "zlib-dev"
- ( 1/19) Installing bzip2-dev (1.0.8-r6)
- ( 2/19) Installing lz4-dev (1.10.0-r0)
- ( 3/19) Installing m4 (1.4.20-r0)
- ( 4/19) Installing libpcre16 (8.45-r4)
- ( 5/19) Installing libpcre32 (8.45-r4)
- ( 6/19) Installing pcre (8.45-r4)
- ( 7/19) Installing libpcrecpp (8.45-r4)
- ( 8/19) Installing pcre-dev (8.45-r4)
- ( 9/19) Installing gflags (2.2.2-r2)
- (10/19) Installing gflags-dev (2.2.2-r2)
- (11/19) Installing liburing-ffi (2.12-r0)
- (12/19) Installing liburing (2.12-r0)
- (13/19) Installing liburing-dev (2.12-r0)
- (14/19) Installing snappy (1.2.2-r0)
- (15/19) Installing snappy-dev (1.2.2-r0)
- (16/19) Installing zlib-dev (1.3.2-r0)
- (17/19) Installing zstd-dev (1.5.7-r2)
- (18/19) Installing rocksdb (10.9.1-r0)
- (19/19) Installing rocksdb-dev (10.9.1-r0)
- Executing busybox-1.37.0-r30.trigger
- OK: 355.3 MiB in 123 packages
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved astring.0.8.5 (cached)
-> retrieved base.v0.17.3 (cached)
-> retrieved base_bigstring.v0.17.0 (cached)
-> retrieved base_quickcheck.v0.17.1 (cached)
-> retrieved bin_prot.v0.17.0-1 (cached)
-> retrieved bos.0.2.1 (cached)
-> retrieved camlp-streams.5.0.1 (cached)
-> retrieved camlp5-buildscripts.0.06 (cached)
-> retrieved capitalization.v0.17.0 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved conf-rocksdb.1 (cached)
-> retrieved conf-snappy.1 (cached)
-> retrieved core.v0.17.2 (cached)
-> installed conf-g++.1.0
-> installed conf-m4.1
-> installed conf-pkg-config.4
-> installed conf-rocksdb.1
-> installed conf-which.1
-> installed conf-liblz4.1
-> installed conf-libpcre.2
-> installed conf-zlib.1
-> installed conf-rocksdb-ge-5-17-2.5.17.2
-> retrieved cppffigen.0.002 (https://opam.ocaml.org/cache)
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> installed conf-libbz2.1
-> retrieved cstruct.6.2.0 (cached)
-> installed conf-snappy.1
-> retrieved dune.3.22.2, dune-configurator.3.22.2 (cached)
-> retrieved dune-compiledb.0.6.0 (cached)
-> retrieved ezjsonm.1.3.0 (cached)
-> retrieved fieldslib.v0.17.0 (cached)
-> retrieved fmt.0.11.0 (cached)
-> retrieved fpath.0.7.3 (cached)
-> retrieved gel.v0.17.0 (cached)
-> retrieved hex.1.5.0 (cached)
-> retrieved int_repr.v0.17.0 (cached)
-> retrieved jane-street-headers.v0.17.0 (cached)
-> retrieved jsonm.1.0.2 (cached)
-> retrieved jst-config.v0.17.0 (cached)
-> retrieved logs.0.10.0 (cached)
-> retrieved not-ocamlfind.0.14 (cached)
-> installed cmdliner.1.3.0
-> retrieved num.1.6 (cached)
-> retrieved ocaml-compiler-libs.v0.17.0 (cached)
-> retrieved ocaml-rocksdb.0.02 (https://github.com/chetmurthy/ocaml-rocksdb/archive/refs/tags/0.02.tar.gz)
-> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocamlgraph.2.2.0 (cached)
-> retrieved parsexp.v0.17.0 (cached)
-> retrieved pcre.8.0.5 (cached)
-> retrieved ppx_assert.v0.17.0 (cached)
-> retrieved ppx_base.v0.17.0 (cached)
-> retrieved ppx_bench.v0.17.1 (cached)
-> retrieved ppx_bin_prot.v0.17.1 (cached)
-> retrieved ppx_cold.v0.17.0 (cached)
-> retrieved ppx_compare.v0.17.0 (cached)
-> retrieved ppx_custom_printf.v0.17.0 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ppx_deriving.6.1.1 (cached)
-> retrieved ppx_diff.v0.17.1 (cached)
-> retrieved ppx_disable_unused_warnings.v0.17.0 (cached)
-> retrieved ppx_enumerate.v0.17.0 (cached)
-> retrieved ppx_expect.v0.17.3 (cached)
-> retrieved ppx_fields_conv.v0.17.0 (cached)
-> retrieved ppx_fixed_literal.v0.17.0 (cached)
-> retrieved ppx_globalize.v0.17.2 (cached)
-> retrieved ppx_hash.v0.17.0 (cached)
-> retrieved ppx_here.v0.17.0 (cached)
-> retrieved ppx_ignore_instrumentation.v0.17.0 (cached)
-> retrieved ppx_inline_test.v0.17.1 (cached)
-> retrieved ppx_jane.v0.17.0 (cached)
-> retrieved ppx_let.v0.17.1 (cached)
-> retrieved ppx_log.v0.17.0 (cached)
-> retrieved ppx_module_timer.v0.17.0 (cached)
-> retrieved ppx_optcomp.v0.17.1 (cached)
-> retrieved ppx_optional.v0.17.0 (cached)
-> retrieved ppx_pipebang.v0.17.0 (cached)
-> retrieved ppx_sexp_conv.v0.17.1 (cached)
-> retrieved ppx_sexp_message.v0.17.0 (cached)
-> retrieved ppx_sexp_value.v0.17.0 (cached)
-> retrieved ppx_stable.v0.17.1 (cached)
-> retrieved ppx_stable_witness.v0.17.0 (cached)
-> retrieved ppx_string.v0.17.0 (cached)
-> retrieved ppx_string_conv.v0.17.0 (cached)
-> retrieved ppx_tydi.v0.17.1 (cached)
-> retrieved ppx_typerep_conv.v0.17.1 (cached)
-> retrieved ppx_variants_conv.v0.17.1 (cached)
-> retrieved ppxlib.0.38.0 (cached)
-> retrieved ppxlib_jane.v0.17.4 (cached)
-> retrieved re.1.14.0 (cached)
-> retrieved result.1.5 (cached)
-> retrieved rresult.0.7.0 (cached)
-> retrieved sexplib.v0.17.0 (cached)
-> retrieved sexplib0.v0.17.0 (cached)
-> retrieved splittable_random.v0.17.0 (cached)
-> retrieved stdio.v0.17.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved time_now.v0.17.0 (cached)
-> retrieved topkg.1.1.1 (cached)
-> retrieved typerep.v0.17.1 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved variantslib.v0.17.0 (cached)
-> installed num.1.6
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed rresult.0.7.0
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed logs.0.10.0
-> installed fpath.0.7.3
-> installed jsonm.1.0.2
-> installed bos.0.2.1
-> installed dune.3.22.2
-> installed jane-street-headers.v0.17.0
-> installed ppx_derivers.1.2.1
-> installed csexp.1.5.2
-> installed camlp-streams.5.0.1
-> installed cppo.1.8.0
-> installed cstruct.6.2.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed re.1.14.0
-> installed result.1.5
-> installed sexplib0.v0.17.0
-> installed stdlib-shims.0.3.0
-> installed hex.1.5.0
-> installed ocamlgraph.2.2.0
-> installed ezjsonm.1.3.0
-> installed dune-configurator.3.22.2
-> installed parsexp.v0.17.0
-> installed not-ocamlfind.0.14
-> installed sexplib.v0.17.0
-> installed camlp5-buildscripts.0.06
-> installed dune-compiledb.0.6.0
-> installed pcre.8.0.5
-> installed base.v0.17.3
-> installed variantslib.v0.17.0
-> installed fieldslib.v0.17.0
-> installed stdio.v0.17.0
-> installed typerep.v0.17.1
-> installed ppxlib.0.38.0
-> installed ppx_optcomp.v0.17.1
-> installed ppxlib_jane.v0.17.4
-> installed ppx_tydi.v0.17.1
-> installed ppx_cold.v0.17.0
-> installed ppx_disable_unused_warnings.v0.17.0
-> installed ppx_here.v0.17.0
-> installed ppx_stable_witness.v0.17.0
-> installed ppx_typerep_conv.v0.17.1
-> installed ppx_variants_conv.v0.17.1
-> installed ppx_fields_conv.v0.17.0
-> installed ppx_stable.v0.17.1
-> installed ppx_ignore_instrumentation.v0.17.0
-> installed ppx_pipebang.v0.17.0
-> installed ppx_fixed_literal.v0.17.0
-> installed ppx_enumerate.v0.17.0
-> installed ppx_globalize.v0.17.2
-> installed ppx_compare.v0.17.0
-> installed ppx_deriving.6.1.1
-> installed ppx_optional.v0.17.0
-> installed ppx_sexp_conv.v0.17.1
-> installed cppffigen.0.002
-> installed ppx_let.v0.17.1
-> installed ppx_hash.v0.17.0
-> installed ppx_assert.v0.17.0
-> installed ppx_sexp_value.v0.17.0
-> installed ppx_sexp_message.v0.17.0
-> installed ppx_base.v0.17.0
-> installed ppx_custom_printf.v0.17.0
-> installed capitalization.v0.17.0
-> installed jst-config.v0.17.0
-> installed bin_prot.v0.17.0-1
-> installed ppx_string.v0.17.0
-> installed time_now.v0.17.0
-> installed ppx_bin_prot.v0.17.1
-> installed ppx_string_conv.v0.17.0
-> installed ppx_module_timer.v0.17.0
-> installed ppx_inline_test.v0.17.1
-> installed ppx_bench.v0.17.1
-> installed ppx_expect.v0.17.3
-> installed splittable_random.v0.17.0
-> installed ppx_log.v0.17.0
-> installed base_quickcheck.v0.17.1
-> installed ppx_jane.v0.17.0
-> installed gel.v0.17.0
-> installed int_repr.v0.17.0
-> installed base_bigstring.v0.17.0
-> installed ppx_diff.v0.17.1
-> installed core.v0.17.2
[ERROR] The compilation of ocaml-rocksdb.0.02 failed at "make sys".
#=== ERROR while compiling ocaml-rocksdb.0.02 =================================#
# context 2.5.1 | linux/x86_64 | ocaml-base-compiler.5.4.1 | pinned(https://github.com/chetmurthy/ocaml-rocksdb/archive/refs/tags/0.02.tar.gz)
# path ~/.opam/5.4/.opam-switch/build/ocaml-rocksdb.0.02
# command ~/.opam/opam-init/hooks/sandbox.sh build make sys
# exit-code 2
# env-file ~/.opam/log/ocaml-rocksdb-7-925340.env
# output-file ~/.opam/log/ocaml-rocksdb-7-925340.out
### output ###
# set -e; for i in lib; do cd $i; make all; cd ..; done
# make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/ocaml-rocksdb.0.02/lib'
# Package snappy was not found in the pkg-config search path.
# Perhaps you should add the directory containing `snappy.pc'
# to the PKG_CONFIG_PATH environment variable
# Package 'snappy' not found
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c misc.ml
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' misc.ml
# File "misc.ml", line 52, characters 6-12:
# 52 | let isatty = Unix.isatty fd in
# ^^^^^^
# Warning 26 [unused-var]: unused variable isatty.
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks_types.mli
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks_types.mli
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks_types.ml
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks_types.ml
# ocamlfind cppffigen/cppffigen --output ml < rocksdb-ffi.idl > ffi.ml
# ocamlfind cppffigen/cppffigen --output mli < rocksdb-ffi.idl > ffi.mli
# ocamlfind cppffigen/cppffigen --output cpp < rocksdb-ffi.idl > ffi_stubs.cc
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c ffi.mli
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' ffi.mli
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c ffi.ml
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' ffi.ml
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks.mli
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks.mli
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlc -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks.ml
# 'ocamlfind' 'ocamlc' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks.ml
# ocamlfind ocamlc -g -pack -o ocaml_rocksdb.cmo misc.cmo rocks_types.cmo ffi.cmo rocks.cmo
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlopt -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c misc.ml
# 'ocamlfind' 'ocamlopt' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' misc.ml
# File "misc.ml", line 52, characters 6-12:
# 52 | let isatty = Unix.isatty fd in
# ^^^^^^
# Warning 26 [unused-var]: unused variable isatty.
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlopt -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks_types.ml
# 'ocamlfind' 'ocamlopt' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks_types.ml
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlopt -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c ffi.ml
# 'ocamlfind' 'ocamlopt' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' ffi.ml
# env TOP=.. ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind camlp5-buildscripts/ya-wrap-ocamlfind ocamlfind ocamlopt -g -for-pack Ocaml_rocksdb -linkall -thread -package result,threads,core -c rocks.ml
# 'ocamlfind' 'ocamlopt' '-g' '-for-pack' 'Ocaml_rocksdb' '-linkall' '-thread' '-package' 'result,threads,core' '-c' rocks.ml
# ocamlfind ocamlopt -g -pack -o ocaml_rocksdb.cmx misc.cmx rocks_types.cmx ffi.cmx rocks.cmx
# g++ -c -fPIC -g2 -I. -I/home/opam/.opam/5.4/lib/cppffigen -I/home/opam/.opam/5.4/lib/ocaml -std=c++17 -fno-rtti -std=c++20 -faligned-new -DHAVE_ALIGNED_NEW -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -Os -fstack-clash-protection -Wformat -Werror=format-security -fno-plt -DOS_LINUX -fno-builtin-memcmp -DROCKSDB_FALLOCATE_PRESENT -DSNAPPY -DGFLAGS=1 -DZLIB -DBZIP2 -DLZ4 -DZSTD -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_AUXV_GETAUXVAL_PRESENT -DROCKSDB_IOURING_PRESENT -march=native -DHAVE_UINT128_EXTENSION -isystem third-party/gtest-1.8.1/fused-src -DPIC -o ffi_stubs.o ffi_stubs.cc
# In file included from ffi_stubs.cc:23:
# ocaml_rocksdb.inc: In constructor 'dboptions_t::dboptions_t(const rocksdb::DBOptions&)':
# ocaml_rocksdb.inc:215:40: error: 'const struct rocksdb::DBOptions' has no member named 'random_access_max_buffer_size'
# 215 | random_access_max_buffer_size(opts.random_access_max_buffer_size) ,
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# ocaml_rocksdb.inc:231:37: error: 'const struct rocksdb::DBOptions' has no member named 'fail_if_options_file_error'
# 231 | fail_if_options_file_error(opts.fail_if_options_file_error) ,
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~
# make[1]: *** [Makefile:70: ffi_stubs.o] Error 1
# make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/ocaml-rocksdb.0.02/lib'
# make: *** [Makefile:34: plugins] Error 2
<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build ocaml-rocksdb 0.02
+-
+- The following changes have been performed
| - install astring 0.8.5
| - install base v0.17.3
| - install base_bigstring v0.17.0
| - install base_quickcheck v0.17.1
| - install bin_prot v0.17.0-1
| - install bos 0.2.1
| - install camlp-streams 5.0.1
| - install camlp5-buildscripts 0.06
| - install capitalization v0.17.0
| - install cmdliner 1.3.0
| - install conf-g++ 1.0
| - install conf-libbz2 1
| - install conf-liblz4 1
| - install conf-libpcre 2
| - install conf-m4 1
| - install conf-pkg-config 4
| - install conf-rocksdb 1
| - install conf-rocksdb-ge-5-17-2 5.17.2
| - install conf-snappy 1
| - install conf-which 1
| - install conf-zlib 1
| - install core v0.17.2
| - install cppffigen 0.002
| - install cppo 1.8.0
| - install csexp 1.5.2
| - install cstruct 6.2.0
| - install dune 3.22.2
| - install dune-compiledb 0.6.0
| - install dune-configurator 3.22.2
| - install ezjsonm 1.3.0
| - install fieldslib v0.17.0
| - install fmt 0.11.0
| - install fpath 0.7.3
| - install gel v0.17.0
| - install hex 1.5.0
| - install int_repr v0.17.0
| - install jane-street-headers v0.17.0
| - install jsonm 1.0.2
| - install jst-config v0.17.0
| - install logs 0.10.0
| - install not-ocamlfind 0.14
| - install num 1.6
| - install ocaml-compiler-libs v0.17.0
| - install ocaml_intrinsics_kernel v0.17.1
| - install ocamlbuild 0.16.1
| - install ocamlfind 1.9.8
| - install ocamlgraph 2.2.0
| - install parsexp v0.17.0
| - install pcre 8.0.5
| - install ppx_assert v0.17.0
| - install ppx_base v0.17.0
| - install ppx_bench v0.17.1
| - install ppx_bin_prot v0.17.1
| - install ppx_cold v0.17.0
| - install ppx_compare v0.17.0
| - install ppx_custom_printf v0.17.0
| - install ppx_derivers 1.2.1
| - install ppx_deriving 6.1.1
| - install ppx_diff v0.17.1
| - install ppx_disable_unused_warnings v0.17.0
| - install ppx_enumerate v0.17.0
| - install ppx_expect v0.17.3
| - install ppx_fields_conv v0.17.0
| - install ppx_fixed_literal v0.17.0
| - install ppx_globalize v0.17.2
| - install ppx_hash v0.17.0
| - install ppx_here v0.17.0
| - install ppx_ignore_instrumentation v0.17.0
| - install ppx_inline_test v0.17.1
| - install ppx_jane v0.17.0
| - install ppx_let v0.17.1
| - install ppx_log v0.17.0
| - install ppx_module_timer v0.17.0
| - install ppx_optcomp v0.17.1
| - install ppx_optional v0.17.0
| - install ppx_pipebang v0.17.0
| - install ppx_sexp_conv v0.17.1
| - install ppx_sexp_message v0.17.0
| - install ppx_sexp_value v0.17.0
| - install ppx_stable v0.17.1
| - install ppx_stable_witness v0.17.0
| - install ppx_string v0.17.0
| - install ppx_string_conv v0.17.0
| - install ppx_tydi v0.17.1
| - install ppx_typerep_conv v0.17.1
| - install ppx_variants_conv v0.17.1
| - install ppxlib 0.38.0
| - install ppxlib_jane v0.17.4
| - install re 1.14.0
| - install result 1.5
| - install rresult 0.7.0
| - install sexplib v0.17.0
| - install sexplib0 v0.17.0
| - install splittable_random v0.17.0
| - install stdio v0.17.0
| - install stdlib-shims 0.3.0
| - install time_now v0.17.0
| - install topkg 1.1.1
| - install typerep v0.17.1
| - install uutf 1.0.4
| - install variantslib v0.17.0
+-
# 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/5.4/.opam-switch/backup/state-20260427080146.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 ocaml-rocksdb.0.02;
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 "\"alpine-3.23\""; then
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
fi;
test "$pkg" != 'ocaml-rocksdb.0.02' && 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-27 08:04.31: Job failed: Failed: Build failed
2026-04-27 08:04.31: Log analysis:
2026-04-27 08:04.31: >>>
[ERROR] The compilation of ocaml-rocksdb.0.02 failed at "make sys".
(score = 20)
2026-04-27 08:04.31: >>>
# ocaml_rocksdb.inc:215:40: error: 'const struct rocksdb::DBOptions' has no member named 'random_access_max_buffer_size'
(score = 30)
2026-04-27 08:04.31: >>>
# ocaml_rocksdb.inc:231:37: error: 'const struct rocksdb::DBOptions' has no member named 'fail_if_options_file_error'
(score = 30)
2026-04-27 08:04.31: 'const struct rocksdb::DBOptions' has no member named 'random_access_max_buffer_size'