- github
- ocaml
- opam-repository
- 3e0c39
- compilers,5.4,dune.3.22.2,revdeps,ocaml-canvas.1.0.0
(not at the head of any monitored branch or PR)
2026-04-10 17:47.51: New job: test ocaml-canvas.1.0.0 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-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/29704/head" && git reset --hard 3e0c395e
git fetch origin master
git merge --no-edit 9d8ceab8e9f49f5671cf459997c8a47cf0e675ca
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:a32e708a4134e2a41db640ce8876b2475794c7cd5c0ce822b17aeaf65592bf03
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 ocaml-canvas.1.0.0; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'ocaml-canvas.1.0.0' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
RUN (opam reinstall --with-test ocaml-canvas.1.0.0) || true
RUN opam reinstall --with-test --verbose ocaml-canvas.1.0.0; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'ocaml-canvas.1.0.0' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
END-OF-DOCKERFILE
docker build -f ../Dockerfile .
2026-04-10 17:47.51: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:a32e708a4134e2a41db640ce8876b2475794c7cd5c0ce822b17aeaf65592bf03-dune.3.22.2-ocaml-canvas.1.0.0-3e0c395e7b1393a792367f8edca3654dac71e6fd"
2026-04-10 17:47.51: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:a32e708a4134e2a41db640ce8876b2475794c7cd5c0ce822b17aeaf65592bf03)
(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 ocaml-canvas.1.0.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-canvas.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
(run (network host)
(shell "(opam reinstall --with-test ocaml-canvas.1.0.0) || true"))
(run (shell "opam reinstall --with-test --verbose ocaml-canvas.1.0.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-canvas.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
)
2026-04-10 17:47.51: Waiting for resource in pool OCluster
2026-04-11 01:04.33: Waiting for worker…
2026-04-11 01:05.51: Got resource from pool OCluster
Building on odawa.caelum.ci.dev
All commits already cached
HEAD is now at 9d8ceab8e9 Merge pull request #29697 from filipeom/opam-publish-smtml.0.25.0
Updating 9d8ceab8e9..3e0c395e7b
Fast-forward
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-5.4@sha256:a32e708a4134e2a41db640ce8876b2475794c7cd5c0ce822b17aeaf65592bf03)
2026-04-11 01:05.57 ---> using "4e852d2e6c9ac39a43c0cb8d1ef92ecff46d16da630bff560bb4811e0bb278c3" 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-11 01:05.57 ---> using "c82a131037ae9ff29ac79f02306f126bd36264ccb683d2324f553289b0d4a496" 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
[NOTE] The 'jobs' option was reset, its value was 71 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=71 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-04-11 01:05.57 ---> using "983e4dc58d26f7046c0fe6fbe642bc66995d2abecd6409a14b0c538d3f1a7bd2" 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 255
# 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-11 01:05.57 ---> using "8b346866360ce3a934df95a88d3a1520ccbf589f659a7e26aa97be0b96b1083a" 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-11 01:05.57 ---> using "8be7be6786c965fdad4454d936ba98cc5fa516f8de8fee90f280618661533faa" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-04-11 01:05.57 ---> using "c0553ba1781e82471f38f012874b6b7341f662c325cc75285bfd7972f7a6ff87" from cache
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-11 01:05.57 ---> using "e05b19873f9cb2918bf114246a81e8bf23cb51c80d627ed2b044915e44a942dd" 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 [121 kB]
- Fetched 211 kB in 0s (1910 kB/s)
- Reading package lists...
2026-04-11 01:05.57 ---> using "dc69cd977951bdc4dffcc68622bf3ea65b4d02db568ca1f8bd5ab395f414a24f" 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-11 01:05.57 ---> using "d2dbab2e673d61aa25772ad855c91b371a83246b8bcc8859d8fc280f9fcf9826" 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-11 01:05.57 ---> using "6f94ccb4a18327fa9742ec042c4183209005d455af95ec03af9e9453c8a8c9d1" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall ocaml-canvas.1.0.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-canvas.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
ocaml-canvas.1.0.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 16 packages
- install conf-freetype 1 [required by ocaml-canvas]
- install conf-libfontconfig 1 [required by ocaml-canvas]
- install conf-libxcb 1 [required by ocaml-canvas]
- install conf-libxcb-image 1 [required by ocaml-canvas]
- install conf-libxcb-keysyms 1 [required by ocaml-canvas]
- install conf-libxcb-shm 1 [required by ocaml-canvas]
- install conf-libxcb-xkb 1 [required by ocaml-canvas]
- install conf-pkg-config 4 [required by conf-libxcb-xkb, conf-libxcb-keysyms, conf-libxcb, etc.]
- install conf-xkbcommon 1 [required by ocaml-canvas]
- install csexp 1.5.2 [required by dune-configurator]
- install dune-configurator 3.22.2 [required by ocaml-canvas]
- install ocaml-canvas 1.0.0
- install ocamlbuild 0.16.1 [required by react]
- install ocamlfind 1.9.8 [required by react]
- install react 1.2.2 [required by ocaml-canvas]
- install topkg 1.1.1 [required by react]
The following system packages will first need to be installed:
libfontconfig1-dev libfreetype6-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-shm0-dev libxcb-xkb-dev libxkbcommon-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" "libfontconfig1-dev" "libfreetype6-dev" "libxcb-image0-dev" "libxcb-keysyms1-dev" "libxcb-shm0-dev" "libxcb-xkb-dev" "libxkbcommon-dev" "pkg-config"
- Preconfiguring packages ...
- Selecting previously unselected package bzip2-doc.
- (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 ... 20654 files and directories currently installed.)
- Preparing to unpack .../00-bzip2-doc_1.0.8-6_all.deb ...
- Unpacking bzip2-doc (1.0.8-6) ...
- Selecting previously unselected package fonts-dejavu-mono.
- Preparing to unpack .../01-fonts-dejavu-mono_2.37-8_all.deb ...
- Unpacking fonts-dejavu-mono (2.37-8) ...
- Selecting previously unselected package fonts-dejavu-core.
- Preparing to unpack .../02-fonts-dejavu-core_2.37-8_all.deb ...
- Unpacking fonts-dejavu-core (2.37-8) ...
- Selecting previously unselected package fontconfig-config.
- Preparing to unpack .../03-fontconfig-config_2.15.0-2.3_amd64.deb ...
- Unpacking fontconfig-config (2.15.0-2.3) ...
- Selecting previously unselected package libbrotli-dev:amd64.
- Preparing to unpack .../04-libbrotli-dev_1.1.0-2+b7_amd64.deb ...
- Unpacking libbrotli-dev:amd64 (1.1.0-2+b7) ...
- Selecting previously unselected package libbz2-dev:amd64.
- Preparing to unpack .../05-libbz2-dev_1.0.8-6_amd64.deb ...
- Unpacking libbz2-dev:amd64 (1.0.8-6) ...
- Selecting previously unselected package libexpat1-dev:amd64.
- Preparing to unpack .../06-libexpat1-dev_2.7.1-2_amd64.deb ...
- Unpacking libexpat1-dev:amd64 (2.7.1-2) ...
- Selecting previously unselected package libpng16-16t64:amd64.
- Preparing to unpack .../07-libpng16-16t64_1.6.48-1+deb13u4_amd64.deb ...
- Unpacking libpng16-16t64:amd64 (1.6.48-1+deb13u4) ...
- Selecting previously unselected package libfreetype6:amd64.
- Preparing to unpack .../08-libfreetype6_2.13.3+dfsg-1+deb13u1_amd64.deb ...
- Unpacking libfreetype6:amd64 (2.13.3+dfsg-1+deb13u1) ...
- Selecting previously unselected package libfontconfig1:amd64.
- Preparing to unpack .../09-libfontconfig1_2.15.0-2.3_amd64.deb ...
- Unpacking libfontconfig1:amd64 (2.15.0-2.3) ...
- Selecting previously unselected package zlib1g-dev:amd64.
- Preparing to unpack .../10-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1+b1_amd64.deb ...
- Unpacking zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1+b1) ...
- Selecting previously unselected package libpng-dev:amd64.
- Preparing to unpack .../11-libpng-dev_1.6.48-1+deb13u4_amd64.deb ...
- Unpacking libpng-dev:amd64 (1.6.48-1+deb13u4) ...
- Selecting previously unselected package libfreetype-dev:amd64.
- Preparing to unpack .../12-libfreetype-dev_2.13.3+dfsg-1+deb13u1_amd64.deb ...
- Unpacking libfreetype-dev:amd64 (2.13.3+dfsg-1+deb13u1) ...
- Selecting previously unselected package uuid-dev:amd64.
- Preparing to unpack .../13-uuid-dev_2.41-5_amd64.deb ...
- Unpacking uuid-dev:amd64 (2.41-5) ...
- Selecting previously unselected package libpkgconf3:amd64.
- Preparing to unpack .../14-libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../15-pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../16-pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package libfontconfig-dev:amd64.
- Preparing to unpack .../17-libfontconfig-dev_2.15.0-2.3_amd64.deb ...
- Unpacking libfontconfig-dev:amd64 (2.15.0-2.3) ...
- Selecting previously unselected package libfontconfig1-dev:amd64.
- Preparing to unpack .../18-libfontconfig1-dev_2.15.0-2.3_amd64.deb ...
- Unpacking libfontconfig1-dev:amd64 (2.15.0-2.3) ...
- Selecting previously unselected package libpng-tools.
- Preparing to unpack .../19-libpng-tools_1.6.48-1+deb13u4_amd64.deb ...
- Unpacking libpng-tools (1.6.48-1+deb13u4) ...
- Selecting previously unselected package libxcb-shm0:amd64.
- Preparing to unpack .../20-libxcb-shm0_1.17.0-2+b1_amd64.deb ...
- Unpacking libxcb-shm0:amd64 (1.17.0-2+b1) ...
- Selecting previously unselected package libxcb-util1:amd64.
- Preparing to unpack .../21-libxcb-util1_0.4.1-1_amd64.deb ...
- Unpacking libxcb-util1:amd64 (0.4.1-1) ...
- Selecting previously unselected package libxcb-image0:amd64.
- Preparing to unpack .../22-libxcb-image0_0.4.0-2+b2_amd64.deb ...
- Unpacking libxcb-image0:amd64 (0.4.0-2+b2) ...
- Selecting previously unselected package libxcb-shm0-dev:amd64.
- Preparing to unpack .../23-libxcb-shm0-dev_1.17.0-2+b1_amd64.deb ...
- Unpacking libxcb-shm0-dev:amd64 (1.17.0-2+b1) ...
- Selecting previously unselected package libxcb-image0-dev:amd64.
- Preparing to unpack .../24-libxcb-image0-dev_0.4.0-2+b2_amd64.deb ...
- Unpacking libxcb-image0-dev:amd64 (0.4.0-2+b2) ...
- Selecting previously unselected package libxcb-keysyms1:amd64.
- Preparing to unpack .../25-libxcb-keysyms1_0.4.1-1_amd64.deb ...
- Unpacking libxcb-keysyms1:amd64 (0.4.1-1) ...
- Selecting previously unselected package libxcb-keysyms1-dev:amd64.
- Preparing to unpack .../26-libxcb-keysyms1-dev_0.4.1-1_amd64.deb ...
- Unpacking libxcb-keysyms1-dev:amd64 (0.4.1-1) ...
- Selecting previously unselected package libxcb-xkb1:amd64.
- Preparing to unpack .../27-libxcb-xkb1_1.17.0-2+b1_amd64.deb ...
- Unpacking libxcb-xkb1:amd64 (1.17.0-2+b1) ...
- Selecting previously unselected package libxcb-xkb-dev:amd64.
- Preparing to unpack .../28-libxcb-xkb-dev_1.17.0-2+b1_amd64.deb ...
- Unpacking libxcb-xkb-dev:amd64 (1.17.0-2+b1) ...
- Selecting previously unselected package xkb-data.
- Preparing to unpack .../29-xkb-data_2.42-1_all.deb ...
- Unpacking xkb-data (2.42-1) ...
- Selecting previously unselected package libxkbcommon0:amd64.
- Preparing to unpack .../30-libxkbcommon0_1.7.0-2_amd64.deb ...
- Unpacking libxkbcommon0:amd64 (1.7.0-2) ...
- Selecting previously unselected package libxkbcommon-dev:amd64.
- Preparing to unpack .../31-libxkbcommon-dev_1.7.0-2_amd64.deb ...
- Unpacking libxkbcommon-dev:amd64 (1.7.0-2) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../32-pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up bzip2-doc (1.0.8-6) ...
- Setting up libxcb-keysyms1:amd64 (0.4.1-1) ...
- Setting up xkb-data (2.42-1) ...
- Setting up libxcb-shm0:amd64 (1.17.0-2+b1) ...
- Setting up libxcb-util1:amd64 (0.4.1-1) ...
- Setting up libxcb-xkb1:amd64 (1.17.0-2+b1) ...
- Setting up libxcb-image0:amd64 (0.4.0-2+b2) ...
- Setting up libxcb-shm0-dev:amd64 (1.17.0-2+b1) ...
- Setting up libxcb-keysyms1-dev:amd64 (0.4.1-1) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up libexpat1-dev:amd64 (2.7.1-2) ...
- Setting up uuid-dev:amd64 (2.41-5) ...
- Setting up fonts-dejavu-mono (2.37-8) ...
- Setting up libpng16-16t64:amd64 (1.6.48-1+deb13u4) ...
- Setting up fonts-dejavu-core (2.37-8) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1+b1) ...
- Setting up libbrotli-dev:amd64 (1.1.0-2+b7) ...
- Setting up libxcb-image0-dev:amd64 (0.4.0-2+b2) ...
- Setting up libbz2-dev:amd64 (1.0.8-6) ...
- Setting up libxkbcommon0:amd64 (1.7.0-2) ...
- Setting up libpng-tools (1.6.48-1+deb13u4) ...
- Setting up fontconfig-config (2.15.0-2.3) ...
- Setting up libxkbcommon-dev:amd64 (1.7.0-2) ...
- Setting up libpng-dev:amd64 (1.6.48-1+deb13u4) ...
- Setting up libxcb-xkb-dev:amd64 (1.17.0-2+b1) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up libfreetype6:amd64 (2.13.3+dfsg-1+deb13u1) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Setting up libfontconfig1:amd64 (2.15.0-2.3) ...
- Setting up libfreetype-dev:amd64 (2.13.3+dfsg-1+deb13u1) ...
- Setting up libfontconfig-dev:amd64 (2.15.0-2.3) ...
- Setting up libfontconfig1-dev:amd64 (2.15.0-2.3) ...
- Processing triggers for libc-bin (2.41-12+deb13u2) ...
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved csexp.1.5.2 (cached)
-> installed conf-pkg-config.4
-> installed conf-freetype.1
-> installed conf-libfontconfig.1
-> installed conf-libxcb.1
-> installed conf-libxcb-shm.1
-> installed conf-libxcb-image.1
-> installed conf-libxcb-keysyms.1
-> installed conf-libxcb-xkb.1
-> installed conf-xkbcommon.1
-> installed csexp.1.5.2
-> retrieved dune-configurator.3.22.2 (cached)
-> retrieved ocaml-canvas.1.0.0 (https://opam.ocaml.org/cache)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved react.1.2.2 (cached)
-> retrieved topkg.1.1.1 (cached)
-> installed dune-configurator.3.22.2
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed react.1.2.2
-> installed ocaml-canvas.1.0.0
Done.
<><> ocaml-canvas.1.0.0 installed successfully ><><><><><><><><><><><><><><><><>
=> Javascript support: NO (requires js_of_ocaml >= 3.6)
=> Wayland support: NO (requires conf-libwayland, conf-wayland-protocols)
=> X11 support: YES
# To update the current shell environment, run: eval $(opam env)
2026-04-11 01:06.20 ---> saved as "8565f1abca3abfbc3a8c708d7246b878dc61ab338733a98720f4af33f475b3ab"
/home/opam: (run (network host)
(shell "(opam reinstall --with-test ocaml-canvas.1.0.0) || true"))
The following actions will be performed:
=== recompile 1 package
- recompile ocaml-canvas 1.0.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved ocaml-canvas.1.0.0 (https://opam.ocaml.org/cache)
-> removed ocaml-canvas.1.0.0
-> installed ocaml-canvas.1.0.0
Done.
<><> ocaml-canvas.1.0.0 installed successfully ><><><><><><><><><><><><><><><><>
=> Javascript support: NO (requires js_of_ocaml >= 3.6)
=> Wayland support: NO (requires conf-libwayland, conf-wayland-protocols)
=> X11 support: YES
# To update the current shell environment, run: eval $(opam env)
2026-04-11 01:06.25 ---> saved as "2773a7726797a87c9473e504345c11a4a270eb16ce5d80f4f846a796d2b0a5ac"
/home/opam: (run (shell "opam reinstall --with-test --verbose ocaml-canvas.1.0.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-canvas.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
The following actions will be performed:
=== recompile 1 package
- recompile ocaml-canvas 1.0.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing 1/4: [ocaml-canvas.1.0.0: extract]
-> retrieved ocaml-canvas.1.0.0 (cached)
Processing 2/4: [ocaml-canvas: sh dune build -p ocaml-canvas @configure --auto-promote || true]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "sh" "-c" "dune build -p ocaml-canvas @configure --auto-promote || true" (CWD=/home/opam/.opam/5.4/.opam-switch/build/ocaml-canvas.1.0.0)
- (cd _build/default/src && /home/opam/.opam/5.4/bin/ocaml unix.cma configure.ml) > _build/default/src/dune.inc.gen
- File "_none_", line 1:
- Alert ocaml_deprecated_auto_include:
- OCaml's lib directory layout changed in 5.0. The unix subdirectory has been
- automatically added to the search path, but you should add -I +unix to the
- command-line to silence this alert (e.g. by adding unix to the list of
- libraries in your dune file, or adding use_unix to your _tags file for
- ocamlbuild, or using -package unix for ocamlfind).
-
- File "_none_", line 1:
- Alert ocaml_deprecated_auto_include:
- OCaml's lib directory layout changed in 5.0. The unix subdirectory has been
- automatically added to the search path, but you should add -I +unix to the
- command-line to silence this alert (e.g. by adding unix to the list of
- libraries in your dune file, or adding use_unix to your _tags file for
- ocamlbuild, or using -package unix for ocamlfind).
- File "src/dune.inc", line 1, characters 0-0:
- /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/src/dune.inc _build/default/src/dune.inc.gen
- diff --git a/_build/default/src/dune.inc b/_build/default/src/dune.inc.gen
- index c176955..2664fdc 100644
- --- a/_build/default/src/dune.inc
- +++ b/_build/default/src/dune.inc.gen
- @@ -21,8 +21,5 @@
- state canvas backend
- ml_convert ml_canvas)
- (flags (:standard) (:include ccopt.sexp)))
- - (c_library_flags (:standard) (:include cclib.sexp))
- - (js_of_ocaml
- - (javascript_files implem/event.js implem/translate.js
- - stubs/ml_tags.js stubs/ml_convert.js stubs/ml_canvas.js)))
- + (c_library_flags (:standard) (:include cclib.sexp)))
-
- (cd _build/default/examples && /home/opam/.opam/5.4/bin/ocaml unix.cma configure.ml) > _build/default/examples/dune.inc.gen
- File "_none_", line 1:
- Alert ocaml_deprecated_auto_include:
- OCaml's lib directory layout changed in 5.0. The unix subdirectory has been
- automatically added to the search path, but you should add -I +unix to the
- command-line to silence this alert (e.g. by adding unix to the list of
- libraries in your dune file, or adding use_unix to your _tags file for
- ocamlbuild, or using -package unix for ocamlfind).
-
- File "_none_", line 1:
- Alert ocaml_deprecated_auto_include:
- OCaml's lib directory layout changed in 5.0. The unix subdirectory has been
- automatically added to the search path, but you should add -I +unix to the
- command-line to silence this alert (e.g. by adding unix to the list of
- libraries in your dune file, or adding use_unix to your _tags file for
- ocamlbuild, or using -package unix for ocamlfind).
- File "examples/dune.inc", line 1, characters 0-0:
- /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/examples/dune.inc _build/default/examples/dune.inc.gen
- diff --git a/_build/default/examples/dune.inc b/_build/default/examples/dune.inc.gen
- index 2914ac2..e3a5b9b 100644
- --- a/_build/default/examples/dune.inc
- +++ b/_build/default/examples/dune.inc.gen
- @@ -1,29 +1,16 @@
-
- -(rule
- - (target index.html)
- - (deps (glob_files *.js))
- - (action (run ./make_index/make_index.exe %{target})))
- -
- -
- (executable
- (name hello)
- (public_name ocaml-canvas-hello)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules hello)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files hello-extfs.js)))
- -
- -(rule
- - (target hello-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - frog.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name ppm_dump)
- (public_name ocaml-canvas-ppm_dump)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules ppm_dump)
- (libraries ocaml-canvas react))
-
- @@ -31,7 +18,7 @@
- (executable
- (name arcs)
- (public_name ocaml-canvas-arcs)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules arcs)
- (libraries ocaml-canvas react))
-
- @@ -39,7 +26,7 @@
- (executable
- (name gradients)
- (public_name ocaml-canvas-gradients)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules gradients)
- (libraries ocaml-canvas react))
-
- @@ -47,7 +34,7 @@
- (executable
- (name snake)
- (public_name ocaml-canvas-snake)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules snake)
- (libraries ocaml-canvas react))
-
- @@ -55,7 +42,7 @@
- (executable
- (name thicklines)
- (public_name ocaml-canvas-thicklines)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules thicklines)
- (libraries ocaml-canvas react))
-
- @@ -63,7 +50,7 @@
- (executable
- (name dashing_line)
- (public_name ocaml-canvas-dashing_line)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules dashing_line)
- (libraries ocaml-canvas react))
-
- @@ -71,23 +58,15 @@
- (executable
- (name compositions)
- (public_name ocaml-canvas-compositions)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules compositions)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files compositions-extfs.js)))
- -
- -(rule
- - (target compositions-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - fabric.png:/static/assets/
- - dragon.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name aim_with_mouse)
- (public_name ocaml-canvas-aim_with_mouse)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules aim_with_mouse)
- (libraries ocaml-canvas react))
-
- @@ -95,82 +74,47 @@
- (executable
- (name clipping)
- (public_name ocaml-canvas-clipping)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules clipping)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files clipping-extfs.js)))
- -
- -(rule
- - (target clipping-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - dragon.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name hexagon_grid)
- (public_name ocaml-canvas-hexagon_grid)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules hexagon_grid)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files hexagon_grid-extfs.js)))
- -
- -(rule
- - (target hexagon_grid-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - hexagon.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name ball)
- (public_name ocaml-canvas-ball)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules ball)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files ball-extfs.js)))
- -
- -(rule
- - (target ball-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - dragon.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name spritesheet)
- (public_name ocaml-canvas-spritesheet)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules spritesheet)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files spritesheet-extfs.js)))
- -
- -(rule
- - (target spritesheet-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - spritesheet.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name draw)
- (public_name ocaml-canvas-draw)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules draw)
- - (libraries ocaml-canvas react)
- - (js_of_ocaml
- - (javascript_files draw-extfs.js)))
- -
- -(rule
- - (target draw-extfs.js)
- - (action (run js_of_ocaml build-fs -o %{target} -I ../assets
- - colors.png:/static/assets/)))
- + (libraries ocaml-canvas react))
-
-
- (executable
- (name window_with_textbox)
- (public_name ocaml-canvas-window_with_textbox)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules window_with_textbox)
- (libraries ocaml-canvas react))
-
- @@ -178,7 +122,7 @@
- (executable
- (name demo1)
- (public_name ocaml-canvas-demo1)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo1)
- (libraries ocaml-canvas react))
-
- @@ -186,7 +130,7 @@
- (executable
- (name demo2)
- (public_name ocaml-canvas-demo2)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo2)
- (libraries ocaml-canvas react))
-
- @@ -194,7 +138,7 @@
- (executable
- (name demo3)
- (public_name ocaml-canvas-demo3)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo3)
- (libraries ocaml-canvas react))
-
- @@ -202,7 +146,7 @@
- (executable
- (name demo4)
- (public_name ocaml-canvas-demo4)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo4)
- (libraries ocaml-canvas react))
-
- @@ -210,7 +154,7 @@
- (executable
- (name demo5)
- (public_name ocaml-canvas-demo5)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo5)
- (libraries ocaml-canvas react))
-
- @@ -218,7 +162,7 @@
- (executable
- (name demo6)
- (public_name ocaml-canvas-demo6)
- - (modes byte_complete native js)
- + (modes byte_complete native)
- (modules demo6)
- (libraries ocaml-canvas react))
-
- Promoting _build/default/examples/dune.inc.gen to examples/dune.inc.
- Promoting _build/default/src/dune.inc.gen to src/dune.inc.
Processing 2/4: [ocaml-canvas: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ocaml-canvas" "-j" "255" "@install" "@runtest" (CWD=/home/opam/.opam/5.4/.opam-switch/build/ocaml-canvas.1.0.0)
-> compiled ocaml-canvas.1.0.0
-> removed ocaml-canvas.1.0.0
-> installed ocaml-canvas.1.0.0
Done.
<><> ocaml-canvas.1.0.0 installed successfully ><><><><><><><><><><><><><><><><>
=> Javascript support: NO (requires js_of_ocaml >= 3.6)
=> Wayland support: NO (requires conf-libwayland, conf-wayland-protocols)
=> X11 support: YES
# To update the current shell environment, run: eval $(opam env)
2026-04-11 01:06.31 ---> saved as "5a6b0642f6e4fc7c07ef63704d1b7fb76b555575433fb8bd5efb6d54cadd4bbf"
Job succeeded
2026-04-11 01:06.35: Job succeeded