Build:
  1. 0
2026-01-26 18:33.23: New job: test react-rules-of-hooks-ppx.1.0.0, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29289/head (91166d13852dd20312eb7e6990239b7a5a9a1009)
                              on opensuse-15.6-ocaml-4.14/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/29289/head" && git reset --hard 91166d13
git fetch origin master
git merge --no-edit f9f7db30fd6e805d48b947df138d463a5433f4d1
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7
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 react-rules-of-hooks-ppx.1.0.0 1.0.0
RUN opam reinstall react-rules-of-hooks-ppx.1.0.0; \
    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 "\"opensuse-15.6\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'react-rules-of-hooks-ppx.1.0.0' && 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 react-rules-of-hooks-ppx.1.0.0) || true
RUN opam reinstall --with-test --verbose react-rules-of-hooks-ppx.1.0.0; \
    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 "\"opensuse-15.6\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'react-rules-of-hooks-ppx.1.0.0' && 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-01-26 18:33.23: Using cache hint "ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7-react-rules-of-hooks-ppx.1.0.0-91166d13852dd20312eb7e6990239b7a5a9a1009"
2026-01-26 18:33.23: Using OBuilder spec:
((from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7)
 (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 react-rules-of-hooks-ppx.1.0.0 1.0.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall react-rules-of-hooks-ppx.1.0.0;\
             \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 \"\\\"opensuse-15.6\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'react-rules-of-hooks-ppx.1.0.0' && 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 react-rules-of-hooks-ppx.1.0.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose react-rules-of-hooks-ppx.1.0.0;\
             \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 \"\\\"opensuse-15.6\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'react-rules-of-hooks-ppx.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-01-26 18:33.23: Waiting for resource in pool OCluster
2026-01-26 18:33.24: Waiting for worker…
2026-01-26 18:33.25: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
HEAD is now at f9f7db30fd Merge pull request #29275 from EruEri/shakuhachi-0.2.0
Updating f9f7db30fd..91166d1385
Fast-forward
 .../react-rules-of-hooks-ppx.1.0.0/opam            | 49 ++++++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 packages/react-rules-of-hooks-ppx/react-rules-of-hooks-ppx.1.0.0/opam

(from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7)
Unable to find image 'ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7' locally
docker.io/ocaml/opam@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7: Pulling from ocaml/opam
625c79e3ae60: Pulling fs layer
ca6439633d2f: Pulling fs layer
3e61b5a3343d: Pulling fs layer
572d4bcd324d: Pulling fs layer
3994ff15a7b0: Pulling fs layer
1d676486d940: Pulling fs layer
1805f8e47dca: Pulling fs layer
3582d9a1382c: Pulling fs layer
ac0b974faa58: Pulling fs layer
67d656ab5910: Pulling fs layer
839cdf272e6c: Pulling fs layer
8689175d709f: Pulling fs layer
e40b27547779: Pulling fs layer
88cb140bc0e8: Pulling fs layer
3994ff15a7b0: Waiting
ab3a4a69e4f4: Pulling fs layer
1d676486d940: Waiting
e4fd7a94954f: Pulling fs layer
1805f8e47dca: Waiting
92f036b4edea: Pulling fs layer
396a718de0b7: Pulling fs layer
3582d9a1382c: Waiting
67d656ab5910: Waiting
839cdf272e6c: Waiting
ac0b974faa58: Waiting
8689175d709f: Waiting
88cb140bc0e8: Waiting
4f4fb700ef54: Pulling fs layer
e40b27547779: Waiting
572d4bcd324d: Waiting
ab3a4a69e4f4: Waiting
0420ccc16eca: Pulling fs layer
92f036b4edea: Waiting
396a718de0b7: Waiting
4f4fb700ef54: Waiting
cc2c69f374ef: Pulling fs layer
0420ccc16eca: Waiting
22899c47761b: Pulling fs layer
cc2c69f374ef: Waiting
8faa077d3a79: Pulling fs layer
22899c47761b: Waiting
b972aa889009: Pulling fs layer
8faa077d3a79: Waiting
c6b297e7480d: Pulling fs layer
b972aa889009: Waiting
3bcaed3c075b: Pulling fs layer
c6b297e7480d: Waiting
e04276e867bb: Pulling fs layer
3bcaed3c075b: Waiting
e04276e867bb: Waiting
1abd543659d3: Pulling fs layer
cdfeed99d27a: Pulling fs layer
1abd543659d3: Waiting
cdfeed99d27a: Waiting
31a3fe0454c7: Pulling fs layer
27bd77ac4143: Pulling fs layer
83ee7dcdeec7: Pulling fs layer
31a3fe0454c7: Waiting
1619bb7b4db1: Pulling fs layer
27bd77ac4143: Waiting
22f6e36aa5fa: Pulling fs layer
83ee7dcdeec7: Waiting
1619bb7b4db1: Waiting
f64ad179410d: Pulling fs layer
22f6e36aa5fa: Waiting
8794b54faffb: Pulling fs layer
f64ad179410d: Waiting
bb981eaa95e1: Pulling fs layer
8794b54faffb: Waiting
a0128ffaf5eb: Pulling fs layer
bb981eaa95e1: Waiting
5a412c9f106b: Pulling fs layer
a0128ffaf5eb: Waiting
80db8971c211: Pulling fs layer
5a412c9f106b: Waiting
6a2ee1c75511: Pulling fs layer
80db8971c211: Waiting
6a2ee1c75511: Waiting
ca6439633d2f: Verifying Checksum
ca6439633d2f: Download complete
625c79e3ae60: Verifying Checksum
625c79e3ae60: Download complete
3994ff15a7b0: Download complete
1d676486d940: Verifying Checksum
1d676486d940: Download complete
1805f8e47dca: Download complete
3582d9a1382c: Verifying Checksum
3582d9a1382c: Download complete
ac0b974faa58: Verifying Checksum
ac0b974faa58: Download complete
625c79e3ae60: Pull complete
ca6439633d2f: Pull complete
67d656ab5910: Verifying Checksum
67d656ab5910: Download complete
839cdf272e6c: Verifying Checksum
839cdf272e6c: Download complete
8689175d709f: Download complete
e40b27547779: Verifying Checksum
e40b27547779: Download complete
88cb140bc0e8: Verifying Checksum
88cb140bc0e8: Download complete
ab3a4a69e4f4: Verifying Checksum
ab3a4a69e4f4: Download complete
e4fd7a94954f: Verifying Checksum
e4fd7a94954f: Download complete
92f036b4edea: Verifying Checksum
92f036b4edea: Download complete
396a718de0b7: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
572d4bcd324d: Verifying Checksum
572d4bcd324d: Download complete
0420ccc16eca: Verifying Checksum
0420ccc16eca: Download complete
cc2c69f374ef: Verifying Checksum
cc2c69f374ef: Download complete
22899c47761b: Verifying Checksum
22899c47761b: Download complete
8faa077d3a79: Verifying Checksum
8faa077d3a79: Download complete
b972aa889009: Download complete
c6b297e7480d: Verifying Checksum
c6b297e7480d: Download complete
3bcaed3c075b: Verifying Checksum
3bcaed3c075b: Download complete
e04276e867bb: Verifying Checksum
e04276e867bb: Download complete
1abd543659d3: Verifying Checksum
1abd543659d3: Download complete
cdfeed99d27a: Verifying Checksum
cdfeed99d27a: Download complete
31a3fe0454c7: Verifying Checksum
31a3fe0454c7: Download complete
27bd77ac4143: Verifying Checksum
27bd77ac4143: Download complete
1619bb7b4db1: Verifying Checksum
1619bb7b4db1: Download complete
83ee7dcdeec7: Verifying Checksum
83ee7dcdeec7: Download complete
f64ad179410d: Download complete
3e61b5a3343d: Verifying Checksum
3e61b5a3343d: Download complete
8794b54faffb: Verifying Checksum
8794b54faffb: Download complete
bb981eaa95e1: Download complete
5a412c9f106b: Verifying Checksum
5a412c9f106b: Download complete
80db8971c211: Verifying Checksum
80db8971c211: Download complete
22f6e36aa5fa: Verifying Checksum
22f6e36aa5fa: Download complete
6a2ee1c75511: Verifying Checksum
6a2ee1c75511: Download complete
3e61b5a3343d: Pull complete
a0128ffaf5eb: Verifying Checksum
a0128ffaf5eb: Download complete
572d4bcd324d: Pull complete
3994ff15a7b0: Pull complete
1d676486d940: Pull complete
1805f8e47dca: Pull complete
3582d9a1382c: Pull complete
ac0b974faa58: Pull complete
67d656ab5910: Pull complete
839cdf272e6c: Pull complete
8689175d709f: Pull complete
e40b27547779: Pull complete
88cb140bc0e8: Pull complete
ab3a4a69e4f4: Pull complete
e4fd7a94954f: Pull complete
92f036b4edea: Pull complete
396a718de0b7: Pull complete
4f4fb700ef54: Pull complete
0420ccc16eca: Pull complete
cc2c69f374ef: Pull complete
22899c47761b: Pull complete
8faa077d3a79: Pull complete
b972aa889009: Pull complete
c6b297e7480d: Pull complete
3bcaed3c075b: Pull complete
e04276e867bb: Pull complete
1abd543659d3: Pull complete
cdfeed99d27a: Pull complete
31a3fe0454c7: Pull complete
27bd77ac4143: Pull complete
83ee7dcdeec7: Pull complete
1619bb7b4db1: Pull complete
22f6e36aa5fa: Pull complete
f64ad179410d: Pull complete
8794b54faffb: Pull complete
bb981eaa95e1: Pull complete
a0128ffaf5eb: Pull complete
5a412c9f106b: Pull complete
80db8971c211: Pull complete
6a2ee1c75511: Pull complete
Digest: sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7
Status: Downloaded newer image for ocaml/opam@sha256:06017813d28497e89c59cf3d506db67c96f556fc1ec8d5031826d12721c9a0f7
2026-01-26 18:37.00 ---> saved as "52e816f0aa85450cfc16d266041d2887ffe3489dbdcd0251f1fe96de79154cb7"

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-01-26 18:37.00 ---> saved as "ea12b8f3de3e491cee26c8dcf22a1f701482d97ed32bb2797aa36fe1a0356a36"

/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.

[NOTE] The 'jobs' option was reset, its value was 255 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
           opam option jobs=255 --global
Continue? [Y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-01-26 18:37.25 ---> saved as "5bd3034759878b6010cacc7fbfee831cf05706e3f9338ff9426541e200b1b5fb"

/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=opensuse-leap os-version=15.6
# 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       4.14
# invariant            ["ocaml-base-compiler" {= "4.14.2"}]
# compiler-packages    ocaml-base-compiler.4.14.2, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/4.14/lib/ocaml/stublibs:/home/opam/.opam/4.14/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       4.14.2
2026-01-26 18:37.26 ---> saved as "f6e0a1cdeef8430219e17816414210a7e5fb5b33064268544227f98b408a53db"

/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-01-26 18:37.34 ---> saved as "efa4fe269bb0e44e21badd66aa3672fe8e0dbf0d8584803d6b8cfb245245a8da"

/home/opam: (copy (src .) (dst opam-repository/))
2026-01-26 18:37.41 ---> saved as "a8851ae59deee22b1d3d223a00fe339954a320c00825f95a0644498dddee4fe7"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-01-26 18:37.58 ---> saved as "a538f5aaf7627fb0e940fe8314e2b94e53399b4dbd819bd6ddb131c2d2e183f5"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "zypper" "--non-interactive" "refresh"
- Repository 'Update repository of openSUSE Backports' is up to date.
- 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]
- Repository 'Main Update Repository' is up to date.
- 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.
2026-01-26 18:38.27 ---> saved as "1a40f104999ad92f48253df540860ba4d17b239b7dab928366855f818e0d3a16"

/home/opam: (run (shell "opam pin add -k version -yn react-rules-of-hooks-ppx.1.0.0 1.0.0"))
react-rules-of-hooks-ppx is now pinned to version 1.0.0
2026-01-26 18:38.28 ---> saved as "6a5b82a231177bccf902b21fe9db85103ec1d81d890d4bfbfef5a77957d7da11"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall react-rules-of-hooks-ppx.1.0.0;\
                        \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 \"\\\"opensuse-15.6\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'react-rules-of-hooks-ppx.1.0.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
react-rules-of-hooks-ppx.1.0.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 7 packages
  - install dune                     3.21.0         [required by react-rules-of-hooks-ppx]
  - install ocaml-compiler-libs      v0.12.4        [required by ppxlib]
  - install ppx_derivers             1.2.1          [required by ppxlib]
  - install ppxlib                   0.37.0         [required by react-rules-of-hooks-ppx]
  - install react-rules-of-hooks-ppx 1.0.0 (pinned)
  - install sexplib0                 v0.17.0        [required by ppxlib]
  - install stdlib-shims             0.3.0          [required by ppxlib]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.21.0  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppxlib.0.37.0  (cached)
-> retrieved react-rules-of-hooks-ppx.1.0.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> installed dune.3.21.0
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed sexplib0.v0.17.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed ppxlib.0.37.0
-> installed react-rules-of-hooks-ppx.1.0.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-01-26 18:39.10 ---> saved as "2ed3a58c4d38aca60dfb2eefd8be30ad5d185ce2696839a6de76633bb44c566c"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test react-rules-of-hooks-ppx.1.0.0) || true"))
The following actions will be performed:
=== recompile 1 package
  - recompile react-rules-of-hooks-ppx 1.0.0 (pinned)
=== install 11 packages
  - install   cmdliner                 2.1.0          [required by reason]
  - install   cppo                     1.8.0          [required by reason]
  - install   dune-build-info          3.21.0         [required by reason]
  - install   fix                      20250919       [required by reason]
  - install   menhir                   20250912       [required by reason]
  - install   menhirCST                20250912       [required by menhir]
  - install   menhirLib                20250912       [required by menhir]
  - install   menhirSdk                20250912       [required by menhir]
  - install   merlin-extend            0.6.2          [required by reason]
  - install   ocamlfind                1.9.8          [required by reason]
  - install   reason                   3.17.3         [required by react-rules-of-hooks-ppx]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved cmdliner.2.1.0  (https://opam.ocaml.org/cache)
-> retrieved cppo.1.8.0  (https://opam.ocaml.org/cache)
-> installed cppo.1.8.0
-> retrieved dune-build-info.3.21.0  (https://opam.ocaml.org/cache)
-> retrieved fix.20250919  (https://opam.ocaml.org/cache)
-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912  (https://opam.ocaml.org/cache)
-> retrieved merlin-extend.0.6.2  (https://opam.ocaml.org/cache)
-> retrieved ocamlfind.1.9.8  (https://opam.ocaml.org/cache)
-> installed cmdliner.2.1.0
-> installed dune-build-info.3.21.0
-> installed fix.20250919
-> installed menhirCST.20250912
-> installed menhirLib.20250912
-> installed menhirSdk.20250912
-> installed merlin-extend.0.6.2
-> retrieved reason.3.17.3  (https://opam.ocaml.org/cache)
-> removed   react-rules-of-hooks-ppx.1.0.0
-> installed ocamlfind.1.9.8
-> installed menhir.20250912
-> installed reason.3.17.3
-> installed react-rules-of-hooks-ppx.1.0.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-01-26 18:39.46 ---> saved as "8a9960fe9184fdc49328926cbb247dd562ee129f08fad6df51f93abe1f729201"

/home/opam: (run (shell  "opam reinstall --with-test --verbose react-rules-of-hooks-ppx.1.0.0;\
                        \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 \"\\\"opensuse-15.6\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'react-rules-of-hooks-ppx.1.0.0' && 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 react-rules-of-hooks-ppx 1.0.0 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/4: [react-rules-of-hooks-ppx: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "react-rules-of-hooks-ppx" "-j" "71" "@install" "@runtest" (CWD=/home/opam/.opam/4.14/.opam-switch/build/react-rules-of-hooks-ppx.1.0.0)
-> compiled  react-rules-of-hooks-ppx.1.0.0
-> removed   react-rules-of-hooks-ppx.1.0.0
-> installed react-rules-of-hooks-ppx.1.0.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-01-26 18:39.50 ---> saved as "e8c1128216826af9dc5a723f6ced4788b802141176f9920dfc19bbc4e41f519c"
Job succeeded
2026-01-26 18:40.00: Job succeeded