(for PR #28222)
2025-08-21 14:13.40: New job: build lwt_log.1.1.2, using opam 2.2 from https://github.com/ocaml/opam-repository.git#refs/pull/28222/head (a14b2680809606d7e55ae7ed410b73438cb77bd0) on debian-12-ocaml-5.3/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/28222/head" && git reset --hard a14b2680 git fetch origin master git merge --no-edit 4bae7ec4df49df4454ea492c8d7a1196aeae04e0 cat > ../Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-12-ocaml-5.3@sha256:ea4d070703e4c16aa9fe1cdf0b1a22c669ee514080881d205b570783be9040da USER 1000:1000 WORKDIR /home/opam RUN sudo ln -f /usr/bin/opam-2.2 /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 lwt_log.1.1.2 1.1.2 RUN opam reinstall lwt_log.1.1.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-12\""; then \ echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \ fi; \ test "$pkg" != 'lwt_log.1.1.2' && partial_fails="$partial_fails $pkg"; \ done; \ test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \ exit 1 END-OF-DOCKERFILE docker build -f ../Dockerfile . 2025-08-21 14:13.40: Using cache hint "ocaml/opam:debian-12-ocaml-5.3@sha256:ea4d070703e4c16aa9fe1cdf0b1a22c669ee514080881d205b570783be9040da-lwt_log.1.1.2-a14b2680809606d7e55ae7ed410b73438cb77bd0" 2025-08-21 14:13.40: Using OBuilder spec: ((from ocaml/opam:debian-12-ocaml-5.3@sha256:ea4d070703e4c16aa9fe1cdf0b1a22c669ee514080881d205b570783be9040da) (user (uid 1000) (gid 1000)) (workdir /home/opam) (run (shell "sudo ln -f /usr/bin/opam-2.2 /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 lwt_log.1.1.2 1.1.2")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam reinstall lwt_log.1.1.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-12\\\"\"; then\ \n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\ \n fi;\ \n test \"$pkg\" != 'lwt_log.1.1.2' && partial_fails=\"$partial_fails $pkg\";\ \n done;\ \n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\ \n exit 1")) ) 2025-08-21 14:13.40: Waiting for resource in pool OCluster 2025-08-21 14:22.25: Waiting for worker… 2025-08-21 14:24.06: Got resource from pool OCluster Building on bremusa.ocamllabs.io All commits already cached Updating files: 82% (14876/18065) Updating files: 83% (14994/18065) Updating files: 84% (15175/18065) Updating files: 85% (15356/18065) Updating files: 86% (15536/18065) Updating files: 87% (15717/18065) Updating files: 88% (15898/18065) Updating files: 89% (16078/18065) Updating files: 90% (16259/18065) Updating files: 91% (16440/18065) Updating files: 92% (16620/18065) Updating files: 93% (16801/18065) Updating files: 94% (16982/18065) Updating files: 95% (17162/18065) Updating files: 96% (17343/18065) Updating files: 97% (17524/18065) Updating files: 98% (17704/18065) Updating files: 99% (17885/18065) Updating files: 100% (18065/18065) Updating files: 100% (18065/18065), done. HEAD is now at 4bae7ec4df Merge pull request #28375 from jmid/opam-compiler-re-bounds Merge made by the 'ort' strategy. packages/curl_lwt/curl_lwt.0.10.0/opam | 2 +- packages/lwt/lwt.6.0.0~alpha01/opam | 69 +++++++++++++++++++++++ packages/lwt_direct/lwt_direct.6.0.0~alpha01/opam | 44 +++++++++++++++ packages/lwt_glib/lwt_glib.1.0.1/opam | 2 +- packages/lwt_glib/lwt_glib.1.1.0/opam | 2 +- packages/lwt_glib/lwt_glib.1.1.1/opam | 2 +- packages/lwt_log/lwt_log.1.1.0/opam | 2 +- packages/lwt_log/lwt_log.1.1.1/opam | 2 +- packages/lwt_log/lwt_log.1.1.2/opam | 2 +- packages/ocurl/ocurl.0.7.6/opam | 1 + packages/ocurl/ocurl.0.7.7/opam | 1 + packages/ocurl/ocurl.0.7.8/opam | 1 + packages/ocurl/ocurl.0.7.9/opam | 1 + packages/ocurl/ocurl.0.8.1/opam | 1 + packages/ocurl/ocurl.0.8.2/opam | 1 + packages/ocurl/ocurl.0.9.0/opam | 1 + packages/ocurl/ocurl.0.9.1/opam | 1 + packages/ocurl/ocurl.0.9.2/opam | 1 + 18 files changed, 129 insertions(+), 7 deletions(-) create mode 100644 packages/lwt/lwt.6.0.0~alpha01/opam create mode 100644 packages/lwt_direct/lwt_direct.6.0.0~alpha01/opam (from ocaml/opam:debian-12-ocaml-5.3@sha256:ea4d070703e4c16aa9fe1cdf0b1a22c669ee514080881d205b570783be9040da) 2025-08-21 14:24.18 ---> using "7b3e7b3709bbd37e599e66041e6848f5fe2736f92dc6c0cdd0ce7e7e3b68a5fe" from cache /: (user (uid 1000) (gid 1000)) /: (workdir /home/opam) /home/opam: (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam")) 2025-08-21 14:24.18 ---> using "8b269e7fac6347f0a0325b87507f8516d84a698decb3c1c29ae15e810730a2ba" 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 development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted. You may want to back it up before going further. Continue? [y/n] y Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2025-08-21 14:24.18 ---> using "582986a8d5808e52ca470038176dfb49a5257b71df5626d1cd9c0eeeadd0d1d7" 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.2.1 (01e9a24a61e23e42d513b4b775d8c30c807439b2) # self-upgrade no # system arch=x86_64 os=linux os-distribution=debian os-version=12 # solver builtin-0install # install-criteria # upgrade-criteria # jobs 71 # repositories 1 (version-controlled) # pinned 1 (version) # current-switch 5.3 # invariant ocaml-base-compiler = 5.3.0 # compiler-packages ocaml-base-compiler.5.3.0, ocaml-compiler.5.3.0, ocaml-options-vanilla.1 # ocaml:native true # ocaml:native-tools true # ocaml:native-dynlink true # ocaml:stubsdir /home/opam/.opam/5.3/lib/ocaml/stublibs:/home/opam/.opam/5.3/lib/ocaml # ocaml:preinstalled false # ocaml:compiler 5.3.0 2025-08-21 14:24.18 ---> using "f778b9d8c9cb5d1074b0d36af118d8c690b89892c02d459be7433339e9e128f7" from cache /home/opam: (env OPAMDOWNLOADJOBS 1) /home/opam: (env OPAMERRLOGLEN 0) /home/opam: (env OPAMPRECISETRACKING 1) /home/opam: (env CI true) /home/opam: (env OPAM_REPO_CI true) /home/opam: (run (shell "rm -rf opam-repository/")) 2025-08-21 14:24.18 ---> using "713a9e587a3d220db137f85f8cede94dd15175ccde74d1b794791c0fd2a3dd43" from cache /home/opam: (copy (src .) (dst opam-repository/)) 2025-08-21 14:24.27 ---> saved as "8effd0a82da39ea9d4367d5000741b73f5444afa4b96b1a266334cee8d749879" /home/opam: (run (shell "opam repository set-url --strict default opam-repository/")) [default] Initialised 2025-08-21 14:24.50 ---> saved as "5e09c93e5bf182f97d6bd4859b514e8f077e8c1b59438e041eeea3fc44a865dc" /home/opam: (run (network host) (shell "opam update --depexts || true")) + /usr/bin/sudo "apt-get" "update" - Hit:1 http://deb.debian.org/debian bookworm InRelease - Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB] - Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] - Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [274 kB] - Fetched 378 kB in 0s (1019 kB/s) - Reading package lists... - 2025-08-21 14:24.51 ---> saved as "68c6e43ba62b262a64576fd27500493076d9f2c0f351b9ba34f3776a95328081" /home/opam: (run (shell "opam pin add -k version -yn lwt_log.1.1.2 1.1.2")) lwt_log is now pinned to version 1.1.2 2025-08-21 14:24.53 ---> saved as "bea665f31e34f6cf96d276b916e89879878451e045c5921c8425663c7e785e77" /home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam reinstall lwt_log.1.1.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-12\\\"\"; then\ \n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\ \n fi;\ \n test \"$pkg\" != 'lwt_log.1.1.2' && partial_fails=\"$partial_fails $pkg\";\ \n done;\ \n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\ \n exit 1")) lwt_log.1.1.2 is not installed. Install it? [y/n] y The following actions will be performed: === install 10 packages - install base-bytes base [required by ocplib-endian] - install cppo 1.8.0 [required by lwt] - install csexp 1.5.2 [required by dune-configurator] - install domain_shims 0.1.0 [required by lwt] - install dune 3.20.0 [required by lwt_log] - install dune-configurator 3.20.0 [required by lwt] - install lwt 6.0.0~alpha01 [required by lwt_log] - install lwt_log 1.1.2 (pinned) - install ocamlfind 1.9.8 [required by base-bytes] - install ocplib-endian 1.2 [required by lwt] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved cppo.1.8.0 (cached) -> retrieved csexp.1.5.2 (cached) -> retrieved domain_shims.0.1.0 (cached) -> retrieved dune.3.20.0, dune-configurator.3.20.0 (cached) -> retrieved lwt.6.0.0~alpha01 (cached) -> retrieved lwt_log.1.1.2 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved ocplib-endian.1.2 (cached) -> installed ocamlfind.1.9.8 -> installed base-bytes.base -> installed dune.3.20.0 -> installed domain_shims.0.1.0 -> installed csexp.1.5.2 -> installed cppo.1.8.0 -> installed ocplib-endian.1.2 -> installed dune-configurator.3.20.0 -> installed lwt.6.0.0~alpha01 [ERROR] The compilation of lwt_log.1.1.2 failed at "dune build -p lwt_log -j 71". #=== ERROR while compiling lwt_log.1.1.2 ======================================# # context 2.2.1 | linux/x86_64 | ocaml-base-compiler.5.3.0 | pinned(https://github.com/ocsigen/lwt_log/archive/1.1.2.tar.gz) # path ~/.opam/5.3/.opam-switch/build/lwt_log.1.1.2 # command ~/.opam/opam-init/hooks/sandbox.sh build dune build -p lwt_log -j 71 # exit-code 1 # env-file ~/.opam/log/lwt_log-7-fdf6ef.env # output-file ~/.opam/log/lwt_log-7-fdf6ef.out ### output ### # (cd _build/default && /home/opam/.opam/5.3/bin/ocamlc.opt -w -40 -w +A -g -bin-annot -bin-annot-occurrences -I src/unix/.lwt_log.objs/byte -I /home/opam/.opam/5.3/lib/bytes -I /home/opam/.opam/5.3/lib/domain_shims -I /home/opam/.opam/5.3/lib/lwt -I /home/opam/.opam/5.3/lib/lwt/unix -I /home/opam/.opam/5.3/lib/ocaml/threads -I /home/opam/.opam/5.3/lib/ocaml/unix -I /home/opam/.opam/5.3/lib/ocplib-endian -I /home/opam/.opam/5.3/lib/ocplib-endian/bigstring -I src/core/.lwt_log_core.objs/byte -cmi-file src/unix/.lwt_log.objs/byte/lwt_daemon.cmi -no-alias-deps -o src/unix/.lwt_log.objs/byte/lwt_daemon.cmo -c -impl src/unix/lwt_daemon.ml) # File "src/unix/lwt_daemon.ml", line 64, characters 49-68: # 64 | Lwt_sequence.iter_node_l Lwt_sequence.remove Lwt_main.exit_hooks [@ocaml.warning "-3"]; # ^^^^^^^^^^^^^^^^^^^ # Error: Unbound value "Lwt_main.exit_hooks" # (cd _build/default && /home/opam/.opam/5.3/bin/ocamlopt.opt -w -40 -w +A -g -I src/unix/.lwt_log.objs/byte -I src/unix/.lwt_log.objs/native -I /home/opam/.opam/5.3/lib/bytes -I /home/opam/.opam/5.3/lib/domain_shims -I /home/opam/.opam/5.3/lib/lwt -I /home/opam/.opam/5.3/lib/lwt/unix -I /home/opam/.opam/5.3/lib/ocaml/threads -I /home/opam/.opam/5.3/lib/ocaml/unix -I /home/opam/.opam/5.3/lib/ocplib-endian -I /home/opam/.opam/5.3/lib/ocplib-endian/bigstring -I src/core/.lwt_log_core.objs/byte -I src/core/.lwt_log_core.objs/native -cmi-file src/unix/.lwt_log.objs/byte/lwt_daemon.cmi -no-alias-deps -o src/unix/.lwt_log.objs/native/lwt_daemon.cmx -c -impl src/unix/lwt_daemon.ml) # File "src/unix/lwt_daemon.ml", line 64, characters 49-68: # 64 | Lwt_sequence.iter_node_l Lwt_sequence.remove Lwt_main.exit_hooks [@ocaml.warning "-3"]; # ^^^^^^^^^^^^^^^^^^^ # Error: Unbound value "Lwt_main.exit_hooks" <><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> +- The following actions failed | - build lwt_log 1.1.2 +- +- The following changes have been performed | - install base-bytes base | - install cppo 1.8.0 | - install csexp 1.5.2 | - install domain_shims 0.1.0 | - install dune 3.20.0 | - install dune-configurator 3.20.0 | - install lwt 6.0.0~alpha01 | - install ocamlfind 1.9.8 | - install ocplib-endian 1.2 +- # Run eval $(opam env) to update the current shell environment The former state can be restored with: /usr/bin/opam switch import "/home/opam/.opam/5.3/.opam-switch/backup/state-20250821142454.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 lwt_log.1.1.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-12\""; then echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; fi; test "$pkg" != 'lwt_log.1.1.2' && partial_fails="$partial_fails $pkg"; done; test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; exit 1" failed with exit status 1 2025-08-21 14:25.43: Job failed: Failed: Build failed 2025-08-21 14:25.43: Log analysis: 2025-08-21 14:25.43: >>> [ERROR] The compilation of lwt_log.1.1.2 failed at "dune build -p lwt_log -j 71". (score = 20) 2025-08-21 14:25.43: >>> # Error: Unbound value "Lwt_main.exit_hooks" (score = 48) 2025-08-21 14:25.43: >>> # Error: Unbound value "Lwt_main.exit_hooks" (score = 48) 2025-08-21 14:25.43: Unbound value "Lwt_main.exit_hooks"