(for PR #29582)
2026-03-25 23:09.38: New job: test obuild.0.2.2 with ocaml-compiler.5.4.0~beta1, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/29582/head (fa5fb3a6a806e832e4c7791145889a6bbe8b64ef)
on debian-13-ocaml-5.4/amd64
To reproduce locally:
cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29582/head" && git reset --hard fa5fb3a6
git fetch origin master
git merge --no-edit 40ee9f8d41e293fa1327d03c279f5e61e22157f8
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn ocaml-compiler.5.4.0~beta1 5.4.0~beta1
RUN opam reinstall --update-invariant ocaml-compiler.5.4.0~beta1; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'ocaml-compiler.5.4.0~beta1' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
RUN opam reinstall obuild.0.2.2; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'obuild.0.2.2' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
RUN (opam reinstall --with-test obuild.0.2.2) || true
RUN opam reinstall --with-test --verbose obuild.0.2.2; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'obuild.0.2.2' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
END-OF-DOCKERFILE
docker build -f ../Dockerfile .
2026-03-25 23:09.38: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6-ocaml-compiler.5.4.0~beta1-obuild.0.2.2-fa5fb3a6a806e832e4c7791145889a6bbe8b64ef"
2026-03-25 23:09.38: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6)
(user (uid 1000) (gid 1000))
(workdir /home/opam)
(run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
(run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
(run (shell "opam option solver=builtin-0install && opam config report"))
(env OPAMDOWNLOADJOBS 1)
(env OPAMERRLOGLEN 0)
(env OPAMPRECISETRACKING 1)
(env CI true)
(env OPAM_REPO_CI true)
(run (shell "rm -rf opam-repository/"))
(copy (src .) (dst opam-repository/))
(run (shell "opam repository set-url --strict default opam-repository/"))
(run (network host)
(shell "opam update --depexts || true"))
(run (shell "opam pin add -k version -yn ocaml-compiler.5.4.0~beta1 5.4.0~beta1"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall --update-invariant ocaml-compiler.5.4.0~beta1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-compiler.5.4.0~beta1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall obuild.0.2.2;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'obuild.0.2.2' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
(run (network host)
(shell "(opam reinstall --with-test obuild.0.2.2) || true"))
(run (shell "opam reinstall --with-test --verbose obuild.0.2.2;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'obuild.0.2.2' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
)
2026-03-25 23:09.38: Waiting for resource in pool OCluster
2026-03-25 23:09.54: Waiting for worker…
2026-03-25 23:12.58: Got resource from pool OCluster
Building on phoebe.caelum.ci.dev
All commits already cached
Updating files: 70% (12977/18536)
Updating files: 71% (13161/18536)
Updating files: 72% (13346/18536)
Updating files: 73% (13532/18536)
Updating files: 74% (13717/18536)
Updating files: 75% (13902/18536)
Updating files: 76% (14088/18536)
Updating files: 77% (14273/18536)
Updating files: 78% (14459/18536)
Updating files: 79% (14644/18536)
Updating files: 80% (14829/18536)
Updating files: 81% (15015/18536)
Updating files: 82% (15200/18536)
Updating files: 83% (15385/18536)
Updating files: 84% (15571/18536)
Updating files: 85% (15756/18536)
Updating files: 86% (15941/18536)
Updating files: 87% (16127/18536)
Updating files: 88% (16312/18536)
Updating files: 89% (16498/18536)
Updating files: 90% (16683/18536)
Updating files: 91% (16868/18536)
Updating files: 92% (17054/18536)
Updating files: 93% (17239/18536)
Updating files: 94% (17424/18536)
Updating files: 95% (17610/18536)
Updating files: 96% (17795/18536)
Updating files: 97% (17980/18536)
Updating files: 98% (18166/18536)
Updating files: 99% (18351/18536)
Updating files: 100% (18536/18536)
Updating files: 100% (18536/18536), done.
HEAD is now at 40ee9f8d41 Merge pull request #29587 from astrada/gdfuse08
Merge made by the 'ort' strategy.
packages/ocaml-compiler/ocaml-compiler.5.3.0/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.3/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.4.0/opam | 5 ++++-
.../ocaml-compiler/ocaml-compiler.5.4.0~alpha1/opam | 5 ++++-
.../ocaml-compiler/ocaml-compiler.5.4.0~beta1/opam | 5 ++++-
.../ocaml-compiler/ocaml-compiler.5.4.0~beta2/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.4.0~rc1/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.4.1/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.4/opam | 5 ++++-
.../ocaml-compiler/ocaml-compiler.5.5.0~alpha1/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.5/opam | 5 ++++-
packages/ocaml-compiler/ocaml-compiler.5.6/opam | 5 ++++-
packages/ocaml-option-llvm/ocaml-option-llvm.1/opam | 18 ++++++++++++++++++
.../ocaml-options-vanilla/ocaml-options-vanilla.1/opam | 1 +
packages/ocaml-variants/ocaml-variants.5.2.0+msvc/opam | 2 ++
15 files changed, 69 insertions(+), 12 deletions(-)
create mode 100644 packages/ocaml-option-llvm/ocaml-option-llvm.1/opam
(from ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6)
Unable to find image 'ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6' locally
docker.io/ocaml/opam@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6: Pulling from ocaml/opam
866771c43bf5: Already exists
1e49bea09367: Already exists
e793768537e6: Already exists
ed323d3d481a: Already exists
7df34a5cd5f1: Already exists
fd712d3eb935: Already exists
4b9fb8c99118: Already exists
9d9a01948b94: Already exists
0f1514f90b32: Already exists
e1ec5a753447: Already exists
03cc323e2f71: Already exists
c09c08ea9749: Already exists
b36b619f8e6b: Already exists
195344ca5274: Already exists
228ee78582a6: Already exists
504bde1c25b3: Already exists
9d8b1356c89f: Already exists
9d8b1356c89f: Already exists
568fb6dda155: Already exists
c499c9198aea: Already exists
048e5e358118: Already exists
871ca48eb45d: Already exists
4f4fb700ef54: Already exists
a5a2568b9df9: Already exists
068cf3106ac8: Already exists
559f54ec9b29: Already exists
798ffd96fde5: Already exists
e9a891bf80d7: Already exists
d720cfe12674: Already exists
c81c932f4a91: Already exists
79f24fa3bb11: Already exists
8c1debcd8c20: Already exists
1bb2cfea7250: Already exists
2b3d3ca75e4c: Already exists
557cacaf263c: Already exists
d10483022eef: Already exists
7b62a90d8223: Already exists
28ce8ea66e72: Already exists
d975909ea717: Already exists
5c215c69c247: Already exists
e7c082452a54: Already exists
f6cbd774d654: Already exists
b40777a84cca: Already exists
7bb5edb9c889: Already exists
020670bcefab: Already exists
46df05d0db83: Already exists
45bde7b38933: Already exists
b4d63fa01ada: Already exists
Digest: sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6
Status: Downloaded newer image for ocaml/opam@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6
2026-03-25 23:13.03 ---> using "41eea30e3f639c18d8cf57c309ec76919ec7b2398036f7e41744cbce59a133d3" from cache
/: (user (uid 1000) (gid 1000))
/: (workdir /home/opam)
/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-03-25 23:13.03 ---> using "4ad7f430d684c40cedc651267e0edf890c044fe4e624255de377c471b4526bac" from cache
/home/opam: (run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [Y/n] y
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-03-25 23:13.03 ---> using "71fa58e52457bf6a7eac317c6a6ef1e2bdf53e533a1e4fd04b90c9349347e038" from cache
/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version 2.5.0
# self-upgrade no
# system arch=x86_64 os=linux os-distribution=debian os-version=13
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 71
# repositories 1 (version-controlled)
# pinned 1 (version)
# current-switch 5.4
# invariant ["ocaml-base-compiler" {= "5.4.0"}]
# compiler-packages ocaml-base-compiler.5.4.0, ocaml-compiler.5.4.0, ocaml-options-vanilla.1
# ocaml:native true
# ocaml:native-tools true
# ocaml:native-dynlink true
# ocaml:stubsdir /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 5.4.0
2026-03-25 23:13.03 ---> using "ed86081cb38ca125a920162bfe6a4bb7b1c27c6973c917551687c83cf44dbfdf" from cache
/home/opam: (env OPAMDOWNLOADJOBS 1)
/home/opam: (env OPAMERRLOGLEN 0)
/home/opam: (env OPAMPRECISETRACKING 1)
/home/opam: (env CI true)
/home/opam: (env OPAM_REPO_CI true)
/home/opam: (run (shell "rm -rf opam-repository/"))
2026-03-25 23:13.03 ---> using "04a48515eea40c32b96da0c71328b4bba0edb66eed83d4f78554b39097cf1f25" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-03-25 23:13.04 ---> using "07a68ecb21bed61e4f94fa4dcb50d9c7e84f81448f8ae7e9e9983c91027df4a2" from cache
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-03-25 23:13.04 ---> using "b26a47ea5c8289d9e604d194e0a5dfeb524275bd8a7c64613ecd9c7e1857f13a" from cache
/home/opam: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Get:1 http://deb.debian.org/debian trixie InRelease [140 kB]
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian trixie/main amd64 Packages [9671 kB]
- Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [114 kB]
- Fetched 10.0 MB in 1s (7175 kB/s)
- Reading package lists...
-
2026-03-25 23:13.04 ---> using "0b343335ec438165d35b471bbf0eb838e16886a027b79662715b77b328e1271c" from cache
/home/opam: (run (shell "opam pin add -k version -yn ocaml-compiler.5.4.0~beta1 5.4.0~beta1"))
ocaml-compiler is now pinned to version 5.4.0~beta1
2026-03-25 23:13.04 ---> using "e1c05b46f28d7574e116a5b10ba98f694969006f7796f6a98c361e246ff746c8" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall --update-invariant ocaml-compiler.5.4.0~beta1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ocaml-compiler.5.4.0~beta1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
ocaml-compiler.5.4.0~beta1 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== remove 1 package
- remove ocaml-base-compiler 5.4.0 (pinned) [conflicts with ocaml-compiler]
=== downgrade 1 package
- downgrade ocaml-compiler 5.4.0 to 5.4.0~beta1 (pinned)
=== recompile 6 packages
- recompile base-domains base [uses ocaml]
- recompile base-effects base [uses ocaml]
- recompile base-nnp base [uses base-domains]
- recompile ocaml 5.4.0 [uses ocaml-base-compiler]
- recompile ocaml-config 3 [uses ocaml-base-compiler]
- recompile opam-depext 1.2.3 [uses ocaml]
=== install 1 package
- install ocaml-variants 5.4.0~beta1+options [required by ocaml]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved ocaml-compiler.5.4.0~beta1 (cached)
-> retrieved ocaml-config.3 (cached)
-> retrieved opam-depext.1.2.3 (cached)
-> removed base-effects.base
-> removed base-nnp.base
-> removed base-domains.base
-> removed opam-depext.1.2.3
-> removed ocaml.5.4.0
-> removed ocaml-config.3
-> removed ocaml-base-compiler.5.4.0
-> removed ocaml-compiler.5.4.0
-> installed ocaml-compiler.5.4.0~beta1
-> installed ocaml-variants.5.4.0~beta1+options
-> installed ocaml-config.3
-> installed ocaml.5.4.0
-> installed base-domains.base
-> installed base-effects.base
-> installed base-nnp.base
-> installed opam-depext.1.2.3
[NOTE] Switch invariant was updated to ["ocaml-variants" {= "5.4.0~beta1+options"}]
Use `opam switch set-invariant' to change it.
Done.
<><> opam-depext.1.2.3 installed successfully <><><><><><><><><><><><><><><><><>
=> opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead
# To update the current shell environment, run: eval $(opam env)
2026-03-25 23:13.04 ---> using "3817a208ed5f7baeb43f88e56244319516f39faddd782fe35a9ef1c9797c14d8" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall obuild.0.2.2;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'obuild.0.2.2' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
obuild.0.2.2 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 2 packages
- install obuild 0.2.2
- install ocamlfind 1.9.8 [required by obuild]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved obuild.0.2.2 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> installed ocamlfind.1.9.8
-> installed obuild.0.2.2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-25 23:13.50 ---> saved as "1ba0b0ee0b2757a947cfc300e36c61700233513f0dbc05805469f7ebb45227ad"
/home/opam: (run (network host)
(shell "(opam reinstall --with-test obuild.0.2.2) || true"))
The following actions will be performed:
=== recompile 1 package
- recompile obuild 0.2.2
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved obuild.0.2.2 (https://opam.ocaml.org/cache)
-> removed obuild.0.2.2
-> installed obuild.0.2.2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-25 23:14.23 ---> saved as "47940a33665e0887d1c142855c49b968cd33890b4c3b1ac4a332519807cdbdb5"
/home/opam: (run (shell "opam reinstall --with-test --verbose obuild.0.2.2;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'obuild.0.2.2' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
The following actions will be performed:
=== recompile 1 package
- recompile obuild 0.2.2
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing 1/4: [obuild.0.2.2: extract]
-> retrieved obuild.0.2.2 (cached)
Processing 2/4: [obuild: ./bootstrap]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./bootstrap" (CWD=/home/opam/.opam/5.4/.opam-switch/build/obuild.0.2.2)
- 5.4.0~beta1
- COMPILING base/compat
- COMPILING base/location
- COMPILING base/fugue
- COMPILING base/string_utils
- COMPILING base/filepath
- COMPILING base/filesystem
- COMPILING base/cli
- File "cli.ml", line 135, characters 40-51:
- 135 | let command_with_subcommands name ~doc ?description ~commands =
- ^^^^^^^^^^^
- Warning 16 [unerasable-optional-argument]: this optional argument cannot be erased.
- COMPILING core/types
- COMPILING core/gconf
- COMPILING core/filetype
- COMPILING core/dag
- COMPILING core/libname
- COMPILING core/pp
- COMPILING core/expr
- File "expr.ml", lines 147-149, characters 6-34:
- 147 | ......match String_utils.split ':' v ~limit:2 with
- 148 | | [ _ ] -> ("", v)
- 149 | | [ p1; rest ] -> (p1, rest)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: _::rest::_::_
-
- File "expr.ml", lines 152-154, characters 6-34:
- 152 | ......match String_utils.split '-' rest ~limit:2 with
- 153 | | [ _ ] -> (p1, rest, "")
- 154 | | [ p2; p3 ] -> (p1, p2, p3)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: _::p3::_::_
- COMPILING core/utils
- File "utils.ml", line 97, characters 17-69:
- 97 | ignore (List.find (fun n -> Filesystem.exists (n p)) names);
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 5 [ignored-partial-application]: this function application is partial,
- maybe some arguments are missing.
- COMPILING core/modname
- COMPILING core/taskdep
- COMPILING core/helper
- COMPILING core/dagutils
- COMPILING core/process
- COMPILING core/findlibConf
- COMPILING core/scheduler
- COMPILING core/prog
- COMPILING core/dependencies
- COMPILING core/generators
- COMPILING core/hier
- COMPILING core/meta
- COMPILING core/metacache
- COMPILING core/obuild_lexer
- COMPILING core/obuild_ast
- COMPILING core/obuild_parser
- File "obuild_parser.ml", line 97, characters 6-15:
- 97 | let try_split sep =
- ^^^^^^^^^
- Warning 26 [unused-var]: unused variable try_split.
- COMPILING core/target
- COMPILING core/dist
- COMPILING core/project
- COMPILING core/obuild_validate
- COMPILING core/project_read
- COMPILING core/analyze
- COMPILING core/configure
- COMPILING core/prepare_types
- COMPILING core/ppx_resolver
- COMPILING core/prepare
- COMPILING core/buildprogs
- COMPILING core/build_cstubs
- File "build_cstubs.ml", line 80, characters 4-43:
- 80 | Filesystem.mkdir_safe autogen_dir 0o755;
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 10 [non-unit-statement]: this expression should have type unit.
-
- File "build_cstubs.ml", line 252, characters 4-43:
- 252 | Filesystem.mkdir_safe autogen_dir 0o755;
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 10 [non-unit-statement]: this expression should have type unit.
- COMPILING core/build
- File "build.ml", lines 374-376, characters 4-87:
- 374 | ....match List.filter (fun x -> x <> []) l with
- 375 | | [] -> ("", [])
- 376 | | ((r, x) :: xs) :: ys -> (r, (x :: List.map snd xs) :: List.map (List.map snd) ys)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: []::_
- COMPILING core/exception
- COMPILING command/sdist
- COMPILING command/doc
- COMPILING command/init
- COMPILING command/help
- COMPILING command/install
- COPYING modules to root for bootstrap
- COMPILING path_generated
- COMPILING main
- LINKING obuild.bootstrap
- Configuring obuild-0.2.2...
- Detected 72 CPU cores, setting default parallelism to 72
- [ 1 of 103] Compiling Location
- [ 2 of 103] Compiling Compat
- File "lib/base/location.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- File "lib/base/compat.ml", line 8, characters 13-15:
- 8 | let ok x = Ok x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 9, characters 16-21:
- 9 | let error e = Error e
- ^^^^^
- Warning 41 [ambiguous-name]: Error belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 11, characters 23-25:
- 11 | let is_ok = function Ok _ -> true | Error _ -> false
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 12, characters 26-28:
- 12 | let is_error = function Ok _ -> false | Error _ -> true
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 15, characters 6-8:
- 15 | | Ok x -> Ok (f x)
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 15, characters 14-16:
- 15 | | Ok x -> Ok (f x)
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 19, characters 6-8:
- 19 | | Ok x -> Ok x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 19, characters 14-16:
- 19 | | Ok x -> Ok x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 23, characters 6-8:
- 23 | | Ok x -> f x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 24, characters 17-22:
- 24 | | Error e -> Error e
- ^^^^^
- Warning 41 [ambiguous-name]: Error belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 27, characters 6-8:
- 27 | | Ok x -> x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 31, characters 6-8:
- 31 | | Ok x -> x
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 35, characters 6-8:
- 35 | | Ok _ -> invalid_arg "Result.get_error"
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/compat.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- [ 3 of 103] Intfing Fugue
- [ 4 of 103] Compiling Fugue
- [ 5 of 103] Intfing String_utils
- [ 6 of 103] Compiling String_utils
- [ 7 of 103] Intfing Cli
- [ 8 of 103] Intfing Filepath
- [ 9 of 103] Compiling Filepath
- [ 10 of 103] Compiling Cli
- [ 11 of 103] Intfing Filesystem
- [ 12 of 103] Compiling Filesystem
- File "lib/base/cli.ml", lines 68-70, characters 4-16:
- 68 | ....match Hashtbl.find ctx.values name with
- 69 | | VBool b -> b
- 70 | | _ -> false
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", lines 75-77, characters 4-15:
- 75 | ....match Hashtbl.find ctx.values name with
- 76 | | VString s -> Some s
- 77 | | _ -> None
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", lines 87-89, characters 4-15:
- 87 | ....match Hashtbl.find ctx.values name with
- 88 | | VInt i -> Some i
- 89 | | _ -> None
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", lines 99-101, characters 4-15:
- 99 | ....match Hashtbl.find ctx.values name with
- 100 | | VBool b -> Some b
- 101 | | _ -> None
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", lines 111-114, characters 4-13:
- 111 | ....match Hashtbl.find ctx.values name with
- 112 | | VStrings l -> l
- 113 | | VString s -> [ s ]
- 114 | | _ -> []
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", line 135, characters 40-51:
- 135 | let command_with_subcommands name ~doc ?description ~commands =
- ^^^^^^^^^^^
- Warning 16 [unerasable-optional-argument]: this optional argument cannot be erased.
-
- File "lib/base/cli.ml", lines 619-621, characters 18-27:
- 619 | ..................match Hashtbl.find values spec.arg_name with
- 620 | | VStrings l -> l
- 621 | | _ -> []
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type arg_value.
-
- File "lib/base/cli.ml", line 3, characters 0-11:
- 3 | open Compat
- ^^^^^^^^^^^
- Warning 45 [open-shadow-label-constructor]: this open statement shadows the
- constructor Ok (which is later used)
-
- File "lib/base/cli.ml", line 757, characters 4-6:
- 757 | Ok ()
- ^^
- Warning 41 [ambiguous-name]: Ok belongs to several types:
- Compat.result Stdlib.result.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/base/cli.ml", line 3, characters 0-11:
- 3 | open Compat
- ^^^^^^^^^^^
- Warning 45 [open-shadow-label-constructor]: this open statement shadows the
- constructor Error (which is later used)
-
- File "lib/base/cli.ml", line 22, characters 2-26:
- 22 | arg_env : string option;
- ^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 69 [unused-field]: record field arg_env is never read.
- (However, this field is used to build or mutate values.)
-
- File "lib/base/filesystem.ml", lines 19-22, characters 14-52:
- 19 | ..............match (Unix.lstat fent).Unix.st_kind with
- 20 | | Unix.S_DIR -> rmdir_recursive Unix.rmdir fent
- 21 | | Unix.S_REG -> Unix.unlink fent
- 22 | | _ -> raise (UnexpectedFileType fent)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Unix.file_kind.
-
- [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cmxa
- [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cmxs
- [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cma
- [ 14 of 103] Checking dist/build/lib-obuild_base
- [ 15 of 103] Intfing Expr
- [ 16 of 103] Intfing Dag
- [ 17 of 103] Intfing Modname
- [ 18 of 103] Intfing Pp
- [ 19 of 103] Intfing Gconf
- [ 20 of 103] Compiling Obuild_ast
- [ 21 of 103] Compiling Obuild_lexer
- File "lib/core/obuild_ast.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- [ 22 of 103] Intfing Filetype
- [ 23 of 103] Intfing Types
- [ 24 of 103] Compiling Expr
- File "lib/core/obuild_lexer.ml", line 19, characters 0-54:
- 19 | (** A token with its location and indentation level *)
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 50 [unexpected-docstring]: ambiguous documentation comment
-
- File "lib/core/obuild_lexer.ml", lines 142-147, characters 28-39:
- 142 | ............................function
- 143 | | ({ tok = BLOCK (name, args); indent; _ }) :: more when indent > kv_indent ->
- 144 | let cont = String.concat " " (name :: args) in
- 145 | let v' = if v = "" then cont else v ^ " " ^ cont in
- 146 | collect v' more
- 147 | | remaining -> (v, remaining)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type token.
-
- File "lib/core/obuild_lexer.ml", lines 138-151, characters 17-33:
- 138 | .................function
- 139 | | [] -> []
- 140 | | ({ tok = KEY_VALUE (k, v); indent = kv_indent; _ } as kv_tok) :: rest ->
- 141 | (* Greedily collect BLOCK tokens at strictly higher indentation *)
- 142 | let rec collect v = function
- ...
- 148 | in
- 149 | let full_v, remaining = collect v rest in
- 150 | { kv_tok with tok = KEY_VALUE (k, full_v) } :: loop remaining
- 151 | | t :: rest -> t :: loop rest
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type token.
-
- File "lib/core/obuild_lexer.ml", line 189, characters 40-43:
- 189 | Printf.sprintf "%d:%d indent=%d %s" t.loc.line t.loc.col t.indent (token_to_string t.tok)
- ^^^
- Warning 41 [ambiguous-name]: loc belongs to several types:
- located_token Location.located.
- The first one was selected. Please disambiguate if this is wrong.
-
- File "lib/core/obuild_lexer.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- [ 25 of 103] Compiling Dag
- File "lib/core/expr.ml", lines 147-149, characters 6-34:
- 147 | ......match String_utils.split ':' v ~limit:2 with
- 148 | | [ _ ] -> ("", v)
- 149 | | [ p1; rest ] -> (p1, rest)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: _::rest::_::_
-
- File "lib/core/expr.ml", lines 152-154, characters 6-34:
- 152 | ......match String_utils.split '-' rest ~limit:2 with
- 153 | | [ _ ] -> (p1, rest, "")
- 154 | | [ p2; p3 ] -> (p1, p2, p3)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: _::p3::_::_
-
- File "lib/core/expr.ml", lines 251-256, characters 10-44:
- 251 | ..........match r with
- 252 | | Token.RPAREN :: r -> (Paren e, r)
- 253 | | Token.OR :: _ | Token.AND :: _ ->
- 254 | let e, r = parse_bin_expr e r in
- 255 | loop e r
- 256 | | _ -> raise UnbalancedParenthesis
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Token.t.
-
- File "lib/core/expr.ml", lines 243-265, characters 4-69:
- 243 | ....match l with
- 244 | | [] -> raise MalformedExpression
- 245 | | Token.NOT :: r ->
- 246 | let e, r = parse_sub_expr r in
- 247 | (Not e, r)
- ...
- 262 | | Token.LT :: Token.VER v :: r -> (Lt v, r)
- 263 | | Token.LE :: Token.VER v :: r -> (Le v, r)
- 264 | | Token.NE :: Token.VER v :: r -> (Ne v, r)
- 265 | | z -> raise (UnknownExpression (showList "," Token.to_string z))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Token.t.
-
- File "lib/core/expr.ml", lines 267-274, characters 4-36:
- 267 | ....match l with
- 268 | | Token.OR :: r ->
- 269 | let e, r = parse_sub_expr r in
- 270 | (Or (expr, e), r)
- 271 | | Token.AND :: r ->
- 272 | let e, r = parse_sub_expr r in
- 273 | (And (expr, e), r)
- 274 | | _ -> raise MalformedExpression
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Token.t.
-
- File "lib/core/expr.ml", lines 309-312, characters 2-63:
- 309 | ..match Token.lexer s with
- 310 | | [] -> raise ExpressionEmpty
- 311 | | Token.ID name :: constraints -> (name, parse_constraints name constraints)
- 312 | | x :: _ -> raise (InvalidDependencyName (Token.to_string x))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Token.t.
-
- [ 26 of 103] Compiling Modname
- [ 27 of 103] Compiling Pp
- File "lib/core/modname.ml", line 2, characters 0-10:
- 2 | open Fugue
- ^^^^^^^^^^
- Warning 33 [unused-open]: unused open Fugue.
-
- [ 28 of 103] Compiling Gconf
- [ 29 of 103] Compiling Filetype
- File "lib/core/gconf.ml", lines 111-114, characters 18-18:
- 111 | ..................match opt with
- 112 | | Executable_native | Library_native | Library_bytecode -> true
- 113 | | Library_plugin -> Sys.os_type = "Unix"
- 114 | | _ -> false
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type target_option.
-
- File "lib/core/gconf.ml", lines 121-126, characters 2-11:
- 121 | ..match (opt, value) with
- 122 | | Executable_profiling, true -> set_target_option_typed Library_profiling true
- 123 | | Executable_debugging, true -> set_target_option_typed Library_debugging true
- 124 | | Library_plugin, true -> set_target_option_typed Library_native true
- 125 | | Library_native, false -> set_target_option_typed Library_plugin false
- 126 | | _ -> ()
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type target_option.
-
- File "lib/core/gconf.ml", line 1, characters 0-10:
- 1 | open Fugue
- ^^^^^^^^^^
- Warning 33 [unused-open]: unused open Fugue.
-
- [ 30 of 103] Compiling Types
- [ 31 of 103] Compiling Obuild_parser
- [ 32 of 103] Intfing Taskdep
- [ 33 of 103] Intfing Libname
- [ 34 of 103] Intfing Utils
- [ 35 of 103] Compiling Taskdep
- [ 36 of 103] Compiling Libname
- [ 37 of 103] Compiling Utils
- File "lib/core/obuild_parser.ml", line 200, characters 0-48:
- 200 | (** Parse generator match type from key-value *)
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 50 [unexpected-docstring]: unattached documentation comment (ignored)
-
- File "lib/core/obuild_parser.ml", lines 206-218, characters 19-29:
- 206 | ...................(
- 207 | match t.tok with
- 208 | | KEY_VALUE (key, value) ->
- 209 | let gen' =
- 210 | match Compat.string_lowercase key with
- ...
- 215 | | _ -> gen
- 216 | in
- 217 | loop gen' rest
- 218 | | _ -> loop gen rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 227-238, characters 19-29:
- 227 | ...................(
- 228 | match t.tok with
- 229 | | KEY_VALUE (key, value) ->
- 230 | let gen' =
- 231 | match Compat.string_lowercase key with
- ...
- 235 | | _ -> gen
- 236 | in
- 237 | loop gen' rest
- 238 | | _ -> loop gen rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 246-287, characters 19-32:
- 246 | ...................(
- 247 | match t.tok with
- 248 | | KEY_VALUE (key, value) ->
- 249 | let cstubs' =
- 250 | match Compat.string_lowercase key with
- ...
- 284 | | _ -> cstubs
- 285 | in
- 286 | loop cstubs' rest
- 287 | | _ -> loop cstubs rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 296-308, characters 19-29:
- 296 | ...................(
- 297 | match t.tok with
- 298 | | KEY_VALUE (key, value) ->
- 299 | let per' =
- 300 | match Compat.string_lowercase key with
- ...
- 305 | | _ -> per
- 306 | in
- 307 | loop per' rest
- 308 | | _ -> loop per rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 331-372, characters 17-43:
- 331 | .................(
- 332 | match t.tok with
- 333 | | KEY_VALUE (key, value) ->
- 334 | let lib' =
- 335 | match Compat.string_lowercase key with
- ...
- 369 | | _ -> lib
- 370 | in
- 371 | parse_library_tokens lib' remaining
- 372 | | _ -> parse_library_tokens lib rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 391-422, characters 19-29:
- 391 | ...................(
- 392 | match t.tok with
- 393 | | KEY_VALUE (key, value) ->
- 394 | let exe' =
- 395 | match Compat.string_lowercase key with
- ...
- 419 | | _ -> exe
- 420 | in
- 421 | loop exe' remaining
- 422 | | _ -> loop exe rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 439-472, characters 19-30:
- 439 | ...................(
- 440 | match t.tok with
- 441 | | KEY_VALUE (key, value) ->
- 442 | let test' =
- 443 | match Compat.string_lowercase key with
- ...
- 469 | | _ -> test
- 470 | in
- 471 | loop test' remaining
- 472 | | _ -> loop test rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 483-519, characters 19-33:
- 483 | ...................(
- 484 | match t.tok with
- 485 | | KEY_VALUE (key, value) ->
- 486 | let example' =
- 487 | match Compat.string_lowercase key with
- ...
- 516 | | _ -> example
- 517 | in
- 518 | loop example' remaining
- 519 | | _ -> loop example rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 528-560, characters 19-31:
- 528 | ...................(
- 529 | match t.tok with
- 530 | | KEY_VALUE (key, value) ->
- 531 | let bench' =
- 532 | match Compat.string_lowercase key with
- ...
- 557 | | _ -> bench
- 558 | in
- 559 | loop bench' remaining
- 560 | | _ -> loop bench rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 569-579, characters 19-30:
- 569 | ...................(
- 570 | match t.tok with
- 571 | | KEY_VALUE (key, value) ->
- 572 | let flag' =
- 573 | match Compat.string_lowercase key with
- ...
- 576 | | _ -> flag
- 577 | in
- 578 | loop flag' rest
- 579 | | _ -> loop flag rest)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", lines 618-677, characters 4-13:
- 618 | ....match t.tok with
- 619 | | KEY_VALUE (key, value) -> (
- 620 | let p = !proj in
- 621 | proj :=
- 622 | match Compat.string_lowercase key with
- ...
- 674 | let gen = parse_generator_block block_name block_tokens in
- 675 | { p with project_generators = p.project_generators @ [ gen ] }
- 676 | | _ -> p)
- 677 | | _ -> ()
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Obuild_lexer.token.
-
- File "lib/core/obuild_parser.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- File "lib/core/obuild_parser.ml", line 97, characters 6-15:
- 97 | let try_split sep =
- ^^^^^^^^^
- Warning 26 [unused-var]: unused variable try_split.
-
- [ 38 of 103] Intfing Dagutils
- [ 39 of 103] Compiling Dagutils
- File "lib/core/utils.ml", line 97, characters 17-69:
- 97 | ignore (List.find (fun n -> Filesystem.exists (n p)) names);
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 5 [ignored-partial-application]: this function application is partial,
- maybe some arguments are missing.
-
- File "lib/core/utils.ml", lines 124-126, characters 6-17:
- 124 | ......match status with
- 125 | | Unix.WEXITED 0 -> Some (int_of_string (String_utils.strip_spaces line))
- 126 | | _ -> None
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Unix.process_status.
-
- [ 40 of 103] Intfing Helper
- [ 41 of 103] Compiling Helper
- [ 42 of 103] Intfing Process
- [ 43 of 103] Compiling Process
- File "lib/core/process.ml", line 1, characters 0-11:
- 1 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/process.ml", lines 96-98, characters 2-57:
- 96 | ..match pstat with
- 97 | | Unix.WEXITED 0 -> Success (Buffer.contents p.out.buf, Buffer.contents p.err.buf, Unix.gettimeofday () -. p.time)
- 98 | | _ -> Failure (Buffer.contents p.err.buf)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Unix.process_status.
-
- [ 44 of 103] Intfing Generators
- [ 45 of 103] Intfing Scheduler
- [ 46 of 103] Intfing FindlibConf
- [ 47 of 103] Intfing Prog
- [ 48 of 103] Compiling Generators
- [ 49 of 103] Compiling Scheduler
- File "lib/core/generators.ml", lines 152-156, characters 2-11:
- 152 | ..match ext with
- 153 | | Filetype.FileOther s ->
- 154 | let s_with_dot = "." ^ s in
- 155 | List.filter (fun gen -> gen.suffix = s || gen.suffix = s_with_dot) (get_all ())
- 156 | | _ -> []
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/core/generators.ml", line 2, characters 0-11:
- 2 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- [ 50 of 103] Compiling FindlibConf
- [ 51 of 103] Compiling Prog
- [ 52 of 103] Intfing Hier
- [ 53 of 103] Intfing Meta
- [ 54 of 103] Compiling Hier
- [ 55 of 103] Compiling Meta
- [ 56 of 103] Intfing Dependencies
- [ 57 of 103] Compiling Dependencies
- File "lib/core/meta.ml", lines 143-145, characters 8-37:
- 143 | ........match p with
- 144 | | Predicate.Neg n -> not (List.mem n constraints)
- 145 | | _ -> List.mem p constraints.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Predicate.t.
-
- File "lib/core/meta.ml", lines 158-160, characters 10-40:
- 158 | ..........match p with
- 159 | | Predicate.Neg n -> not (Hashtbl.mem preds_set n)
- 160 | | _ -> Hashtbl.mem preds_set p.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Predicate.t.
-
- File "lib/core/meta.ml", lines 380-387, characters 28-20:
- 380 | ............................function
- 381 | | COMMA :: ID s :: xs ->
- 382 | let l, r = parse_predicate xs in
- 383 | (Predicate.of_string s :: l, r)
- 384 | | COMMA :: MINUS :: ID s :: xs ->
- 385 | let l, r = parse_predicate xs in
- 386 | (Predicate.Neg (Predicate.of_string s) :: l, r)
- 387 | | xs -> ([], xs)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 393-395, characters 8-93:
- 393 | ........match xs2 with
- 394 | | RPAREN :: xs3 -> (Predicate.of_string s :: preds, xs3)
- 395 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate")).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 398-400, characters 8-93:
- 398 | ........match xs2 with
- 399 | | RPAREN :: xs3 -> (Predicate.Neg (Predicate.of_string s) :: preds, xs3)
- 400 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate")).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 389-401, characters 40-20:
- 389 | ........................................function
- 390 | | LPAREN :: RPAREN :: xs -> ([], xs)
- 391 | | LPAREN :: ID s :: xs -> (
- 392 | let preds, xs2 = parse_predicate xs in
- 393 | match xs2 with
- ...
- 398 | match xs2 with
- 399 | | RPAREN :: xs3 -> (Predicate.Neg (Predicate.of_string s) :: preds, xs3)
- 400 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate")))
- 401 | | xs -> ([], xs)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 416-432, characters 8-28:
- 416 | ........match xs2 with
- 417 | | PLUSEQ :: S reqs :: xs3 | EQ :: S reqs :: xs3 ->
- 418 | let deps =
- 419 | List.map (fun r -> Libname.of_string r)
- 420 | $ (List.filter (fun x -> x <> "")
- ...
- 429 | (MetaParseError
- 430 | ( pkg_name,
- 431 | "parsing requires failed: expected '=' or '+=' followed by quoted dependency \
- 432 | list" )).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 440-447, characters 8-94:
- 440 | ........match xs2 with
- 441 | | EQ :: S v :: xs3 ->
- 442 | let nacc = { acc with Pkg.warning = acc.Pkg.warning @ [ (preds, v) ] } in
- 443 | parse pkg_name nacc expecting_rparen xs3
- 444 | | _ ->
- 445 | raise
- 446 | (MetaParseError
- 447 | (pkg_name, "parsing warning failed: expected '=' followed by quoted string")).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 450-462, characters 8-102:
- 450 | ........match xs2 with
- 451 | | PLUSEQ :: S v :: xs3 ->
- 452 | let nacc =
- 453 | { acc with Pkg.append_archives = acc.Pkg.append_archives @ [ (preds, v) ] }
- 454 | in
- ...
- 459 | | _ ->
- 460 | raise
- 461 | (MetaParseError
- 462 | (pkg_name, "parsing archive failed: expected '=' or '+=' followed by quoted string"))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 467-480, characters 8-98:
- 467 | ........match xs2 with
- 468 | | PLUSEQ :: S v :: xs3 ->
- 469 | let nacc =
- 470 | { acc with Pkg.append_archives = acc.Pkg.append_archives @ [ (preds, v) ] }
- 471 | in
- ...
- 477 | raise
- 478 | (MetaParseError
- 479 | ( pkg_name,
- 480 | "parsing plugin failed: expected '=' or '+=' followed by quoted plugin path" )).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 485-491, characters 8-101:
- 485 | ........match xs2 with
- 486 | | EQ :: S v :: xs3 ->
- 487 | parse pkg_name { acc with Pkg.ppx = Some (preds, v) } expecting_rparen xs3
- 488 | | _ ->
- 489 | raise
- 490 | (MetaParseError
- 491 | (pkg_name, "parsing ppx failed: expected '=' followed by quoted preprocessor path"))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 495-503, characters 8-102:
- 495 | ........match xs2 with
- 496 | | PLUSEQ :: S v :: xs3 | EQ :: S v :: xs3 ->
- 497 | parse pkg_name
- 498 | { acc with Pkg.ppxopt = acc.Pkg.ppxopt @ [ (preds, v) ] }
- 499 | expecting_rparen xs3
- 500 | | _ ->
- 501 | raise
- 502 | (MetaParseError
- 503 | (pkg_name, "parsing ppxopt failed: expected '=' or '+=' followed by quoted options"))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 510-516, characters 26-93:
- 510 | ..........................function
- 511 | | RPAREN :: zs -> zs
- 512 | | _ :: zs -> consume zs
- 513 | | [] ->
- 514 | raise
- 515 | (MetaParseError
- 516 | (pkg_name, "unexpected EOF in error field (missing closing parenthesis)"))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 518-523, characters 8-98:
- 518 | ........match consume xs with
- 519 | | EQ :: S _ :: xs2 -> parse pkg_name acc expecting_rparen xs2
- 520 | | _ ->
- 521 | raise
- 522 | (MetaParseError
- 523 | (pkg_name, "parsing error field failed, expected '=' after closing parenthesis")).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 526-536, characters 8-99:
- 526 | ........match xs2 with
- 527 | | EQ :: S s :: xs3 ->
- 528 | parse pkg_name
- 529 | {
- 530 | acc with
- ...
- 533 | expecting_rparen xs3
- 534 | | _ ->
- 535 | raise
- 536 | (MetaParseError (pkg_name, "parsing linkopts failed, expected '=' after predicates")).
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- File "lib/core/meta.ml", lines 403-546, characters 48-61:
- 403 | ................................................function
- 404 | | [] ->
- 405 | if expecting_rparen then
- 406 | raise (MetaParseError (pkg_name, "unclosed package block (missing closing parenthesis)"))
- 407 | else
- ...
- 543 | (MetaParseError
- 544 | ( pkg_name,
- 545 | "unknown token '" ^ to_string x ^ "' in meta file\n"
- 546 | ^ String.concat " " (List.map to_string xs) ))
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type t.
-
- [ 58 of 103] Intfing Metacache
- [ 59 of 103] Intfing Target
- [ 60 of 103] Compiling Metacache
- [ 61 of 103] Compiling Target
- File "lib/core/metacache.ml", line 2, characters 0-11:
- 2 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/target.ml", line 218, characters 37-51:
- 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode)
- ^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Library_native was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 218, characters 37-51:
- 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode)
- ^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Library_native relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 218, characters 83-99:
- 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode)
- ^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Library_bytecode was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 218, characters 83-99:
- 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode)
- ^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Library_bytecode relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 220, characters 37-54:
- 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode)
- ^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Executable_native was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 220, characters 37-54:
- 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode)
- ^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Executable_native relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 220, characters 86-105:
- 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode)
- ^^^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Executable_bytecode was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 220, characters 86-105:
- 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode)
- ^^^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Executable_bytecode relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 226, characters 35-52:
- 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling)
- ^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Library_debugging was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 226, characters 35-52:
- 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling)
- ^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Library_debugging relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 226, characters 84-101:
- 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling)
- ^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Library_profiling was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 226, characters 84-101:
- 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling)
- ^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Library_profiling relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 228, characters 35-55:
- 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling)
- ^^^^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Executable_debugging was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 228, characters 35-55:
- 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling)
- ^^^^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Executable_debugging relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- File "lib/core/target.ml", line 228, characters 87-107:
- 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling)
- ^^^^^^^^^^^^^^^^^^^^
- Warning 40 [name-out-of-scope]: Executable_profiling was selected from type Gconf.target_option.
- It is not visible in the current scope, and will not be selected
- if the type becomes unknown.
-
- File "lib/core/target.ml", line 228, characters 87-107:
- 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling)
- ^^^^^^^^^^^^^^^^^^^^
- Warning 42 [disambiguated-name]: this use of Executable_profiling relies on
- type-directed disambiguation,
- it will not compile with OCaml 4.00 or earlier.
-
- [ 62 of 103] Intfing Dist
- [ 63 of 103] Intfing Project
- [ 64 of 103] Compiling Dist
- [ 65 of 103] Compiling Project
- File "lib/core/project.ml", lines 107-109, characters 6-22:
- 107 | ......match target.target_buildable with
- 108 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_tests)
- 109 | | other -> other
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.runtime_bool.
-
- File "lib/core/project.ml", lines 136-138, characters 6-22:
- 136 | ......match target.target_buildable with
- 137 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_benchs)
- 138 | | other -> other
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.runtime_bool.
-
- File "lib/core/project.ml", lines 164-166, characters 6-22:
- 164 | ......match target.target_buildable with
- 165 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_examples)
- 166 | | other -> other
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.runtime_bool.
-
- [ 66 of 103] Compiling Obuild_validate
- [ 67 of 103] Intfing Analyze
- [ 68 of 103] Compiling Analyze
- File "lib/core/obuild_validate.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- File "lib/core/obuild_validate.ml", line 7, characters 0-17:
- 7 | open Obuild_lexer
- ^^^^^^^^^^^^^^^^^
- Warning 33 [unused-open]: unused open Obuild_lexer.
-
- [ 69 of 103] Compiling Project_read
- File "lib/core/analyze.ml", lines 69-71, characters 6-17:
- 69 | ......match name with
- 70 | | Name.Lib lname -> Some lname
- 71 | | _ -> None.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/analyze.ml", line 4, characters 0-11:
- 4 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/analyze.ml", lines 225-234, characters 14-27:
- 225 | ..............match preds with
- 226 | | [ Meta.Predicate.Toploop ] -> ()
- 227 | | _ ->
- 228 | List.iter
- 229 | (fun reqDep ->
- 230 | log Debug " library %s depends on %s\n" (Libname.to_string dep)
- 231 | (Libname.to_string reqDep);
- 232 | Dag.add_edge (Dependency dep) (Dependency reqDep) depsDag;
- 233 | loop reqDep)
- 234 | reqDeps.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Meta.Predicate.t.
-
- File "lib/core/analyze.ml", lines 252-256, characters 8-28:
- 252 | ........match target.target_name with
- 253 | | Name.Lib l ->
- 254 | Dag.add_node (Dependency l) depsDag;
- 255 | Dag.add_edge (Dependency l)
- 256 | | _ -> fun _ _ -> ()
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- [ 70 of 103] Intfing Prepare_types
- File "lib/core/prepare_types.mli", line 7, characters 0-10:
- 7 | open Types
- ^^^^^^^^^^
- Warning 33 [unused-open]: unused open Types.
-
- [ 71 of 103] Intfing Configure
- [ 72 of 103] Compiling Prepare_types
- File "lib/core/project_read.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- [ 73 of 103] Compiling Configure
- File "lib/core/prepare_types.ml", line 8, characters 0-11:
- 8 | open Target
- ^^^^^^^^^^^
- Warning 33 [unused-open]: unused open Target.
-
- [ 74 of 103] Intfing Ppx_resolver
- [ 75 of 103] Compiling Ppx_resolver
- File "lib/core/configure.ml", line 4, characters 0-11:
- 4 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/configure.ml", line 46, characters 4-15:
- 46 | let sanityCheck ?(needs_c_toolchain=false) () =
- ^^^^^^^^^^^
- Warning 32 [unused-value-declaration]: unused value sanityCheck.
-
- File "lib/core/ppx_resolver.ml", lines 80-82, characters 8-32:
- 80 | ........match node with
- 81 | | Dependency dep -> Some dep
- 82 | | _ -> None
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Analyze.dependency_tag.
-
- File "lib/core/ppx_resolver.ml", line 25, characters 0-11:
- 25 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- [ 76 of 103] Intfing Prepare
- [ 77 of 103] Compiling Prepare
- File "lib/core/prepare.ml", line 53, characters 0-11:
- 53 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/prepare.ml", lines 305-319, characters 10-21:
- 305 | ..........match
- 306 | Filetype.of_filepath fp
- 307 | with
- 308 | | Filetype.FileML -> Some (Modname.of_filename f)
- 309 | | Filetype.FileMLI ->
- ...
- 316 | Some (Modname.of_filename f)
- 317 | else
- 318 | None
- 319 | | _ -> None.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/core/prepare.ml", lines 344-346, characters 8-20:
- 344 | ........match Hashtbl.find conf.project_dep_data dep with
- 345 | | Internal -> true
- 346 | | _ -> false.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Analyze.dep_type.
-
- File "lib/core/prepare.ml", lines 484-488, characters 8-17:
- 484 | ........match r with
- 485 | | CompileModule _ | CompileDirectory _ | CompileC _ ->
- 486 | Dag.add_edge (LinkTarget target) r stepsDag;
- 487 | Dag.add_edge (CheckTarget target) (LinkTarget target) stepsDag
- 488 | | _ -> ().
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Prepare_types.compile_step.
-
- File "lib/core/prepare.ml", lines 541-543, characters 8-64:
- 541 | ........match target.target_name with
- 542 | | Target.Name.Lib l -> l
- 543 | | _ -> failwith "cstubs can only be used with libraries"
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/prepare.ml", lines 719-721, characters 8-25:
- 719 | ........match target.target_name with
- 720 | | Target.Name.Lib libname -> autogenDir </> fn (Libname.to_string libname)
- 721 | | _ -> autogenDir
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/prepare.ml", lines 990-992, characters 10-19:
- 990 | ..........match (target.target_cstubs, target.target_name) with
- 991 | | Some _, Target.Name.Lib libname -> [ autogenDir </> fn (Libname.to_string libname) ]
- 992 | | _ -> []
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/prepare.ml", line 57, characters 0-18:
- 57 | open Prepare_types
- ^^^^^^^^^^^^^^^^^^
- Warning 33 [unused-open]: unused open Prepare_types.
-
- [ 78 of 103] Intfing Buildprogs
- [ 79 of 103] Compiling Buildprogs
- File "lib/core/buildprogs.ml", lines 82-87, characters 14-75:
- 82 | ..............function
- 83 | | Filetype.FileML -> ext
- 84 | | Filetype.FileMLI -> Filetype.FileCMI
- 85 | | _ ->
- 86 | (* It should not happen *)
- 87 | if buildMode = ByteCode then Filetype.FileCMO else Filetype.FileCMX
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/core/buildprogs.ml", line 241, characters 4-41:
- 241 | let generate_cstubs_type_discovery_source cstubs libname autogen_dir =
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 32 [unused-value-declaration]: unused value generate_cstubs_type_discovery_source.
-
- File "lib/core/buildprogs.ml", line 273, characters 4-41:
- 273 | let generate_cstubs_function_stubs_source cstubs libname autogen_dir =
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 32 [unused-value-declaration]: unused value generate_cstubs_function_stubs_source.
-
- File "lib/core/buildprogs.ml", line 317, characters 4-24:
- 317 | let run_cstubs_generator project includes ml_file output_file =
- ^^^^^^^^^^^^^^^^^^^^
- Warning 32 [unused-value-declaration]: unused value run_cstubs_generator.
-
- [ 80 of 103] Compiling Build_cstubs
- File "lib/core/build_cstubs.ml", line 4, characters 0-11:
- 4 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/build_cstubs.ml", line 80, characters 4-43:
- 80 | Filesystem.mkdir_safe autogen_dir 0o755;
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 10 [non-unit-statement]: this expression should have type unit.
-
- File "lib/core/build_cstubs.ml", line 252, characters 4-43:
- 252 | Filesystem.mkdir_safe autogen_dir 0o755;
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 10 [non-unit-statement]: this expression should have type unit.
-
- File "lib/core/build_cstubs.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- File "lib/core/build_cstubs.ml", line 1, characters 0-10:
- 1 | open Fugue
- ^^^^^^^^^^
- Warning 33 [unused-open]: unused open Fugue.
-
- File "lib/core/build_cstubs.ml", line 5, characters 0-11:
- 5 | open Printf
- ^^^^^^^^^^^
- Warning 33 [unused-open]: unused open Stdlib.Printf.
-
- File "lib/core/build_cstubs.ml", line 6, characters 0-12:
- 6 | open Analyze
- ^^^^^^^^^^^^
- Warning 33 [unused-open]: unused open Analyze.
-
- [ 81 of 103] Intfing Build
- [ 82 of 103] Compiling Build
- File "lib/core/build.ml", lines 77-102, characters 4-50:
- 77 | ....match (Filetype.of_filename bdest, srcTy) with
- 78 | | (Filetype.FileCMX | Filetype.FileCMO), (Filetype.FileCMX | Filetype.FileCMO) ->
- 79 | let bml = Filetype.replace_extension bdest Filetype.FileML in
- 80 | let bmli = Filetype.replace_extension bdest Filetype.FileMLI in
- 81 | if bml = bsrc then
- ...
- 99 | "H file " ^ fn_to_string bsrc ^ " changed"
- 100 | else
- 101 | "file changed " ^ fp_to_string changedSrc
- 102 | | _, _ -> fp_to_string changedSrc ^ " changed"
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/core/build.ml", lines 113-115, characters 6-17:
- 113 | ......match (t, o) with
- 114 | | ByteCode, WithProf -> false
- 115 | | _ -> true.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Types.ocaml_compiled_type.
-
- File "lib/core/build.ml", lines 113-115, characters 6-17:
- 113 | ......match (t, o) with
- 114 | | ByteCode, WithProf -> false
- 115 | | _ -> true.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Types.ocaml_compilation_option.
-
- File "lib/core/build.ml", line 4, characters 0-11:
- 4 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "lib/core/build.ml", lines 331-338, characters 22-26:
- 331 | ......................(
- 332 | match e with
- 333 | | Hier.FileEntry (_, f) ->
- 334 | if Filetype.of_filepath f = Filetype.FileMLI then
- 335 | Some m
- 336 | else
- 337 | None
- 338 | | _ -> None)
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Hier.file_entry.
-
- File "lib/core/build.ml", lines 374-376, characters 4-87:
- 374 | ....match List.filter (fun x -> x <> []) l with
- 375 | | [] -> ("", [])
- 376 | | ((r, x) :: xs) :: ys -> (r, (x :: List.map snd xs) :: List.map (List.map snd) ys)
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched: []::_
-
- File "lib/core/build.ml", line 612, characters 10-26:
- 612 | let rec dep_is_satisfied current_pkg =
- ^^^^^^^^^^^^^^^^
- Warning 39 [unused-rec-flag]: unused rec flag.
-
- File "lib/core/build.ml", lines 651-653, characters 17-29:
- 651 | .................match compileOpt with
- 652 | | WithProf -> Meta.Predicate.Gprof :: preds
- 653 | | _ -> preds
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Types.ocaml_compilation_option.
-
- File "lib/core/build.ml", lines 668-678, characters 2-58:
- 668 | ..match target.target_name with
- 669 | | Name.Lib libname ->
- 670 | if plugin then
- 671 | cstate.compilation_builddir_ml Normal </> Libname.to_cmxs compileOpt libname
- 672 | else
- ...
- 675 | let outputName =
- 676 | Utils.to_exe_name compileOpt compiledType (Target.get_target_dest_name target)
- 677 | in
- 678 | cstate.compilation_builddir_ml Normal </> outputName
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/build.ml", lines 864-870, characters 6-15:
- 864 | ......match (target.target_cstubs, target.target_name) with
- 865 | | Some cstubs, Name.Lib libname ->
- 866 | let autogen_dir = get_cstubs_autogen_dir libname in
- 867 | let c_lib_name = cstubs.cstubs_external_library_name in
- 868 | let c_stubs_file = fn (c_lib_name ^ "_stubs.c") in
- 869 | [ autogen_dir </> o_from_cfile c_stubs_file ]
- 870 | | _ -> []
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/core/build.ml", lines 960-963, characters 28-44:
- 960 | ............................(
- 961 | match task with
- 962 | | CompileC _ -> raise (CCompilationFailed er)
- 963 | | _ -> raise (CompilationFailed er))..
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Prepare.compile_step.
-
- File "lib/core/build.ml", line 390, characters 29-36:
- 390 | let check_compilation_needed is_intf dep_descs dir_spec use_thread annot_mode pack_opt use_pp oflags
- ^^^^^^^
- Warning 27 [unused-var-strict]: unused variable is_intf.
-
- File "lib/core/build.ml", line 582, characters 4-10:
- 582 | let link_c cstate clib_name =
- ^^^^^^
- Warning 32 [unused-value-declaration]: unused value link_c.
-
- [ 83 of 103] Intfing Exception
- [ 84 of 103] Compiling Exception
- [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cmxa
- [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cmxs
- [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cma
- [ 86 of 103] Checking dist/build/lib-obuild_core
- [ 87 of 103] Intfing Help
- [ 88 of 103] Intfing Install
- [ 89 of 103] Intfing Doc
- [ 90 of 103] Intfing Init
- [ 91 of 103] Intfing Sdist
- [ 92 of 103] Compiling Help
- [ 93 of 103] Compiling Install
- [ 94 of 103] Compiling Doc
- File "lib/install.ml", lines 22-31, characters 8-20:
- 22 | ........match Filetype.of_filepath (build_dir </> f) with
- 23 | | Filetype.FileCMX
- 24 | | Filetype.FileCMI
- 25 | | Filetype.FileA
- 26 | | Filetype.FileCMXS
- 27 | | Filetype.FileCMXA
- 28 | | Filetype.FileCMA
- 29 | | Filetype.FileCMT
- 30 | | Filetype.FileCMTI -> true
- 31 | | _ -> false.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/install.ml", lines 35-37, characters 6-18:
- 35 | ......match Filetype.of_filepath (build_dir </> f) with
- 36 | | Filetype.FileEXE -> true
- 37 | | _ -> false.
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/install.ml", lines 55-57, characters 10-19:
- 55 | ..........match target.target_name with
- 56 | | Name.Lib _ -> print_target_files target list_lib_files
- 57 | | _ -> ().
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/install.ml", lines 63-65, characters 10-19:
- 63 | ..........match target.target_name with
- 64 | | Name.Exe _ -> print_target_files target list_exe_files
- 65 | | _ -> ().
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Target.Name.t.
-
- File "lib/install.ml", line 7, characters 0-11:
- 7 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- [ 95 of 103] Compiling Init
- File "lib/doc.ml", line 5, characters 4-15:
- 5 | let runOcamldoc pp =
- ^^^^^^^^^^^
- Warning 32 [unused-value-declaration]: unused value runOcamldoc.
-
- [ 96 of 103] Compiling Sdist
- File "lib/sdist.ml", lines 28-30, characters 12-21:
- 28 | ............match Filetype.of_filepath fpath with
- 29 | | Filetype.FileML | Filetype.FileMLI -> Filesystem.copy_to_dir fpath dest
- 30 | | _ -> ().
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/sdist.ml", lines 38-40, characters 8-17:
- 38 | ........match Filetype.of_filepath fpath with
- 39 | | Filetype.FileC | Filetype.FileH -> Filesystem.copy_to_dir fpath dest
- 40 | | _ -> ().
- Warning 4 [fragile-match]: this pattern-matching is fragile.
- It will remain exhaustive when constructors are added to type Filetype.t.
-
- File "lib/sdist.ml", line 3, characters 0-11:
- 3 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cmxa
- [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cmxs
- [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cma
- [ 98 of 103] Checking dist/build/lib-obuild
- [ 99 of 103] Compiling Path_generated
- File "dist/build/autogen/path_generated.ml", line 1:
- Warning 70 [missing-mli]: Cannot find interface file.
-
- [100 of 103] Intfing Main
- [101 of 103] Compiling Main
- File "src/main.ml", line 5, characters 0-11:
- 5 | open Helper
- ^^^^^^^^^^^
- Warning 44 [open-shadow-identifier]: this open statement shadows the
- value identifier log (which is later used)
-
- File "src/main.ml", line 103, characters 5-88:
- 103 | |> Cli.option_strings "flag" ~doc:"Enable or disable a project flag (can be repeated)"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?placeholder
-
- File "src/main.ml", line 104, characters 5-76:
- 104 | |> Cli.option_bool "library-bytecode" ~doc:"Compile libraries as bytecode"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 105, characters 5-72:
- 105 | |> Cli.option_bool "library-native" ~doc:"Compile libraries as native"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 106, characters 5-79:
- 106 | |> Cli.option_bool "library-plugin" ~doc:"Compile libraries as native plugin"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 107, characters 5-81:
- 107 | |> Cli.option_bool "executable-bytecode" ~doc:"Compile executables as bytecode"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 108, characters 5-77:
- 108 | |> Cli.option_bool "executable-native" ~doc:"Compile executables as native"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 109, characters 5-72:
- 109 | |> Cli.option_bool "library-profiling" ~doc:"Enable library profiling"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 110, characters 5-72:
- 110 | |> Cli.option_bool "library-debugging" ~doc:"Enable library debugging"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 111, characters 5-78:
- 111 | |> Cli.option_bool "executable-profiling" ~doc:"Enable executable profiling"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 112, characters 5-78:
- 112 | |> Cli.option_bool "executable-debugging" ~doc:"Enable executable debugging"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 113, characters 5-59:
- 113 | |> Cli.option_bool "build-examples" ~doc:"Build examples"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 114, characters 5-59:
- 114 | |> Cli.option_bool "build-benchs" ~doc:"Build benchmarks"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 115, characters 5-53:
- 115 | |> Cli.option_bool "build-tests" ~doc:"Build tests"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default, ?placeholder
-
- File "src/main.ml", line 116, characters 5-70:
- 116 | |> Cli.flag "executable-as-obj" ~doc:"Output executable as obj file"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 117, characters 5-50:
- 117 | |> Cli.flag "annot" ~doc:"Generate .annot files"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 118, characters 5-62:
- 118 | |> Cli.flag "g" ~short:'g' ~doc:"Compilation with debugging"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional argument ?env
-
- File "src/main.ml", line 119, characters 5-52:
- 119 | |> Cli.flag "pg" ~doc:"Compilation with profiling"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", lines 157-158, characters 5-48:
- 157 | .....Cli.option_int "jobs" ~short:'j' ~placeholder:"N" ~default:gconf.parallel_jobs
- 158 | ~doc:"Maximum number of jobs in parallel"
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional argument ?env
-
- File "src/main.ml", line 159, characters 5-67:
- 159 | |> Cli.flag "dot" ~doc:"Dump dependencies dot files during build"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 160, characters 5-77:
- 160 | |> Cli.flag "noocamlmklib" ~doc:"Do not use ocamlmklib when linking C code"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 190, characters 26-84:
- 190 | cmd |> Cli.help_flag |> Cli.flag "snapshot" ~doc:"Build a snapshot of the project"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 221, characters 5-96:
- 221 | |> Cli.option_string "destdir" ~placeholder:"DIR" ~doc:"Override destination where to install"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env, ?default
-
- File "src/main.ml", line 222, characters 5-66:
- 222 | |> Cli.flag "opam" ~doc:"Only create the .install file for opam"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 282, characters 26-68:
- 282 | cmd |> Cli.help_flag |> Cli.flag "output" ~doc:"Show test outputs"
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 48 [eliminated-optional-arguments]: implicit elimination
- of optional arguments ?short, ?env
-
- File "src/main.ml", line 7, characters 0-8:
- 7 | open Cli
- ^^^^^^^^
- Warning 33 [unused-open]: unused open Cli.
-
- File "src/main.ml", line 400, characters 16-19:
- 400 | ~run:(fun ctx ->
- ^^^
- Warning 27 [unused-var-strict]: unused variable ctx.
-
- File "src/main.ml", line 456, characters 16-19:
- 456 | ~run:(fun ctx ->
- ^^^
- Warning 27 [unused-var-strict]: unused variable ctx.
-
- [102 of 103] Linking executable dist/build/obuild/obuild
- [103 of 103] Checking dist/build/obuild
-> compiled obuild.0.2.2
-> removed obuild.0.2.2
-> installed obuild.0.2.2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-25 23:14.51 ---> saved as "59d7f3f8dfd5b14256f02c5ddfb56bdbbcb2ad15b7e5abd9e26bb2de7c8782ca"
Job succeeded
2026-03-25 23:15.05: Job succeeded