2025-08-20 17:10.56: New job: test mbarbin/dunolint https://github.com/mbarbin/dunolint.git#refs/heads/main (4e11fb76cc13b972a0d94741bc486c9656fd2fbb) (linux-x86_64:opensuse-15.6-5.3_opam-2.4) Base: ocaml/opam:opensuse-15.6-ocaml-5.3@sha256:5a5ba8ce58e93bb22fa17ecef857f8c82a0864b92abaedcdc83e748b1b91e729 Opam project build To reproduce locally: git clone --recursive "https://github.com/mbarbin/dunolint.git" -b "main" && cd "dunolint" && git reset --hard 4e11fb76 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:opensuse-15.6-ocaml-5.3@sha256:5a5ba8ce58e93bb22fa17ecef857f8c82a0864b92abaedcdc83e748b1b91e729 # opensuse-15.6-5.3_opam-2.4 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.4 /usr/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 f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 || git fetch origin master) && git reset -q --hard f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam ./ RUN opam pin add -yn dunolint.dev './' && \ opam pin add -yn dunolint-tests.dev './' && \ opam pin add -yn dunolint-lib.dev './' && \ opam pin add -yn dunolint-dev.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="astring.0.8.5 base.v0.17.3 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.1 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-stdlib-runner.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 core_kernel.v0.17.0 core_unix.v0.17.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.0 dune-configurator.3.20.0 dyn.3.20.0 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 file-rewriter.0.0.3 fmt.0.11.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 int_repr.v0.17.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.9.0 mdx.2.5.0 num.1.6 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 ordering.3.20.0 pageantty.0.0.2 parsexp.v0.17.0 patdiff.v0.17.0 patience_diff.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.1 ppx_bin_prot.v0.17.1 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.1 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.1 ppx_jane.v0.17.0 ppx_let.v0.17.1 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.1 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.1 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.1 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.1 ppx_typerep_conv.v0.17.1 ppx_variants_conv.v0.17.1 ppxlib.0.36.0 ppxlib_jane.v0.17.4 re.1.13.2 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 sexps-rewriter.0.0.3 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.0 time_now.v0.17.0 timezone.v0.17.0 topkg.1.1.0 typerep.v0.17.1 uopt.v0.17.0 variantslib.v0.17.0" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.4 --depext-only -y dunolint.dev dunolint-tests.dev dunolint-lib.dev dunolint-dev.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 2025-08-20 17:10.56: Using cache hint "mbarbin/dunolint-ocaml/opam:opensuse-15.6-ocaml-5.3@sha256:5a5ba8ce58e93bb22fa17ecef857f8c82a0864b92abaedcdc83e748b1b91e729-opensuse-15.6-5.3_opam-2.4-e85fb9581aee11db395e6a9ffbfb6c7f" 2025-08-20 17:10.56: Using OBuilder spec: ((from ocaml/opam:opensuse-15.6-ocaml-5.3@sha256:5a5ba8ce58e93bb22fa17ecef857f8c82a0864b92abaedcdc83e748b1b91e729) (comment opensuse-15.6-5.3_opam-2.4) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/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 f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 || git fetch origin master) && git reset -q --hard f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam) (dst ./)) (run (network host) (shell "opam pin add -yn dunolint.dev './' && \ \nopam pin add -yn dunolint-tests.dev './' && \ \nopam pin add -yn dunolint-lib.dev './' && \ \nopam pin add -yn dunolint-dev.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "astring.0.8.5 base.v0.17.3 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.1 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-stdlib-runner.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 core_kernel.v0.17.0 core_unix.v0.17.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.0 dune-configurator.3.20.0 dyn.3.20.0 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 file-rewriter.0.0.3 fmt.0.11.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 int_repr.v0.17.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.9.0 mdx.2.5.0 num.1.6 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 ordering.3.20.0 pageantty.0.0.2 parsexp.v0.17.0 patdiff.v0.17.0 patience_diff.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.1 ppx_bin_prot.v0.17.1 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.1 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.1 ppx_jane.v0.17.0 ppx_let.v0.17.1 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.1 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.1 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.1 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.1 ppx_typerep_conv.v0.17.1 ppx_variants_conv.v0.17.1 ppxlib.0.36.0 ppxlib_jane.v0.17.4 re.1.13.2 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 sexps-rewriter.0.0.3 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.0 time_now.v0.17.0 timezone.v0.17.0 topkg.1.1.0 typerep.v0.17.1 uopt.v0.17.0 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.4 --depext-only -y dunolint.dev dunolint-tests.dev dunolint-lib.dev dunolint-dev.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")) ) 2025-08-20 17:10.56: Waiting for resource in pool OCluster 2025-08-20 20:02.29: Waiting for worker… 2025-08-20 20:04.38: Got resource from pool OCluster Building on clete.caelum.ci.dev All commits already cached HEAD is now at 4e11fb7 Merge pull request #87 from mbarbin/upgrade-crs-20250813 (from ocaml/opam:opensuse-15.6-ocaml-5.3@sha256:5a5ba8ce58e93bb22fa17ecef857f8c82a0864b92abaedcdc83e748b1b91e729) 2025-08-20 20:04.40 ---> using "dbb72b99235b71bb04b11172c3b3a5d67e431e75ea5569c676e352fafb1ea8a6" from cache /: (comment opensuse-15.6-5.3_opam-2.4) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam")) 2025-08-20 20:04.40 ---> using "87e2375a109a58f695d34cacfbdf38b2a462911c00110b164a89b323c1c404ce" from cache /src: (run (shell "opam init --reinit -ni")) Configuring from /home/opam/.opamrc and then 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 Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2025-08-20 20:04.40 ---> using "38171c60acc1f538f362b7636a118033ac9040c2fb28349cd89ff2a7826930d9" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 5.15.0-134-generic The OCaml toplevel, version 5.3.0 2.4.1 2025-08-20 20:04.40 ---> using "44fccd86dc31f97721e525150ad51232b9780edd426f935d21a9c21108171cef" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2025-08-20 20:04.40 ---> using "01bb9945d330e7dcbc82a99d2f1d88d6111b7704d7a2675db148a702f9f8247e" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 || git fetch origin master) && git reset -q --hard f9d23e5cb169337cdf0aac6321e4ec46f6f64a74 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD ee8b9193dd..0978bfceb7 master -> origin/master f9d23e5cb1 Merge pull request #28357 from maiste/release-dune-3.20.0 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository Already up-to-date. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2025-08-20 20:04.40 ---> using "d42e2ceb74fc56387f40b69409c38f6a66b1c9e4dd5b057901531169ce428619" from cache /src: (copy (src dunolint.opam dunolint-tests.opam dunolint-lib.opam dunolint-dev.opam) (dst ./)) 2025-08-20 20:04.41 ---> saved as "90e2dc020975928b14f0a4d30df0147c6590dcd72ba72e05589f74ab17abbb78" /src: (run (network host) (shell "opam pin add -yn dunolint.dev './' && \ \nopam pin add -yn dunolint-tests.dev './' && \ \nopam pin add -yn dunolint-lib.dev './' && \ \nopam pin add -yn dunolint-dev.dev './'")) [dunolint.dev] synchronised (file:///src) dunolint is now pinned to file:///src (version dev) [NOTE] Package dunolint-tests does not exist in opam repositories registered in the current switch. [dunolint-tests.dev] synchronised (file:///src) dunolint-tests is now pinned to file:///src (version dev) [dunolint-lib.dev] synchronised (file:///src) dunolint-lib is now pinned to file:///src (version dev) [NOTE] Package dunolint-dev does not exist in opam repositories registered in the current switch. [dunolint-dev.dev] synchronised (file:///src) dunolint-dev is now pinned to file:///src (version dev) 2025-08-20 20:04.46 ---> saved as "1b82a02a8ed498769cbcdfe80ab88126ff3adbf9b5199ab8920ebe073821af44" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2025-08-20 20:04.47 ---> saved as "6882dcebc854f8395a476a1884f0cc45cf44f582e949861d57d74caaa5e9d628" /src: (env DEPS "astring.0.8.5 base.v0.17.3 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.1 bin_prot.v0.17.0-1 camlp-streams.5.0.1 capitalization.v0.17.0 cmdlang.0.0.9 cmdlang-stdlib-runner.0.0.9 cmdlang-to-cmdliner.0.0.9 cmdliner.1.3.0 core.v0.17.1 core_kernel.v0.17.0 core_unix.v0.17.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.0 dune-configurator.3.20.0 dyn.3.20.0 expect_test_helpers_core.v0.17.0 fieldslib.v0.17.0 file-rewriter.0.0.3 fmt.0.11.0 fpath.0.7.3 fpath-base.0.3.1 fpath-sexp0.0.3.1 gel.v0.17.0 int_repr.v0.17.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 loc.0.2.2 logs.0.9.0 mdx.2.5.0 num.1.6 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 ordering.3.20.0 pageantty.0.0.2 parsexp.v0.17.0 patdiff.v0.17.0 patience_diff.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.1 ppx_bin_prot.v0.17.1 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.1 ppx_disable_unused_warnings.v0.17.0 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_fixed_literal.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_ignore_instrumentation.v0.17.0 ppx_inline_test.v0.17.1 ppx_jane.v0.17.0 ppx_let.v0.17.1 ppx_log.v0.17.0 ppx_module_timer.v0.17.0 ppx_optcomp.v0.17.1 ppx_optional.v0.17.0 ppx_pipebang.v0.17.0 ppx_sexp_conv.v0.17.1 ppx_sexp_message.v0.17.0 ppx_sexp_value.v0.17.0 ppx_stable.v0.17.1 ppx_stable_witness.v0.17.0 ppx_string.v0.17.0 ppx_string_conv.v0.17.0 ppx_tydi.v0.17.1 ppx_typerep_conv.v0.17.1 ppx_variants_conv.v0.17.1 ppxlib.0.36.0 ppxlib_jane.v0.17.4 re.1.13.2 result.1.5 seq.base sexp_pretty.v0.17.0 sexplib.v0.17.0 sexplib0.v0.17.0 sexps-rewriter.0.0.3 spawn.v0.17.0 splittable_random.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.0 time_now.v0.17.0 timezone.v0.17.0 topkg.1.1.0 typerep.v0.17.1 uopt.v0.17.0 variantslib.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.4 --depext-only -y dunolint.dev dunolint-tests.dev dunolint-lib.dev dunolint-dev.dev $DEPS")) + /usr/bin/sudo "zypper" "--non-interactive" "refresh" - Retrieving repository 'Update repository of openSUSE Backports' metadata [. - . - Looking for gpg keys in repository Update repository of openSUSE Backports. - gpgkey=http://download.opensuse.org/update/leap/15.6/backports/repodata/repomd.xml.key - .......done] - Building repository 'Update repository of openSUSE Backports' cache [.. - ..done] - Retrieving repository 'Update repository with updates from SUSE Linux Enterprise 15' metadata [.. - Looking for gpg keys in repository Update repository with updates from SUSE Linux Enterprise 15. - gpgkey=http://download.opensuse.org/update/leap/15.6/sle/repodata/repomd.xml.key - . - . - .......... - .......... - ......... - .......... - .......... - ......... - ......... - ......... - .......... - ......... - .......... - .......... - ......... - .......... - ......... - .......... - ......... - .......... - ......... - .......... - ......... - .......... - ......... - ......... - ......... - .......... - ......... - .......... - .......... - ......... - .......... - ......... - .......... - ......... - ......... - ......... - ......... - .......... - ......... - ......... - .......... - .......... - ......... - ....... - ........ - ......... - ...done] - Building repository 'Update repository with updates from SUSE Linux Enterprise 15' cache [.. - ..done] - Retrieving repository 'Main Update Repository' metadata [.. - Looking for gpg keys in repository Main Update Repository. - gpgkey=http://download.opensuse.org/update/leap/15.6/oss/repodata/repomd.xml.key - .. - ....done] - Building repository 'Main Update Repository' cache [....done] - Repository 'Update Repository (Non-Oss)' is up to date. - Repository 'Non-OSS Repository' is up to date. - Repository 'Main Repository' is up to date. - All repositories have been refreshed. <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [dunolint.dev] synchronised (file:///src) [dunolint-dev.dev] synchronised (file:///src) [dunolint-lib.dev] synchronised (file:///src) [dunolint-tests.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.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-08-20 20:06.39 ---> saved as "82c68ec2de512a1d6d137002221103179e42d75922b53efeb6cedbf985fc0b55" /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.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 102 packages - install astring 0.8.5 - install base v0.17.3 - install base_bigstring v0.17.0 - install base_quickcheck v0.17.1 - install bin_prot v0.17.0-1 - install camlp-streams 5.0.1 - install capitalization v0.17.0 - install cmdlang 0.0.9 - install cmdlang-stdlib-runner 0.0.9 - install cmdlang-to-cmdliner 0.0.9 - install cmdliner 1.3.0 - install core v0.17.1 - install core_kernel v0.17.0 - install core_unix v0.17.1 - install cppo 1.8.0 - install csexp 1.5.2 - install dune 3.20.0 - install dune-configurator 3.20.0 - install dyn 3.20.0 - install expect_test_helpers_core v0.17.0 - install fieldslib v0.17.0 - install file-rewriter 0.0.3 - install fmt 0.11.0 - install fpath 0.7.3 - install fpath-base 0.3.1 - install fpath-sexp0 0.3.1 - install gel v0.17.0 - install int_repr v0.17.0 - install jane-street-headers v0.17.0 - install jst-config v0.17.0 - install loc 0.2.2 - install logs 0.9.0 - install mdx 2.5.0 - install num 1.6 - 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 ordering 3.20.0 - install pageantty 0.0.2 - install parsexp v0.17.0 - install patdiff v0.17.0 - install patience_diff 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.1 - install ppx_bin_prot v0.17.1 - install ppx_cold v0.17.0 - install ppx_compare v0.17.0 - install ppx_custom_printf v0.17.0 - install ppx_derivers 1.2.1 - install ppx_diff v0.17.1 - install ppx_disable_unused_warnings v0.17.0 - install ppx_enumerate v0.17.0 - install ppx_expect v0.17.3 - install ppx_fields_conv v0.17.0 - install ppx_fixed_literal v0.17.0 - install ppx_globalize v0.17.2 - install ppx_hash v0.17.0 - install ppx_here v0.17.0 - install ppx_ignore_instrumentation v0.17.0 - install ppx_inline_test v0.17.1 - install ppx_jane v0.17.0 - install ppx_let v0.17.1 - install ppx_log v0.17.0 - install ppx_module_timer v0.17.0 - install ppx_optcomp v0.17.1 - install ppx_optional v0.17.0 - install ppx_pipebang v0.17.0 - install ppx_sexp_conv v0.17.1 - install ppx_sexp_message v0.17.0 - install ppx_sexp_value v0.17.0 - install ppx_stable v0.17.1 - install ppx_stable_witness v0.17.0 - install ppx_string v0.17.0 - install ppx_string_conv v0.17.0 - install ppx_tydi v0.17.1 - install ppx_typerep_conv v0.17.1 - install ppx_variants_conv v0.17.1 - install ppxlib 0.36.0 - install ppxlib_jane v0.17.4 - install re 1.13.2 - install result 1.5 - install seq base - install sexp_pretty v0.17.0 - install sexplib v0.17.0 - install sexplib0 v0.17.0 - install sexps-rewriter 0.0.3 - 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.20.0 - install time_now v0.17.0 - install timezone v0.17.0 - install topkg 1.1.0 - install typerep v0.17.1 - install uopt v0.17.0 - install variantslib v0.17.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved astring.0.8.5 (cached) -> retrieved base.v0.17.3 (cached) -> retrieved base_bigstring.v0.17.0 (cached) -> retrieved base_quickcheck.v0.17.1 (cached) -> retrieved camlp-streams.5.0.1 (cached) -> retrieved bin_prot.v0.17.0-1 (cached) -> retrieved capitalization.v0.17.0 (cached) -> retrieved cmdliner.1.3.0 (cached) -> retrieved core.v0.17.1 (cached) -> retrieved cmdlang.0.0.9, cmdlang-stdlib-runner.0.0.9, cmdlang-to-cmdliner.0.0.9 (cached) -> retrieved core_kernel.v0.17.0 (cached) -> retrieved core_unix.v0.17.1 (cached) -> retrieved cppo.1.8.0 (cached) -> retrieved csexp.1.5.2 (cached) -> retrieved expect_test_helpers_core.v0.17.0 (cached) -> retrieved fieldslib.v0.17.0 (cached) -> retrieved file-rewriter.0.0.3, sexps-rewriter.0.0.3 (cached) -> retrieved fmt.0.11.0 (cached) -> retrieved fpath.0.7.3 (cached) -> retrieved fpath-base.0.3.1, fpath-sexp0.0.3.1 (cached) -> retrieved gel.v0.17.0 (cached) -> retrieved int_repr.v0.17.0 (cached) -> retrieved jane-street-headers.v0.17.0 (cached) -> retrieved jst-config.v0.17.0 (cached) -> retrieved loc.0.2.2 (cached) -> retrieved logs.0.9.0 (cached) -> retrieved num.1.6 (cached) -> retrieved ocaml-compiler-libs.v0.17.0 (cached) -> retrieved mdx.2.5.0 (cached) -> retrieved ocaml-version.4.0.1 (cached) -> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached) -> retrieved ocamlbuild.0.16.1 (cached) -> retrieved ocamlfind.1.9.8 (cached) -> retrieved pageantty.0.0.2 (cached) -> retrieved parsexp.v0.17.0 (cached) -> retrieved patience_diff.v0.17.0 (cached) -> retrieved patdiff.v0.17.0 (cached) -> retrieved pp.2.0.0 (cached) -> retrieved pplumbing.0.0.14 (cached) -> retrieved ppx_assert.v0.17.0 (cached) -> retrieved ppx_base.v0.17.0 (cached) -> retrieved ppx_bench.v0.17.1 (cached) -> retrieved ppx_bin_prot.v0.17.1 (cached) -> retrieved ppx_cold.v0.17.0 (cached) -> retrieved ppx_compare.v0.17.0 (cached) -> retrieved ppx_custom_printf.v0.17.0 (cached) -> retrieved ppx_derivers.1.2.1 (cached) -> retrieved ppx_diff.v0.17.1 (cached) -> retrieved ppx_disable_unused_warnings.v0.17.0 (cached) -> retrieved ppx_enumerate.v0.17.0 (cached) -> retrieved ppx_fields_conv.v0.17.0 (cached) -> retrieved ppx_expect.v0.17.3 (cached) -> retrieved ppx_fixed_literal.v0.17.0 (cached) -> retrieved ppx_globalize.v0.17.2 (cached) -> retrieved ppx_hash.v0.17.0 (cached) -> retrieved ppx_here.v0.17.0 (cached) -> retrieved ppx_ignore_instrumentation.v0.17.0 (cached) -> retrieved ppx_inline_test.v0.17.1 (cached) -> retrieved ppx_jane.v0.17.0 (cached) -> retrieved ppx_let.v0.17.1 (cached) -> retrieved ppx_log.v0.17.0 (cached) -> retrieved ppx_module_timer.v0.17.0 (cached) -> retrieved ppx_optional.v0.17.0 (cached) -> retrieved ppx_optcomp.v0.17.1 (cached) -> retrieved ppx_pipebang.v0.17.0 (cached) -> retrieved dune.3.20.0, dune-configurator.3.20.0, dyn.3.20.0, ordering.3.20.0, stdune.3.20.0 (cached) -> retrieved ppx_sexp_conv.v0.17.1 (cached) -> retrieved ppx_sexp_message.v0.17.0 (cached) -> retrieved ppx_sexp_value.v0.17.0 (cached) -> retrieved ppx_stable.v0.17.1 (cached) -> retrieved ppx_stable_witness.v0.17.0 (cached) -> retrieved ppx_string.v0.17.0 (cached) -> retrieved ppx_string_conv.v0.17.0 (cached) -> retrieved ppx_tydi.v0.17.1 (cached) -> retrieved ppx_typerep_conv.v0.17.1 (cached) -> retrieved ppx_variants_conv.v0.17.1 (cached) -> retrieved ppxlib_jane.v0.17.4 (cached) -> retrieved result.1.5 (cached) -> retrieved seq.base (cached) -> retrieved re.1.13.2 (cached) -> retrieved sexp_pretty.v0.17.0 (cached) -> installed cmdliner.1.3.0 -> installed num.1.6 -> installed ocamlbuild.0.16.1 -> installed seq.base -> retrieved ppxlib.0.36.0 (cached) -> retrieved sexplib.v0.17.0 (cached) -> retrieved sexplib0.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 time_now.v0.17.0 (cached) -> retrieved timezone.v0.17.0 (cached) -> retrieved typerep.v0.17.1 (cached) -> retrieved uopt.v0.17.0 (cached) -> retrieved variantslib.v0.17.0 (cached) -> retrieved topkg.1.1.0 (cached) -> installed ocamlfind.1.9.8 -> installed topkg.1.1.0 -> installed fmt.0.11.0 -> installed astring.0.8.5 -> installed fpath.0.7.3 -> installed logs.0.9.0 -> installed dune.3.20.0 -> installed camlp-streams.5.0.1 -> installed cmdlang.0.0.9 -> installed csexp.1.5.2 -> installed cppo.1.8.0 -> installed jane-street-headers.v0.17.0 -> installed ocaml-compiler-libs.v0.17.0 -> installed ocaml-version.4.0.1 -> installed ocaml_intrinsics_kernel.v0.17.1 -> installed pp.2.0.0 -> installed ppx_derivers.1.2.1 -> installed result.1.5 -> installed sexplib0.v0.17.0 -> installed spawn.v0.17.0 -> installed stdlib-shims.0.3.0 -> installed cmdlang-stdlib-runner.0.0.9 -> installed cmdlang-to-cmdliner.0.0.9 -> installed re.1.13.2 -> installed fpath-sexp0.0.3.1 -> installed ordering.3.20.0 -> installed parsexp.v0.17.0 -> installed dune-configurator.3.20.0 -> installed sexplib.v0.17.0 -> installed dyn.3.20.0 -> installed mdx.2.5.0 -> installed stdune.3.20.0 -> installed loc.0.2.2 -> installed file-rewriter.0.0.3 -> installed sexps-rewriter.0.0.3 -> installed pplumbing.0.0.14 -> installed pageantty.0.0.2 -> installed base.v0.17.3 -> installed fieldslib.v0.17.0 -> installed variantslib.v0.17.0 -> installed fpath-base.0.3.1 -> installed stdio.v0.17.0 -> installed typerep.v0.17.1 -> installed ppxlib.0.36.0 -> installed ppxlib_jane.v0.17.4 -> installed ppx_optcomp.v0.17.1 -> installed ppx_cold.v0.17.0 -> installed ppx_tydi.v0.17.1 -> installed ppx_disable_unused_warnings.v0.17.0 -> installed ppx_stable_witness.v0.17.0 -> installed ppx_typerep_conv.v0.17.1 -> installed ppx_here.v0.17.0 -> installed ppx_variants_conv.v0.17.1 -> installed ppx_stable.v0.17.1 -> installed ppx_fields_conv.v0.17.0 -> installed ppx_pipebang.v0.17.0 -> installed ppx_fixed_literal.v0.17.0 -> installed ppx_ignore_instrumentation.v0.17.0 -> installed ppx_enumerate.v0.17.0 -> installed ppx_globalize.v0.17.2 -> installed ppx_compare.v0.17.0 -> installed ppx_optional.v0.17.0 -> installed ppx_sexp_conv.v0.17.1 -> installed ppx_let.v0.17.1 -> installed ppx_hash.v0.17.0 -> installed ppx_sexp_value.v0.17.0 -> installed ppx_assert.v0.17.0 -> installed ppx_sexp_message.v0.17.0 -> installed ppx_base.v0.17.0 -> installed ppx_custom_printf.v0.17.0 -> installed capitalization.v0.17.0 -> installed sexp_pretty.v0.17.0 -> installed jst-config.v0.17.0 -> installed ppx_string.v0.17.0 -> installed bin_prot.v0.17.0-1 -> installed time_now.v0.17.0 -> installed ppx_bin_prot.v0.17.1 -> installed ppx_string_conv.v0.17.0 -> installed ppx_module_timer.v0.17.0 -> installed ppx_inline_test.v0.17.1 -> installed ppx_bench.v0.17.1 -> installed ppx_expect.v0.17.3 -> installed splittable_random.v0.17.0 -> installed base_quickcheck.v0.17.1 -> installed ppx_log.v0.17.0 -> installed ppx_jane.v0.17.0 -> installed uopt.v0.17.0 -> installed gel.v0.17.0 -> installed int_repr.v0.17.0 -> installed base_bigstring.v0.17.0 -> installed ppx_diff.v0.17.1 -> installed core.v0.17.1 -> installed expect_test_helpers_core.v0.17.0 -> installed timezone.v0.17.0 -> installed patience_diff.v0.17.0 -> installed core_kernel.v0.17.0 -> installed core_unix.v0.17.1 -> installed patdiff.v0.17.0 Done. # To update the current shell environment, run: eval $(opam env) 2025-08-20 20:15.33 ---> saved as "cedcafa23f357173f55a16f95a6b6357228627f7b22a22cb187181b14efec6dd" /src: (copy (src .) (dst /src)) 2025-08-20 20:15.33 ---> saved as "06ea873b9807965f2bceb27076e7992bea29183e0b2898c37dddafca3267cc85" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) File "test/cram/check.t", line 1, characters 0-0: (cd _build/default && /home/opam/.opam/5.3/bin/patdiff -keep-whitespace -location-style omake test/cram/check.t test/cram/check.t.corrected) ------ test/cram/check.t ++++++ test/cram/check.t.corrected File "test/cram/check.t", line 29, characters 0-1: | $ mkdir -p lib/foo | | $ cat > lib/foo/dune <<EOF | > (library | > (name bar)) | > EOF | |We'll pretend there is a _build/ directory, to show that it is ignored by default. | | $ mkdir -p _build/ | |Let's do some linting! | | $ dunolint lint --check --verbosity=debug | dunolint: [DEBUG] Visiting directory "./" | dunolint: [INFO] Linting file "dune-project" +| dunolint: [DEBUG] Visiting directory ".cram.check.t/" | dunolint: [DEBUG] Visiting directory "_build/" | dunolint: [INFO] Skipping children of directory "_build/" | dunolint: [DEBUG] Visiting directory "lib/" | dunolint: [DEBUG] Visiting directory "lib/foo/" | dunolint: [INFO] Linting file "lib/foo/dune" | |Now let's suppose there are some lints to apply. We'll add manual conditions to |simulate lint errors. | | $ dunolint lint \ | > --enforce='(dune (library (name (equals foo))))' \ | > --enforce='(dune_project (name (equals foo)))' \ | > --check | check: Would edit file "dune-project": | -1,1 +1,1 | -|(name main) "/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1 2025-08-20 20:16.17: Job failed: Failed: Build failed