2025-06-06 12:12.15: New job: test mbarbin/vcs https://github.com/mbarbin/vcs.git#refs/heads/main (9b4b250c2f04c8cef68222d4ca555478b7f6c8b2) (openbsd-amd64:openbsd-76-amd64-5.3_opam-2.3) Base: openbsd-76-amd64-ocaml-5.3 Opam project build To reproduce locally: git clone --recursive "https://github.com/mbarbin/vcs.git" -b "main" && cd "vcs" && git reset --hard 9b4b250c cat > Dockerfile <<'END-OF-DOCKERFILE' FROM openbsd-76-amd64-ocaml-5.3 # openbsd-76-amd64-5.3_opam-2.3 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" RUN doas ln -f /usr/bin/opam-2.3 /usr/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version RUN cd ~/opam-repository && (git cat-file -e 1a11c92ed328069e79caabba3776e1f3862c8f71 || git fetch origin master) && git reset -q --hard 1a11c92ed328069e79caabba3776e1f3862c8f71 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 volgo.opam volgo-vcs.opam volgo-tests.opam volgo-hg-unix.opam volgo-hg-eio.opam volgo-hg-backend.opam volgo-git-unix.opam volgo-git-eio.opam volgo-git-backend.opam volgo-dev.opam volgo-base.opam vcs-test-helpers.opam /home/opam/src/./ RUN opam pin add -yn volgo.dev '/home/opam/src/./' && \ opam pin add -yn volgo-vcs.dev '/home/opam/src/./' && \ opam pin add -yn volgo-tests.dev '/home/opam/src/./' && \ opam pin add -yn volgo-hg-unix.dev '/home/opam/src/./' && \ opam pin add -yn volgo-hg-eio.dev '/home/opam/src/./' && \ opam pin add -yn volgo-hg-backend.dev '/home/opam/src/./' && \ opam pin add -yn volgo-git-unix.dev '/home/opam/src/./' && \ opam pin add -yn volgo-git-eio.dev '/home/opam/src/./' && \ opam pin add -yn volgo-git-backend.dev '/home/opam/src/./' && \ opam pin add -yn volgo-dev.dev '/home/opam/src/./' && \ opam pin add -yn volgo-base.dev '/home/opam/src/./' && \ opam pin add -yn vcs-test-helpers.dev '/home/opam/src/./' RUN echo '(lang dune 3.0)' > '/home/opam/src/./dune-project' ENV DEPS="astring.0.8.5 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base_bigstring.v0.17.0 base_quickcheck.v0.17.0 bigstringaf.0.10.0 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-local-await.1.0.1 dune.3.19.0 dune-configurator.3.19.0 dyn.3.19.0 eio.1.2 eio_main.1.2 eio_posix.1.2 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 fmt.0.10.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 hmap.0.8.1 int_repr.v0.17.0 iomux.0.3 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.8.0 lwt-dllist.1.1.0 mdx.2.5.0 mtime.2.1.0 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-version.4.0.1 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.19.0 parsexp.v0.17.0 posixat.v0.17.0 pp.2.0.0 pplumbing.0.0.14 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_bench.v0.17.0 ppx_bin_prot.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_custom_printf.v0.17.0 ppx_derivers.1.2.1 ppx_diff.v0.17.0 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.0 ppx_jane.v0.17.0 ppx_let.v0.17.0 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.0 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.0 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.0 ppx_typerep_conv.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 psq.0.2.1 re.1.12.0 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 shexp.v0.17.0 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.19.0 thread-table.1.0.0 time_now.v0.17.0 topkg.1.0.8 typerep.v0.17.1 variantslib.v0.17.0" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.3 --depext-only -y volgo.dev volgo-vcs.dev volgo-tests.dev volgo-hg-unix.dev volgo-hg-eio.dev volgo-hg-backend.dev volgo-git-unix.dev volgo-git-eio.dev volgo-git-backend.dev volgo-dev.dev volgo-base.dev vcs-test-helpers.dev $DEPS RUN opam install $DEPS COPY --chown=1000:1000 . /home/opam/src RUN cd /home/opam/src && opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2025-06-06 12:12.15: Using cache hint "mbarbin/vcs-openbsd-76-amd64-ocaml-5.3-openbsd-76-amd64-5.3_opam-2.3-795ba9011fc4e19e0bb124be01253ee1" 2025-06-06 12:12.15: Using OBuilder spec: ((from openbsd-76-amd64-ocaml-5.3) (comment openbsd-76-amd64-5.3_opam-2.3) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (run (shell "doas ln -f /usr/bin/opam-2.3 /usr/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 1a11c92ed328069e79caabba3776e1f3862c8f71 || git fetch origin master) && git reset -q --hard 1a11c92ed328069e79caabba3776e1f3862c8f71 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src volgo.opam volgo-vcs.opam volgo-tests.opam volgo-hg-unix.opam volgo-hg-eio.opam volgo-hg-backend.opam volgo-git-unix.opam volgo-git-eio.opam volgo-git-backend.opam volgo-dev.opam volgo-base.opam vcs-test-helpers.opam) (dst /home/opam/src/./)) (run (network host) (shell "opam pin add -yn volgo.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-vcs.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-tests.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-unix.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-eio.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-backend.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-unix.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-eio.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-backend.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-dev.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-base.dev '/home/opam/src/./' && \ \nopam pin add -yn vcs-test-helpers.dev '/home/opam/src/./'")) (run (network host) (shell "echo '(lang dune 3.0)' > '/home/opam/src/./dune-project'")) (env DEPS "astring.0.8.5 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base_bigstring.v0.17.0 base_quickcheck.v0.17.0 bigstringaf.0.10.0 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-local-await.1.0.1 dune.3.19.0 dune-configurator.3.19.0 dyn.3.19.0 eio.1.2 eio_main.1.2 eio_posix.1.2 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 fmt.0.10.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 hmap.0.8.1 int_repr.v0.17.0 iomux.0.3 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.8.0 lwt-dllist.1.1.0 mdx.2.5.0 mtime.2.1.0 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-version.4.0.1 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.19.0 parsexp.v0.17.0 posixat.v0.17.0 pp.2.0.0 pplumbing.0.0.14 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_bench.v0.17.0 ppx_bin_prot.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_custom_printf.v0.17.0 ppx_derivers.1.2.1 ppx_diff.v0.17.0 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.0 ppx_jane.v0.17.0 ppx_let.v0.17.0 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.0 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.0 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.0 ppx_typerep_conv.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 psq.0.2.1 re.1.12.0 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 shexp.v0.17.0 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.19.0 thread-table.1.0.0 time_now.v0.17.0 topkg.1.0.8 typerep.v0.17.1 variantslib.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.3 --depext-only -y volgo.dev volgo-vcs.dev volgo-tests.dev volgo-hg-unix.dev volgo-hg-eio.dev volgo-hg-backend.dev volgo-git-unix.dev volgo-git-eio.dev volgo-git-backend.dev volgo-dev.dev volgo-base.dev vcs-test-helpers.dev $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst /home/opam/src)) (run (shell "cd /home/opam/src && opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2025-06-06 12:12.15: Waiting for resource in pool OCluster 2025-06-06 12:12.15: Waiting for worker… 2025-06-06 12:12.31: Got resource from pool OCluster Building on oregano All commits already cached HEAD is now at 9b4b250 Update dependencies (from openbsd-76-amd64-ocaml-5.3) 2025-06-06 12:12.32 ---> using "753f998be4709b35e38a93b7272dee818f697255d5b48fadd1c23cb92a82f244" from cache /: (comment openbsd-76-amd64-5.3_opam-2.3) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (run (shell "doas ln -f /usr/bin/opam-2.3 /usr/bin/opam")) 2025-06-06 12:12.32 ---> using "b8621e22ceef6e45a2b70edd0350b6ec56c4cb2588ea75f8c24bf97f9bb8e3c1" from cache /: (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. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from file:///home/opam/opam-repository 2025-06-06 12:12.32 ---> using "caa4033b0f51d691107e536d025405bc96e59134e192afef776a8bfd43aac5e1" from cache /: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) OpenBSD 7.6 The OCaml toplevel, version 5.3.0 2.3.0 2025-06-06 12:12.32 ---> using "7116693f695a70fbcc11fcbf90bc7fd32f30a6c20aabff3b1e1c926faaad9b01" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 1a11c92ed328069e79caabba3776e1f3862c8f71 || git fetch origin master) && git reset -q --hard 1a11c92ed328069e79caabba3776e1f3862c8f71 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD f93eb7cb02..1a11c92ed3 master -> origin/master 1a11c92ed3 Merge pull request #27953 from ocaml/mseri-patch-1 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from file:///home/opam/opam-repository Everything as up-to-date as possible (run with --verbose to show unavailable upgrades). However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2025-06-06 12:12.32 ---> using "8a165b34a3a807ff6d0c470cf86cf4367d87d44383c1c0968df8d98ea2fedea4" from cache /: (copy (src volgo.opam volgo-vcs.opam volgo-tests.opam volgo-hg-unix.opam volgo-hg-eio.opam volgo-hg-backend.opam volgo-git-unix.opam volgo-git-eio.opam volgo-git-backend.opam volgo-dev.opam volgo-base.opam vcs-test-helpers.opam) (dst /home/opam/src/./)) 2025-06-06 12:13.29 ---> saved as "a4e04c782f5dc76af049873bd8ca5fac7514e7985200c534e7757dfd69d259c8" /: (run (network host) (shell "opam pin add -yn volgo.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-vcs.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-tests.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-unix.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-eio.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-hg-backend.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-unix.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-eio.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-git-backend.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-dev.dev '/home/opam/src/./' && \ \nopam pin add -yn volgo-base.dev '/home/opam/src/./' && \ \nopam pin add -yn vcs-test-helpers.dev '/home/opam/src/./'")) Package volgo does not exist, create as a NEW package? [y/n] y [volgo.dev] synchronised (file:///home/opam/src) volgo is now pinned to file:///home/opam/src (version dev) Package volgo-vcs does not exist, create as a NEW package? [y/n] y [volgo-vcs.dev] synchronised (file:///home/opam/src) volgo-vcs is now pinned to file:///home/opam/src (version dev) Package volgo-tests does not exist, create as a NEW package? [y/n] y [volgo-tests.dev] synchronised (file:///home/opam/src) volgo-tests is now pinned to file:///home/opam/src (version dev) Package volgo-hg-unix does not exist, create as a NEW package? [y/n] y [volgo-hg-unix.dev] synchronised (file:///home/opam/src) volgo-hg-unix is now pinned to file:///home/opam/src (version dev) Package volgo-hg-eio does not exist, create as a NEW package? [y/n] y [volgo-hg-eio.dev] synchronised (file:///home/opam/src) volgo-hg-eio is now pinned to file:///home/opam/src (version dev) Package volgo-hg-backend does not exist, create as a NEW package? [y/n] y [volgo-hg-backend.dev] synchronised (file:///home/opam/src) volgo-hg-backend is now pinned to file:///home/opam/src (version dev) Package volgo-git-unix does not exist, create as a NEW package? [y/n] y [volgo-git-unix.dev] synchronised (file:///home/opam/src) volgo-git-unix is now pinned to file:///home/opam/src (version dev) Package volgo-git-eio does not exist, create as a NEW package? [y/n] y [volgo-git-eio.dev] synchronised (file:///home/opam/src) volgo-git-eio is now pinned to file:///home/opam/src (version dev) Package volgo-git-backend does not exist, create as a NEW package? [y/n] y [volgo-git-backend.dev] synchronised (file:///home/opam/src) volgo-git-backend is now pinned to file:///home/opam/src (version dev) Package volgo-dev does not exist, create as a NEW package? [y/n] y [volgo-dev.dev] synchronised (file:///home/opam/src) volgo-dev is now pinned to file:///home/opam/src (version dev) Package volgo-base does not exist, create as a NEW package? [y/n] y [volgo-base.dev] synchronised (file:///home/opam/src) volgo-base is now pinned to file:///home/opam/src (version dev) Package vcs-test-helpers does not exist, create as a NEW package? [y/n] y [vcs-test-helpers.dev] synchronised (file:///home/opam/src) vcs-test-helpers is now pinned to file:///home/opam/src (version dev) 2025-06-06 12:14.42 ---> saved as "136b27903a6ed8c80f8cf9e947b5bedd6d875a1342cae9ded43b8cb661c33c03" /: (run (network host) (shell "echo '(lang dune 3.0)' > '/home/opam/src/./dune-project'")) 2025-06-06 12:15.39 ---> saved as "d5dcb65957eaef9c3732f8162150c389f105c6fd86a664ea90cc17c818db680a" /: (env DEPS "astring.0.8.5 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base_bigstring.v0.17.0 base_quickcheck.v0.17.0 bigstringaf.0.10.0 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-local-await.1.0.1 dune.3.19.0 dune-configurator.3.19.0 dyn.3.19.0 eio.1.2 eio_main.1.2 eio_posix.1.2 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 fmt.0.10.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 hmap.0.8.1 int_repr.v0.17.0 iomux.0.3 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.8.0 lwt-dllist.1.1.0 mdx.2.5.0 mtime.2.1.0 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-version.4.0.1 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.19.0 parsexp.v0.17.0 posixat.v0.17.0 pp.2.0.0 pplumbing.0.0.14 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_bench.v0.17.0 ppx_bin_prot.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_custom_printf.v0.17.0 ppx_derivers.1.2.1 ppx_diff.v0.17.0 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.0 ppx_jane.v0.17.0 ppx_let.v0.17.0 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.0 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.0 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.0 ppx_typerep_conv.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 psq.0.2.1 re.1.12.0 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 shexp.v0.17.0 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.19.0 thread-table.1.0.0 time_now.v0.17.0 topkg.1.0.8 typerep.v0.17.1 variantslib.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.3 --depext-only -y volgo.dev volgo-vcs.dev volgo-tests.dev volgo-hg-unix.dev volgo-hg-eio.dev volgo-hg-backend.dev volgo-git-unix.dev volgo-git-eio.dev volgo-git-backend.dev volgo-dev.dev volgo-base.dev vcs-test-helpers.dev $DEPS")) [WARNING] Unknown update command for bsd, skipping system update <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [volgo.dev] synchronised (file:///home/opam/src) [volgo-base.dev] synchronised (file:///home/opam/src) [vcs-test-helpers.dev] synchronised (file:///home/opam/src) [volgo-dev.dev] synchronised (file:///home/opam/src) [volgo-git-backend.dev] synchronised (file:///home/opam/src) [volgo-git-eio.dev] synchronised (file:///home/opam/src) [volgo-git-unix.dev] synchronised (file:///home/opam/src) [volgo-hg-backend.dev] synchronised (file:///home/opam/src) [volgo-hg-eio.dev] synchronised (file:///home/opam/src) [volgo-hg-unix.dev] synchronised (file:///home/opam/src) [volgo-tests.dev] synchronised (file:///home/opam/src) [volgo-vcs.dev] synchronised (file:///home/opam/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.3.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0). [NOTE] Package ocaml is already installed (current version is 5.3.0). [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). 2025-06-06 12:16.45 ---> saved as "edb75cf08eaffa1148792edee9f16211960dd630718217efd09fc22d03a691f3" /: (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.3.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0). [NOTE] Package ocaml is already installed (current version is 5.3.0). [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 107 packages - install astring 0.8.5 - install base v0.17.2 - install base_bigstring v0.17.0 - install base_quickcheck v0.17.0 - install bigstringaf 0.10.0 - install bin_prot v0.17.0-1 - install camlp-streams 5.0.1 - install capitalization v0.17.0 - install cmdlang 0.0.9 - install cmdlang-to-cmdliner 0.0.9 - install cmdliner 1.3.0 - install core v0.17.1 - install cppo 1.8.0 - install csexp 1.5.2 - install cstruct 6.2.0 - install domain-local-await 1.0.1 - install dune 3.19.0 - install dune-configurator 3.19.0 - install dyn 3.19.0 - install eio 1.2 - install eio_main 1.2 - install eio_posix 1.2 - install expect_test_helpers_core v0.17.0 - install fieldslib v0.17.0 - install fmt 0.10.0 - install fpath 0.7.3 - install fpath-base 0.3.1 - install fpath-sexp0 0.3.1 - install gel v0.17.0 - install hmap 0.8.1 - install int_repr v0.17.0 - install iomux 0.3 - install jane-street-headers v0.17.0 - install jst-config v0.17.0 - install loc 0.2.2 - install logs 0.8.0 - install lwt-dllist 1.1.0 - install mdx 2.5.0 - install mtime 2.1.0 - install num 1.5-1 - install ocaml-compiler-libs v0.17.0 - install ocaml-version 4.0.1 - install ocaml_intrinsics_kernel v0.17.1 - install ocamlbuild 0.16.1 - install ocamlfind 1.9.8 - install optint 0.3.0 - install ordering 3.19.0 - install parsexp v0.17.0 - install posixat v0.17.0 - install pp 2.0.0 - install pplumbing 0.0.14 - install ppx_assert v0.17.0 - install ppx_base v0.17.0 - install ppx_bench v0.17.0 - install ppx_bin_prot v0.17.0 - 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_diff v0.17.0 - install ppx_disable_unused_warnings v0.17.0 - install ppx_enumerate v0.17.0 - install ppx_expect v0.17.2 - install ppx_fields_conv v0.17.0 - install ppx_fixed_literal v0.17.0 - install ppx_globalize v0.17.0 - 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.0 - install ppx_jane v0.17.0 - install ppx_let v0.17.0 - install ppx_log v0.17.0 - install ppx_module_timer v0.17.0 - install ppx_optcomp v0.17.0 - install ppx_optional v0.17.0 - install ppx_pipebang v0.17.0 - install ppx_sexp_conv v0.17.0 - install ppx_sexp_message v0.17.0 - install ppx_sexp_value v0.17.0 - install ppx_stable v0.17.0 - 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.0 - install ppx_typerep_conv v0.17.0 - install ppx_variants_conv v0.17.0 - install ppxlib 0.35.0 - install ppxlib_jane v0.17.2 - install psq 0.2.1 - install re 1.12.0 - install result 1.5 - install seq base - install sexp_pretty v0.17.0 - install sexplib v0.17.0 - install sexplib0 v0.17.0 - install shexp v0.17.0 - install spawn v0.17.0 - install splittable_random v0.17.0 - install stdio v0.17.0 - install stdlib-shims 0.3.0 - install stdune 3.19.0 - install thread-table 1.0.0 - install time_now v0.17.0 - install topkg 1.0.8 - install typerep v0.17.1 - install variantslib v0.17.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved astring.0.8.5 (cached) -> retrieved base_bigstring.v0.17.0 (cached) -> retrieved base_quickcheck.v0.17.0 (cached) -> retrieved bigstringaf.0.10.0 (cached) -> retrieved base.v0.17.2 (cached) -> retrieved camlp-streams.5.0.1 (cached) -> retrieved capitalization.v0.17.0 (cached) -> retrieved bin_prot.v0.17.0-1 (cached) -> retrieved cmdliner.1.3.0 (cached) -> retrieved cppo.1.8.0 (cached) -> retrieved core.v0.17.1 (cached) -> retrieved csexp.1.5.2 (cached) -> retrieved cmdlang.0.0.9, cmdlang-to-cmdliner.0.0.9 (https://github.com/mbarbin/cmdlang/releases/download/0.0.9/cmdlang-0.0.9.tbz) -> retrieved domain-local-await.1.0.1 (cached) -> retrieved cstruct.6.2.0 (cached) -> retrieved expect_test_helpers_core.v0.17.0 (cached) -> retrieved eio.1.2, eio_main.1.2, eio_posix.1.2 (cached) -> retrieved fieldslib.v0.17.0 (cached) -> retrieved fmt.0.10.0 (cached) -> retrieved fpath.0.7.3 (cached) -> retrieved gel.v0.17.0 (cached) -> retrieved hmap.0.8.1 (cached) -> retrieved int_repr.v0.17.0 (cached) -> retrieved iomux.0.3 (cached) -> retrieved fpath-base.0.3.1, fpath-sexp0.0.3.1 (https://github.com/mbarbin/fpath-base/releases/download/0.3.1/fpath-base-0.3.1.tbz) -> retrieved jane-street-headers.v0.17.0 (cached) -> retrieved jst-config.v0.17.0 (cached) -> retrieved logs.0.8.0 (cached) -> retrieved lwt-dllist.1.1.0 (cached) -> retrieved loc.0.2.2 (https://github.com/mbarbin/loc/releases/download/0.2.2/loc-0.2.2.tbz) -> retrieved mdx.2.5.0 (cached) -> retrieved mtime.2.1.0 (cached) -> retrieved num.1.5-1 (cached) -> retrieved ocaml-compiler-libs.v0.17.0 (cached) -> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached) -> retrieved dune.3.19.0, dune-configurator.3.19.0, dyn.3.19.0, ordering.3.19.0, stdune.3.19.0 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved optint.0.3.0 (cached) -> retrieved parsexp.v0.17.0 (cached) -> retrieved posixat.v0.17.0 (cached) -> retrieved pp.2.0.0 (cached) -> retrieved ocaml-version.4.0.1 (https://github.com/ocurrent/ocaml-version/releases/download/v4.0.1/ocaml-version-4.0.1.tbz) -> retrieved ppx_assert.v0.17.0 (cached) -> retrieved ppx_base.v0.17.0 (cached) -> retrieved ppx_bench.v0.17.0 (cached) -> retrieved ppx_bin_prot.v0.17.0 (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) -> installed cmdliner.1.3.0 -> retrieved ppx_disable_unused_warnings.v0.17.0 (cached) -> retrieved ppx_diff.v0.17.0 (cached) -> retrieved ppx_enumerate.v0.17.0 (cached) -> retrieved ppx_fields_conv.v0.17.0 (cached) -> retrieved pplumbing.0.0.14 (https://github.com/mbarbin/pplumbing/releases/download/0.0.14/pplumbing-0.0.14.tbz) -> retrieved ppx_fixed_literal.v0.17.0 (cached) -> retrieved ppx_globalize.v0.17.0 (cached) -> retrieved ppx_expect.v0.17.2 (cached) -> retrieved ppx_here.v0.17.0 (cached) -> retrieved ppx_ignore_instrumentation.v0.17.0 (cached) -> retrieved ppx_hash.v0.17.0 (cached) -> retrieved ppx_jane.v0.17.0 (cached) -> retrieved ppx_let.v0.17.0 (cached) -> retrieved ppx_log.v0.17.0 (cached) -> retrieved ppx_module_timer.v0.17.0 (cached) -> retrieved ppx_optcomp.v0.17.0 (cached) -> retrieved ppx_optional.v0.17.0 (cached) -> retrieved ppx_pipebang.v0.17.0 (cached) -> retrieved ppx_inline_test.v0.17.0 (cached) -> retrieved ppx_sexp_message.v0.17.0 (cached) -> retrieved ppx_sexp_value.v0.17.0 (cached) -> retrieved ppx_stable.v0.17.0 (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.0 (cached) -> retrieved ppx_typerep_conv.v0.17.0 (cached) -> retrieved ppx_variants_conv.v0.17.0 (cached) -> retrieved ppx_sexp_conv.v0.17.0 (cached) -> retrieved ppxlib_jane.v0.17.2 (cached) -> retrieved psq.0.2.1 (cached) -> retrieved result.1.5 (cached) -> retrieved seq.base (cached) -> retrieved re.1.12.0 (cached) -> retrieved sexp_pretty.v0.17.0 (cached) -> retrieved ppxlib.0.35.0 (cached) -> retrieved sexplib0.v0.17.0 (cached) -> retrieved shexp.v0.17.0 (cached) -> retrieved spawn.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 thread-table.1.0.0 (cached) -> retrieved time_now.v0.17.0 (cached) -> retrieved sexplib.v0.17.0 (cached) -> retrieved typerep.v0.17.1 (cached) -> retrieved variantslib.v0.17.0 (cached) -> retrieved topkg.1.0.8 (cached) -> installed dune.3.19.0 -> installed num.1.5-1 -> installed camlp-streams.5.0.1 -> installed cmdlang.0.0.9 -> installed cppo.1.8.0 -> installed cmdlang-to-cmdliner.0.0.9 -> installed csexp.1.5.2 -> installed jane-street-headers.v0.17.0 -> installed dune-configurator.3.19.0 -> installed lwt-dllist.1.1.0 -> installed bigstringaf.0.10.0 -> installed iomux.0.3 -> installed ocaml-compiler-libs.v0.17.0 -> installed ocaml-version.4.0.1 -> installed ocaml_intrinsics_kernel.v0.17.1 -> installed ocamlbuild.0.16.1 -> installed ocamlfind.1.9.8 -> installed optint.0.3.0 -> installed ordering.3.19.0 -> installed pp.2.0.0 -> installed ppx_derivers.1.2.1 -> installed dyn.3.19.0 -> installed result.1.5 -> installed seq.base -> installed sexplib0.v0.17.0 -> installed psq.0.2.1 -> installed base.v0.17.2 -> installed parsexp.v0.17.0 -> installed fieldslib.v0.17.0 -> installed re.1.12.0 -> installed sexplib.v0.17.0 -> installed spawn.v0.17.0 -> installed stdio.v0.17.0 -> installed stdlib-shims.0.3.0 -> installed stdune.3.19.0 -> installed ppxlib.0.35.0 -> installed thread-table.1.0.0 -> installed ppx_cold.v0.17.0 -> installed domain-local-await.1.0.1 -> installed ppx_disable_unused_warnings.v0.17.0 -> installed ppx_fields_conv.v0.17.0 -> installed ppx_fixed_literal.v0.17.0 -> installed ppx_here.v0.17.0 -> installed ppx_ignore_instrumentation.v0.17.0 -> installed ppx_let.v0.17.0 -> installed ppx_optcomp.v0.17.0 -> installed ppx_pipebang.v0.17.0 -> installed ppx_stable.v0.17.0 -> installed ppx_stable_witness.v0.17.0 -> installed ppx_tydi.v0.17.0 -> installed ppxlib_jane.v0.17.2 -> installed topkg.1.0.8 -> installed ppx_compare.v0.17.0 -> installed astring.0.8.5 -> installed fmt.0.10.0 -> installed fpath.0.7.3 -> installed cstruct.6.2.0 -> installed fpath-sexp0.0.3.1 -> installed hmap.0.8.1 -> installed fpath-base.0.3.1 -> installed loc.0.2.2 -> installed logs.0.8.0 -> installed mtime.2.1.0 -> installed mdx.2.5.0 -> installed eio.1.2 -> installed pplumbing.0.0.14 -> installed eio_posix.1.2 -> installed ppx_enumerate.v0.17.0 -> installed eio_main.1.2 -> installed ppx_globalize.v0.17.0 -> installed ppx_optional.v0.17.0 -> installed ppx_sexp_conv.v0.17.0 -> installed typerep.v0.17.1 -> installed posixat.v0.17.0 -> installed ppx_assert.v0.17.0 -> installed ppx_custom_printf.v0.17.0 -> installed jst-config.v0.17.0 -> installed ppx_hash.v0.17.0 -> installed ppx_sexp_message.v0.17.0 -> installed ppx_base.v0.17.0 -> installed ppx_sexp_value.v0.17.0 -> installed capitalization.v0.17.0 -> installed ppx_string.v0.17.0 -> installed ppx_typerep_conv.v0.17.0 -> installed ppx_string_conv.v0.17.0 -> installed sexp_pretty.v0.17.0 -> installed shexp.v0.17.0 -> installed time_now.v0.17.0 -> installed variantslib.v0.17.0 -> installed ppx_inline_test.v0.17.0 -> installed ppx_module_timer.v0.17.0 -> installed ppx_bench.v0.17.0 -> installed ppx_expect.v0.17.2 -> installed ppx_variants_conv.v0.17.0 -> installed splittable_random.v0.17.0 -> installed bin_prot.v0.17.0-1 -> installed base_quickcheck.v0.17.0 -> installed ppx_bin_prot.v0.17.0 -> installed ppx_log.v0.17.0 -> installed ppx_jane.v0.17.0 -> installed gel.v0.17.0 -> installed int_repr.v0.17.0 -> installed ppx_diff.v0.17.0 -> installed base_bigstring.v0.17.0 -> installed core.v0.17.1 -> installed expect_test_helpers_core.v0.17.0 Done. # To update the current shell environment, run: eval $(opam env) 2025-06-06 12:47.16 ---> saved as "07e7134d2513bae1583185b0ce55121f1e9402212936a90c9375d049ba16ca1d" /: (copy (src .) (dst /home/opam/src)) 2025-06-06 12:48.01 ---> saved as "9c017cf2fb9f2c31896eb55ffeb147edb6427b81e867575672b50ee38bdb4add" /: (run (shell "cd /home/opam/src && opam exec -- dune build @install @check @runtest && rm -rf _build")) File "lib/volgo_git_unix/test/test__path_resolution.ml", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/default/lib/volgo_git_unix/test/test__path_resolution.ml _build/.sandbox/c4904b42391c35babc8149bb4cfd2212/default/lib/volgo_git_unix/test/test__path_resolution.ml.corrected diff --git a/_build/default/lib/volgo_git_unix/test/test__path_resolution.ml b/_build/.sandbox/c4904b42391c35babc8149bb4cfd2212/default/lib/volgo_git_unix/test/test__path_resolution.ml.corrected index 0b6b5d8..8b56b87 100644 --- a/_build/default/lib/volgo_git_unix/test/test__path_resolution.ml +++ b/_build/.sandbox/c4904b42391c35babc8149bb4cfd2212/default/lib/volgo_git_unix/test/test__path_resolution.ml.corrected @@ -93,17 +93,13 @@ let%expect_test "hello path" = Out_channel.with_file (git |> Absolute_path.to_string) ~perm:0o755 ~f:(fun oc -> Out_channel.output_string oc "#!/bin/bash -e\necho \"Hello Git!\"\nexit 42\n"); command [ Absolute_path.to_string git; "hello" ]; - [%expect - {| - Hello Git! - [42] - |}]; + [%expect.unreachable]; (* Now let's override the path and monitor which git binary is run. *) (* Let's test separately the function that implements the search. *) let find_executable ~path = Volgo_git_unix.Runtime.Private.find_executable ~path in let result = find_executable ~path:"" in require_equal [%here] (module Executable_in_path) result None; - [%expect {||}]; + [%expect.unreachable]; let result = find_executable ~path:(Absolute_path.to_string bin ^ ":" ^ Absolute_path.to_string cwd) in @@ -112,7 +108,7 @@ let%expect_test "hello path" = (module Executable_in_path) result (Some (Absolute_path.to_string git)); - [%expect {||}]; + [%expect.unreachable]; let env = Unix.environment () in (* If we keep the same PATH as before, the same git binary is run compared to before. Indeed the exit code didn't change. *) @@ -120,21 +116,7 @@ let%expect_test "hello path" = ~vcs ~env:(Some env) ~redact_fields:[ "cwd"; "env"; "prog"; "repo_root"; "stderr" ]; - [%expect - {| - ((context - (Vcs.git ( - (repo_root <REDACTED>) - (env <REDACTED>) - (args (rev-parse INVALID-REF)))) - ((prog <REDACTED>) - (args (rev-parse INVALID-REF)) - (exit_status (Exited 128)) - (cwd <REDACTED>) - (stdout INVALID-REF) - (stderr <REDACTED>))) - (error "Expected exit code 0.")) - |}]; + [%expect.unreachable]; (* If we extend the environment in a way that changes PATH, we rerun the executable resolution. *) let extended_env = @@ -145,76 +127,43 @@ let%expect_test "hello path" = in (* Under this new environment, we expect out custom git binary to be run instead. *) test_with_env ~vcs ~env:(Some extended_env) ~redact_fields:[ "cwd"; "env"; "repo_root" ]; - [%expect - {| - ((context - (Vcs.git ( - (repo_root <REDACTED>) - (env <REDACTED>) - (args (rev-parse INVALID-REF)))) - ((prog git) - (args (rev-parse INVALID-REF)) - (exit_status (Exited 42)) - (cwd <REDACTED>) - (stdout "Hello Git!") - (stderr ""))) - (error "Expected exit code 0.")) - |}]; + [%expect.unreachable]; (* Under an empty environment, we expect to revert to the previous git binary. *) test_with_env ~vcs ~env:(Some [||]) ~redact_fields:[ "cwd"; "env"; "prog"; "repo_root"; "stderr" ]; - [%expect - {| - ((context - (Vcs.git ( - (repo_root <REDACTED>) - (env <REDACTED>) - (args (rev-parse INVALID-REF)))) - ((prog <REDACTED>) - (args (rev-parse INVALID-REF)) - (exit_status (Exited 128)) - (cwd <REDACTED>) - (stdout INVALID-REF) - (stderr <REDACTED>))) - (error "Expected exit code 0.")) - |}]; + [%expect.unreachable]; (* The initial PATH under which the [vcs] is created is used to pre locate the executable. *) let save_path = Stdlib.Sys.getenv_opt "PATH" in Unix.putenv "PATH" (Absolute_path.to_string bin); let vcs = Volgo_git_unix.create () in test_with_env ~vcs ~env:None ~redact_fields:[ "cwd"; "env"; "prog"; "repo_root" ]; - [%expect - {| - ((context - (Vcs.git ((repo_root <REDACTED>) (args (rev-parse INVALID-REF)))) - ((prog <REDACTED>) - (args (rev-parse INVALID-REF)) - (exit_status (Exited 42)) - (cwd <REDACTED>) - (stdout "Hello Git!") - (stderr ""))) - (error "Expected exit code 0.")) - |}]; + [%expect.unreachable]; (* Let's monitor the behavior when no Git executable is found in the PATH. In this case, the [prog] is left as "git" and we rely on the backend process library to raise the error. *) Unix.putenv "PATH" (Absolute_path.to_string cwd); let vcs = Volgo_git_unix.create () in test_with_env ~vcs ~env:None ~redact_fields:[ "cwd"; "env"; "repo_root" ]; - [%expect - {| - ((context - (Vcs.git ((repo_root <REDACTED>) (args (rev-parse INVALID-REF)))) - ((prog git) - (args (rev-parse INVALID-REF)) - (exit_status Unknown) - (cwd <REDACTED>) - (stdout "") - (stderr ""))) - (error (Failure "git: command not found"))) - |}]; + [%expect.unreachable]; Option.iter save_path ~f:(fun path -> Unix.putenv "PATH" path); () +[@@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.ENOENT, \"execve\", \"/home/opam/src/_build/.sandbox/c4904b42391c35babc8149bb4cfd2212/default/lib/volgo_git_unix/test/bin/git\")") + 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 Shexp_process__Env.spawn in file "process-lib/src/env.ml", lines 291-299, characters 6-24 + Called from Shexp_process__Process.run_exit_status.(fun) in file "process-lib/src/process.ml", line 653, characters 14-39 + Called from Shexp_process__Process.exec in file "process-lib/src/process.ml", line 179, characters 16-49 + Called from Shexp_process__Process.exec in file "process-lib/src/process.ml", line 182, characters 11-42 + Re-raised at Shexp_process__Process.exec in file "process-lib/src/process.ml", line 188, characters 7-18 + Called from Shexp_process__Process.exec in file "process-lib/src/process.ml", line 220, characters 18-43 + Called from Volgo_git_unix_test__Test__path_resolution.command in file "lib/volgo_git_unix/test/test__path_resolution.ml", lines 29-30, characters 4-25 + Called from Volgo_git_unix_test__Test__path_resolution.(fun) in file "lib/volgo_git_unix/test/test__path_resolution.ml", line 95, characters 2-50 + Called from Ppx_expect_runtime__Test_block.Configured.dump_backtrace in file "runtime/test_block.ml", line 142, characters 10-28 + |}] ;; File "lib/volgo_hg_eio/test/test__file_system.ml", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/default/lib/volgo_hg_eio/test/test__file_system.ml _build/.sandbox/d7a5a1776dee0b5e09dbda4b3fa60c6a/default/lib/volgo_hg_eio/test/test__file_system.ml.corrected diff --git a/_build/default/lib/volgo_hg_eio/test/test__file_system.ml b/_build/.sandbox/d7a5a1776dee0b5e09dbda4b3fa60c6a/default/lib/volgo_hg_eio/test/test__file_system.ml.corrected index 61d3676..3531a5b 100644 --- a/_build/default/lib/volgo_hg_eio/test/test__file_system.ml +++ b/_build/.sandbox/d7a5a1776dee0b5e09dbda4b3fa60c6a/default/lib/volgo_hg_eio/test/test__file_system.ml.corrected @@ -35,6 +35,39 @@ let%expect_test "read_dir" = let dir = Vcs.Repo_root.to_absolute_path repo_root in let read_dir dir = print_s [%sexp (Vcs.read_dir vcs ~dir : Fsegment.t list)] in read_dir dir; - [%expect {| (.hg) |}]; + [%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. *) + ((context + (Vcs.init + ((path + /home/opam/src/_build/.sandbox/d7a5a1776dee0b5e09dbda4b3fa60c6a/default/lib/volgo_hg_eio/test/vcs10042btest))) + ((prog hg) (args (init)) (exit_status Unknown) + (cwd + /home/opam/src/_build/.sandbox/d7a5a1776dee0b5e09dbda4b3fa60c6a/default/lib/volgo_hg_eio/test/vcs10042btest) + (stdout "") (stderr ""))) + (error ("Eio.Io Process Executable \"hg\" not found"))) + Raised at Volgo__Vcs0.of_result in file "lib/volgo/src/vcs0.ml", line 30, characters 17-83 + Called from Volgo_hg_eio_test__Test__file_system.(fun) in file "lib/volgo_hg_eio/test/test__file_system.ml", line 34, characters 18-59 + Called from Eio__core__Switch.run_internal in file "lib_eio/core/switch.ml", line 133, characters 8-12 + Re-raised at Eio__core__Switch.maybe_raise_exs in file "lib_eio/core/switch.ml", line 119, characters 21-56 + Called from Eio__core__Switch.run_internal in file "lib_eio/core/switch.ml", line 149, characters 4-21 + Called from Eio__core__Cancel.with_cc in file "lib_eio/core/cancel.ml", line 118, characters 8-12 + Re-raised at Eio__core__Cancel.with_cc in file "lib_eio/core/cancel.ml", line 120, characters 50-58 + Called from Eio_posix__Sched.with_op in file "lib_eio_posix/sched.ml", line 318, characters 8-12 + Re-raised at Eio_posix__Sched.with_op in file "lib_eio_posix/sched.ml", line 324, characters 4-12 + Called from Eio_posix__Sched.run.(fun) in file "lib_eio_posix/sched.ml", line 386, characters 29-47 + Called from Eio_unix__Thread_pool.run in file "lib_eio/unix/thread_pool.ml", line 108, characters 8-13 + Re-raised at Eio_unix__Thread_pool.run in file "lib_eio/unix/thread_pool.ml", line 113, characters 4-39 + Re-raised at Eio_posix__Sched.run.fork.(fun) in file "lib_eio_posix/sched.ml", line 342, characters 12-76 + Called from Stdlib__Fun.protect in file "fun.ml", line 34, characters 8-15 + Re-raised at Stdlib__Fun.protect in file "fun.ml", line 39, characters 6-52 + Called from Eio_posix__Sched.run in file "lib_eio_posix/sched.ml", lines 381-388, characters 4-9 + Called from Eio_posix__Sched.with_sched in file "lib_eio_posix/sched.ml", line 258, characters 8-12 + Re-raised at Eio_posix__Sched.with_sched in file "lib_eio_posix/sched.ml", line 263, characters 4-39 + Called from Ppx_expect_runtime__Test_block.Configured.dump_backtrace in file "runtime/test_block.ml", line 142, characters 10-28 + |}] ;; File "test/cram/run-hg.t", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t _build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t.corrected diff --git a/_build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t b/_build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t.corrected index 46a90c6..b3f49d7 100644 --- a/_build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t +++ b/_build/.sandbox/cd0867539375375937b109bf7e6401d1/default/test/cram/run-hg.t.corrected @@ -2,6 +2,8 @@ First we need to setup a repo in a way that satisfies the test environment. This includes specifics required by the GitHub Actions environment. $ hg init + /tmp/dune_cram_d76e8d_.run-hg.t/main.sh: /tmp/dune_cram_d76e8d_.run-hg.t/1.sh[1]: hg: not found + [127] $ cat > hello << EOF > Hello World @@ -11,22 +13,45 @@ includes specifics required by the GitHub Actions environment. Hello World $ volgo-vcs add hello + Context: + (Vcs.add (repo_root /home/opam/src/_build/.sandbox) + (path cd0867539375375937b109bf7e6401d1/default/test/cram/hello)) + ((prog /usr/local/bin/git) + (args (add cd0867539375375937b109bf7e6401d1/default/test/cram/hello)) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] $ rev0=$(volgo-vcs commit -m "Initial commit") + Context: (Vcs.commit (repo_root /home/opam/src/_build/.sandbox)) + ((prog /usr/local/bin/git) (args (commit -m "Initial commit")) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] Rev-parse. $ hg log -r . --template "{node}\n" | sed -e "s/$rev0/rev0/g" - rev0 + /tmp/dune_cram_d76e8d_.run-hg.t/main.sh: /tmp/dune_cram_d76e8d_.run-hg.t/6.sh[1]: hg: not found $ volgo-vcs current-revision | sed -e "s/$rev0/rev0/g" - rev0 + Context: (Vcs.current_revision (repo_root /home/opam/src/_build/.sandbox)) + ((prog /usr/local/bin/git) (args (rev-parse --verify HEAD^{commit})) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. $ volgo-vcs current-branch - Context: - (Vcs.current_branch - (repo_root - $TESTCASE_ROOT)) - Error: Branches are not implemented in [vcs-hg]. + Context: (Vcs.current_branch (repo_root /home/opam/src/_build/.sandbox)) + ((prog /usr/local/bin/git) (args (rev-parse --abbrev-ref HEAD)) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. [123] Adding a new file under a directory. @@ -35,14 +60,47 @@ Adding a new file under a directory. $ echo "New file" > dir/hello $ volgo-vcs add dir/hello + Context: + (Vcs.add (repo_root /home/opam/src/_build/.sandbox) + (path cd0867539375375937b109bf7e6401d1/default/test/cram/dir/hello)) + ((prog /usr/local/bin/git) + (args (add cd0867539375375937b109bf7e6401d1/default/test/cram/dir/hello)) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] $ rev1=$(volgo-vcs commit -m "Added dir/hello") + Context: (Vcs.commit (repo_root /home/opam/src/_build/.sandbox)) + ((prog /usr/local/bin/git) (args (commit -m "Added dir/hello")) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] $ volgo-vcs ls-files - dir/hello - hello + Context: (Vcs.ls_files (repo_root /home/opam/src/_build/.sandbox) (below ./)) + ((prog /usr/local/bin/git) (args (ls-files --full-name)) + (exit_status (Exited 128)) (cwd /home/opam/src/_build/.sandbox/) (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] $ volgo-vcs ls-files --below dir - dir/hello + Context: + (Vcs.ls_files (repo_root /home/opam/src/_build/.sandbox) + (below cd0867539375375937b109bf7e6401d1/default/test/cram/dir)) + ((prog /usr/local/bin/git) (args (ls-files --full-name)) + (exit_status (Exited 128)) + (cwd + $TESTCASE_ROOT/dir) + (stdout "") + (stderr + "fatal: invalid gitfile format: /home/opam/src/_build/.sandbox/.git")) + Error: Expected exit code 0. + [123] $ volgo-vcs ls-files --below /dir Error: Path is not in repo. (path /dir) @@ -50,34 +108,31 @@ Adding a new file under a directory. $ volgo-vcs ls-files --below foo Context: - (Vcs.ls_files - (repo_root - $TESTCASE_ROOT) - (below foo)) - ((prog /usr/bin/hg) (args (files --include ./foo/)) (exit_status (Exited 1)) + (Vcs.ls_files (repo_root /home/opam/src/_build/.sandbox) + (below cd0867539375375937b109bf7e6401d1/default/test/cram/foo)) + ((prog /usr/local/bin/git) (args (ls-files --full-name)) + (exit_status Unknown) (cwd - $TESTCASE_ROOT) + $TESTCASE_ROOT/foo) (stdout "") (stderr "")) - Error: Expected exit code 0. + Error: + "Unix.Unix_error(Unix.ENOENT, \"open\", \"$TESTCASE_ROOT/foo\")" [123] Vcs allows to run the git command line directly if the backend supports it. $ volgo-vcs hg -- log -r . --template "{node}" | sed -e "s/$rev1/rev1/g" - rev1 + Context: + (Vcs.hg (repo_root /home/opam/src/_build/.sandbox) + (args (log -r . --template {node}))) + Error: Trait [Vcs.Trait.hg] method [hg] is not available in this repository. $ volgo-vcs hg invalid-command 2> /dev/null - [255] + [123] When running in a repository of a certain kind, some operations may not be supported. Below we attempt to run an Mercurial command in this Git repository. $ volgo-vcs git not-run - Context: - (Vcs.git - (repo_root - $TESTCASE_ROOT) - (args not-run)) - Error: Trait [Vcs.Trait.git] method [git] is not available in this - repository. - [123] + git: 'not-run' is not a git command. See 'git --help'. + [1] File "lib/volgo_hg_unix/test/test__hello_commit.ml", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/default/lib/volgo_hg_unix/test/test__hello_commit.ml _build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_commit.ml.corrected diff --git a/_build/default/lib/volgo_hg_unix/test/test__hello_commit.ml b/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_commit.ml.corrected index 1f4f462..48c4ec9 100644 --- a/_build/default/lib/volgo_hg_unix/test/test__hello_commit.ml +++ b/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_commit.ml.corrected @@ -39,14 +39,14 @@ let%expect_test "hello commit" = Vcs.load_file vcs ~path:(Vcs.Repo_root.append repo_root hello_file) in print_string (Vcs.File_contents.to_string file_contents); - [%expect {| Hello World! |}]; + [%expect.unreachable]; Vcs.add vcs ~repo_root ~path:hello_file; let rev = Vcs.commit vcs ~repo_root ~commit_message:(Vcs.Commit_message.v "hello commit") in let mock_rev = Vcs.Mock_revs.to_mock mock_revs ~rev in print_s [%sexp (mock_rev : Vcs.Rev.t)]; - [%expect {| 1185512b92d612b25613f2e5b473e5231185512b |}]; + [%expect.unreachable]; let output = Vcs.hg vcs @@ -59,6 +59,23 @@ let%expect_test "hello commit" = ~f:Vcs.Hg.exit0_and_stdout in print_endline output; - [%expect {| Hello World! |}]; + [%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. *) + ((context + (Vcs.init + ((path + /home/opam/src/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/vcs_testb24a9f))) + ((prog hg) (args (init)) (exit_status Unknown) + (cwd + /home/opam/src/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/vcs_testb24a9f) + (stdout "") (stderr ""))) + (error (Failure "hg: command not found"))) + Raised at Volgo__Vcs0.of_result in file "lib/volgo/src/vcs0.ml", line 30, characters 17-83 + Called from Volgo_hg_unix_test__Test__hello_commit.(fun) in file "lib/volgo_hg_unix/test/test__hello_commit.ml", line 32, characters 18-45 + Called from Ppx_expect_runtime__Test_block.Configured.dump_backtrace in file "runtime/test_block.ml", line 142, characters 10-28 + |}] ;; File "lib/volgo_hg_unix/test/test__hello_cli.ml", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/default/lib/volgo_hg_unix/test/test__hello_cli.ml _build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_cli.ml.corrected diff --git a/_build/default/lib/volgo_hg_unix/test/test__hello_cli.ml b/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_cli.ml.corrected index d642146..257a2d3 100644 --- a/_build/default/lib/volgo_hg_unix/test/test__hello_cli.ml +++ b/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/test__hello_cli.ml.corrected @@ -39,14 +39,14 @@ let%expect_test "hello cli" = Vcs.load_file vcs ~path:(Vcs.Repo_root.append repo_root hello_file) in print_string (Vcs.File_contents.to_string file_contents); - [%expect {| Hello World! |}]; + [%expect.unreachable]; Vcs.add vcs ~repo_root ~path:hello_file; let rev = Vcs.commit vcs ~repo_root ~commit_message:(Vcs.Commit_message.v "hello commit") in let mock_rev = Vcs.Mock_revs.to_mock mock_revs ~rev in print_s [%sexp (mock_rev : Vcs.Rev.t)]; - [%expect {| 1185512b92d612b25613f2e5b473e5231185512b |}]; + [%expect.unreachable]; let output = Vcs.hg vcs @@ -59,7 +59,7 @@ let%expect_test "hello cli" = ~f:Vcs.Hg.exit0_and_stdout in print_endline output; - [%expect {| Hello World! |}]; + [%expect.unreachable]; let hg_rev = match Vcs.Result.hg @@ -77,10 +77,10 @@ let%expect_test "hello cli" = | Error _ -> assert false in require_equal [%here] (module Vcs.Rev) rev hg_rev; - [%expect {||}]; + [%expect.unreachable]; let mock_rev2 = Vcs.Mock_revs.to_mock mock_revs ~rev:hg_rev in print_s [%sexp (mock_rev2 : Vcs.Rev.t)]; - [%expect {| 1185512b92d612b25613f2e5b473e5231185512b |}]; + [%expect.unreachable]; let () = match Vcs.hg vcs ~repo_root ~args:[ "bogus" ] ~f:Vcs.Hg.exit0 with | _ -> assert false @@ -90,18 +90,7 @@ let%expect_test "hello cli" = [%sexp (err : Err.t)] ~fields:[ "cwd"; "repo_root"; "stderr" ]) in - [%expect - {| - ((context - (Vcs.hg ((repo_root <REDACTED>) (args (bogus)))) - ((prog /usr/bin/hg) - (args (bogus)) - (exit_status (Exited 255)) - (cwd <REDACTED>) - (stdout "") - (stderr <REDACTED>))) - (error "Expected exit code 0.")) - |}]; + [%expect.unreachable]; let () = match Vcs.Result.hg vcs ~repo_root ~args:[ "bogus" ] ~f:Vcs.Hg.Result.exit0 with | Ok _ -> assert false @@ -111,17 +100,23 @@ let%expect_test "hello cli" = [%sexp (err : Err.t)] ~fields:[ "cwd"; "repo_root"; "stderr" ]) in - [%expect - {| - ((context - (Vcs.hg ((repo_root <REDACTED>) (args (bogus)))) - ((prog /usr/bin/hg) - (args (bogus)) - (exit_status (Exited 255)) - (cwd <REDACTED>) - (stdout "") - (stderr <REDACTED>))) - (error "Expected exit code 0.")) - |}]; + [%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. *) + ((context + (Vcs.init + ((path + /home/opam/src/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/vcs_testa6b4d1))) + ((prog hg) (args (init)) (exit_status Unknown) + (cwd + /home/opam/src/_build/.sandbox/9147e392e64683020e579d3a9e352534/default/lib/volgo_hg_unix/test/vcs_testa6b4d1) + (stdout "") (stderr ""))) + (error (Failure "hg: command not found"))) + Raised at Volgo__Vcs0.of_result in file "lib/volgo/src/vcs0.ml", line 30, characters 17-83 + Called from Volgo_hg_unix_test__Test__hello_cli.(fun) in file "lib/volgo_hg_unix/test/test__hello_cli.ml", line 32, characters 18-45 + Called from Ppx_expect_runtime__Test_block.Configured.dump_backtrace in file "runtime/test_block.ml", line 142, characters 10-28 + |}] ;; File "test/cram/run.t", line 1, characters 0-0: /usr/local/bin/git --no-pager diff --no-index --color=always -u _build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t _build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t.corrected diff --git a/_build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t b/_build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t.corrected index 580a9b6..bb87c07 100644 --- a/_build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t +++ b/_build/.sandbox/aeb3d831df1003046a94c61826e83f6e/default/test/cram/run.t.corrected @@ -151,7 +151,8 @@ Adding a new file under a directory. (repo_root $TESTCASE_ROOT) (below foo)) - ((prog /usr/bin/git) (args (ls-files --full-name)) (exit_status Unknown) + ((prog /usr/local/bin/git) (args (ls-files --full-name)) + (exit_status Unknown) (cwd $TESTCASE_ROOT/foo) (stdout "") (stderr "")) 2025-06-06 13:12.31: Cancelling: Timeout (60.0 minutes) Job cancelled 2025-06-06 13:12.32: Timeout (60.0 minutes)