2026-04-14 08:11.59: New job: test janestreet/spawn https://github.com/janestreet/spawn.git#refs/heads/master (fe3419b0db20819d7a31383544971e48a6dff20a) (freebsd-x86_64:freebsd-14.3-5.4_opam-2.5) Base: freebsd-14.3-ocaml-5.4 Opam project build To reproduce locally: git clone --recursive "https://github.com/janestreet/spawn.git" -b "master" && cd "spawn" && git reset --hard fe3419b0 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM freebsd-14.3-ocaml-5.4 # freebsd-14.3-5.4_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/local/bin/opam-2.5 /usr/local/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version WORKDIR /src RUN sudo chown opam /src RUN cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 spawn.opam ./ RUN opam pin add -yn spawn.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.2 dune-configurator.3.22.2 jane-street-headers.v0.17.0 jst-config.v0.17.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppxlib.0.38.0 ppxlib_jane.v0.17.4 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 time_now.v0.17.0" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y spawn.dev $DEPS RUN opam install $DEPS COPY --chown=1000:1000 . /src RUN opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-04-14 08:11.59: Using cache hint "janestreet/spawn-freebsd-14.3-ocaml-5.4-freebsd-14.3-5.4_opam-2.5-8abc69c831b579baf91c8767f63e758d" 2026-04-14 08:11.59: Using OBuilder spec: ((from freebsd-14.3-ocaml-5.4) (comment freebsd-14.3-5.4_opam-2.5) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/local/bin/opam-2.5 /usr/local/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (workdir /src) (run (shell "sudo chown opam /src")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src spawn.opam) (dst ./)) (run (network host) (shell "opam pin add -yn spawn.dev './'")) (run (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.2 dune-configurator.3.22.2 jane-street-headers.v0.17.0 jst-config.v0.17.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppxlib.0.38.0 ppxlib_jane.v0.17.4 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 time_now.v0.17.0") (env CI true) (env OCAMLCI true) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y spawn.dev $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst /src)) (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2026-04-14 08:11.59: Waiting for resource in pool OCluster 2026-04-14 09:24.55: Waiting for worker… 2026-04-14 10:13.54: Got resource from pool OCluster Building on rosemary All commits already cached HEAD is now at fe3419b Do not require C99 mode for older GCC (#62) (from freebsd-14.3-ocaml-5.4) 2026-04-14 10:14.08 ---> using "463e9b939b79b2568bf98b05cff00f85b3ec5717170cf88773a44ae3b08f11e7" from cache /: (comment freebsd-14.3-5.4_opam-2.5) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/local/bin/opam-2.5 /usr/local/bin/opam")) 2026-04-14 10:14.09 ---> using "e61cc6f90204801db314d0aa3481b9199ff82a8a270abed9917e5690810c70ed" from cache /src: (run (shell "opam init --reinit -ni")) No configuration file found, using 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.1 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 1 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=1 --global Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] no changes from git+file:///home/opam/opam-repository 2026-04-14 10:14.09 ---> using "991489237400f99acdd227f8234d37ac98134e18d1f3c091be7204acf59248ac" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) FreeBSD 14.3-RELEASE-p3 The OCaml toplevel, version 5.4.1 2.5.0 2026-04-14 10:14.10 ---> using "add5f681a375911dcea6c14418d3635cba7f82294574aa9177e3a0a9fa01d5bd" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-04-14 10:14.10 ---> using "56f48ccddab22348a30c0beee9b14f69a3990eb0fbd9a0ccd0040d116cc1fce5" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD 42844088d7..5f7bb1a6e6 master -> origin/master 5f7bb1a6e6 Merge pull request #29704 from shonfeder/release-dune-3.22.2 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository Everything as up-to-date as possible The following packages are not being upgraded because the new versions conflict with other installed packages: - ocaml.5.5.0 However, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.5.0"), which will ask permission to downgrade or uninstall the conflicting packages. Nothing to do. 2026-04-14 10:14.11 ---> using "cbd29af3654bd6eb80f24fb2a512eef6866a3370fcc8ff3fe3d8f066b349691f" from cache /src: (copy (src spawn.opam) (dst ./)) 2026-04-14 10:14.11 ---> saved as "7499b0cb59ee3d1ddc1d4dfa083b996846e3ae29608865e3a858a39fdeba03c3" /src: (run (network host) (shell "opam pin add -yn spawn.dev './'")) [spawn.dev] synchronised (file:///src) spawn is now pinned to file:///src (version dev) 2026-04-14 10:14.13 ---> saved as "fa45d75d5aa3e6cdcb8173c8d9e506e16b8410d3acb982c711ac9beaf726be7b" /src: (run (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-04-14 10:14.14 ---> saved as "022a42e437d8ab57b97199dbb25feb89df4fc3dfc4b1cd776cc751f695c4dbbe" /src: (env DEPS "base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.2 dune-configurator.3.22.2 jane-street-headers.v0.17.0 jst-config.v0.17.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppxlib.0.38.0 ppxlib_jane.v0.17.4 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 time_now.v0.17.0") /src: (env CI true) /src: (env OCAMLCI true) /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y spawn.dev $DEPS")) [WARNING] Unknown update command for bsd, skipping system update <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [spawn.dev] synchronised (file:///src) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml is already installed (current version is 5.4.1). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). 2026-04-14 10:14.24 ---> saved as "18c765e1fa796ffa6b144686c9a64036ab224795a40f713a0f8c5035cc513c68" /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1). [NOTE] Package ocaml is already installed (current version is 5.4.1). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). The following actions will be performed: === install 27 packages ∗ base v0.17.3 ∗ csexp 1.5.2 ∗ dune 3.22.2 ∗ dune-configurator 3.22.2 ∗ jane-street-headers v0.17.0 ∗ jst-config v0.17.0 ∗ ocaml-compiler-libs v0.17.0 ∗ ocaml_intrinsics_kernel v0.17.1 ∗ ppx_assert v0.17.0 ∗ ppx_base v0.17.0 ∗ ppx_cold v0.17.0 ∗ ppx_compare v0.17.0 ∗ ppx_derivers 1.2.1 ∗ ppx_enumerate v0.17.0 ∗ ppx_expect v0.17.3 ∗ ppx_globalize v0.17.2 ∗ ppx_hash v0.17.0 ∗ ppx_here v0.17.0 ∗ ppx_inline_test v0.17.1 ∗ ppx_optcomp v0.17.1 ∗ ppx_sexp_conv v0.17.1 ∗ ppxlib 0.38.0 ∗ ppxlib_jane v0.17.4 ∗ sexplib0 v0.17.0 ∗ stdio v0.17.0 ∗ stdlib-shims 0.3.0 ∗ time_now v0.17.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> ⬇ retrieved csexp.1.5.2 (cached) ⬇ retrieved base.v0.17.3 (cached) ⬇ retrieved jane-street-headers.v0.17.0 (https://github.com/janestreet/jane-street-headers/archive/refs/tags/v0.17.0.tar.gz) ⬇ retrieved ocaml-compiler-libs.v0.17.0 (cached) ⬇ retrieved ocaml_intrinsics_kernel.v0.17.1 (cached) ⬇ retrieved jst-config.v0.17.0 (https://github.com/janestreet/jst-config/archive/refs/tags/v0.17.0.tar.gz) ⬇ retrieved ppx_base.v0.17.0 (cached) ⬇ retrieved ppx_cold.v0.17.0 (cached) ⬇ retrieved ppx_compare.v0.17.0 (cached) ⬇ retrieved ppx_derivers.1.2.1 (cached) ⬇ retrieved ppx_enumerate.v0.17.0 (cached) ⬇ retrieved ppx_assert.v0.17.0 (https://github.com/janestreet/ppx_assert/archive/refs/tags/v0.17.0.tar.gz) ⬇ retrieved ppx_globalize.v0.17.2 (cached) ⬇ retrieved ppx_hash.v0.17.0 (cached) ⬇ retrieved ppx_expect.v0.17.3 (https://github.com/janestreet/ppx_expect/archive/refs/tags/v0.17.3.tar.gz) ⬇ retrieved dune.3.22.2, dune-configurator.3.22.2 (cached) ⬇ retrieved ppx_here.v0.17.0 (https://github.com/janestreet/ppx_here/archive/refs/tags/v0.17.0.tar.gz) ⬇ retrieved ppx_optcomp.v0.17.1 (https://github.com/janestreet/ppx_optcomp/archive/refs/tags/v0.17.1.tar.gz) ⬇ retrieved ppx_sexp_conv.v0.17.1 (cached) ⬇ retrieved ppx_inline_test.v0.17.1 (https://github.com/janestreet/ppx_inline_test/archive/refs/tags/v0.17.1.tar.gz) ⬇ retrieved ppxlib_jane.v0.17.4 (cached) ⬇ retrieved sexplib0.v0.17.0 (cached) ⬇ retrieved stdio.v0.17.0 (cached) ⬇ retrieved stdlib-shims.0.3.0 (cached) ⬇ retrieved ppxlib.0.38.0 (cached) ⬇ retrieved time_now.v0.17.0 (https://github.com/janestreet/time_now/archive/refs/tags/v0.17.0.tar.gz) ∗ installed dune.3.22.2 ∗ installed jane-street-headers.v0.17.0 ∗ installed ppx_derivers.1.2.1 ∗ installed csexp.1.5.2 ∗ installed stdlib-shims.0.3.0 ∗ installed sexplib0.v0.17.0 ∗ installed ocaml_intrinsics_kernel.v0.17.1 ∗ installed ocaml-compiler-libs.v0.17.0 ∗ installed dune-configurator.3.22.2 ∗ installed base.v0.17.3 ∗ installed stdio.v0.17.0 ∗ installed ppxlib.0.38.0 ∗ installed ppx_cold.v0.17.0 ∗ installed ppx_here.v0.17.0 ∗ installed ppx_optcomp.v0.17.1 ∗ installed ppxlib_jane.v0.17.4 ∗ installed ppx_enumerate.v0.17.0 ∗ installed ppx_globalize.v0.17.2 ∗ installed ppx_compare.v0.17.0 ∗ installed ppx_sexp_conv.v0.17.1 ∗ installed ppx_assert.v0.17.0 ∗ installed ppx_hash.v0.17.0 ∗ installed ppx_base.v0.17.0 ∗ installed jst-config.v0.17.0 ∗ installed time_now.v0.17.0 ∗ installed ppx_inline_test.v0.17.1 ∗ installed ppx_expect.v0.17.3 Done. 2026-04-14 10:16.03 ---> saved as "a4f41893e7931b4951e6eb45a950f05d8234f098c5939d3d7f03ab108e067795" /src: (copy (src .) (dst /src)) 2026-04-14 10:16.04 ---> saved as "e2e7cf173e64716f93632e69f3f13358b35bbfaaa6cacc4f1db26a8d41613896" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) File "bench/dune", line 5, characters 7-16: 5 | (pps ppx_bench))) ^^^^^^^^^ Error: Library "ppx_bench" not found. -> required by _build/default/bench/.merlin-conf/lib-spawn_bench -> required by alias bench/check File "test/tests.ml", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/default/test/tests.ml _build/.sandbox/331bdaed26b40d1141306b7a57b23c1b/default/test/tests.ml.corrected diff --git a/_build/default/test/tests.ml b/_build/.sandbox/331bdaed26b40d1141306b7a57b23c1b/default/test/tests.ml.corrected index 117cdff..8ce68c2 100644 --- a/_build/default/test/tests.ml +++ b/_build/.sandbox/331bdaed26b40d1141306b7a57b23c1b/default/test/tests.ml.corrected @@ -155,7 +155,17 @@ let%expect_test "pgid tests" = () ~prog:"pgid_test/checkpgid.exe" ~argv:[]); - [%expect {||}] + [%expect.unreachable] +[@@expect.uncaught_exn {| + (* CR expect_test_collector: This test expectation appears to contain a backtrace. + This is strongly discouraged as backtraces are fragile. + Please change this test to not include a backtrace. *) + ("Unix.Unix_error(Unix.EINVAL, \"execve\", \"pgid_test/checkpgid.exe\")") + Raised by primitive operation at Spawn.spawn in file "src/spawn.ml" (inlined), line 176, characters 53-63 + Called from Spawn.spawn in file "src/spawn.ml", line 182, characters 2-87 + Called from Spawn_test__Tests.(fun) in file "test/tests.ml", lines 153-157, characters 4-16 + Called from Ppx_expect_runtime__Test_block.Configured.dump_backtrace in file "runtime/test_block.ml", line 142, characters 10-28 + |}] ;; let%test_unit "sigprocmask" = jail: /usr/bin/su -l opam -c cd '/src' && env OCAMLCI='true' CI='true' DEPS='base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.2 dune-configurator.3.22.2 jane-street-headers.v0.17.0 jst-config.v0.17.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppxlib.0.38.0 ppxlib_jane.v0.17.4 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 time_now.v0.17.0' OPAMCOLOR='always' CLICOLOR_FORCE='1' '/usr/bin/env' 'bash' '-c' 'opam exec -- dune build @install @check @runtest && rm -rf _build': failed "jail" "-c" "name=obuilder_52585_16090" "mount.devfs" "path=/obuilder/result/d5e0e4629b090188dfe534ed09c719f920b838b75dcb83eb288c4170ccc6cc8b/rootfs" "vnet" "exec.start=/sbin/ifconfig lo0 127.0.0.1/8" "command=/usr/bin/su" "-l" "opam" "-c" "cd '/src' && env OCAMLCI='true' CI='true' DEPS='base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base csexp.1.5.2 dune.3.22.2 dune-configurator.3.22.2 jane-street-headers.v0.17.0 jst-config.v0.17.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppxlib.0.38.0 ppxlib_jane.v0.17.4 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 time_now.v0.17.0' OPAMCOLOR='always' CLICOLOR_FORCE='1' '/usr/bin/env' 'bash' '-c' 'opam exec -- dune build @install @check @runtest && rm -rf _build'" failed with exit status 1 2026-04-14 10:19.59: Job failed: Failed: Build failed