(not at the head of any monitored branch or PR)
2026-04-13 15:16.28: New job: test html_of_jsx.0.0.9, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29716/head (94b6f2129677425e807f31dac2f6b81eb1cb6783)
                              on debian-13-ocaml-5.4/arm64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29716/head" && git reset --hard 94b6f212
git fetch origin master
git merge --no-edit ba4685aeec7b28fde6af30c7b83004704c68c86a
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d
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 html_of_jsx.0.0.9 0.0.9
RUN opam reinstall html_of_jsx.0.0.9; \
    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" != 'html_of_jsx.0.0.9' && 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 html_of_jsx.0.0.9) || true
RUN opam reinstall --with-test --verbose html_of_jsx.0.0.9; \
    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" != 'html_of_jsx.0.0.9' && 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-04-13 15:16.28: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d-html_of_jsx.0.0.9-94b6f2129677425e807f31dac2f6b81eb1cb6783"
2026-04-13 15:16.28: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d)
 (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 html_of_jsx.0.0.9 0.0.9"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall html_of_jsx.0.0.9;\
             \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\" != 'html_of_jsx.0.0.9' && 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 html_of_jsx.0.0.9) || true"))
 (run (shell  "opam reinstall --with-test --verbose html_of_jsx.0.0.9;\
             \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\" != 'html_of_jsx.0.0.9' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-04-13 15:16.28: Waiting for resource in pool OCluster
2026-04-13 15:16.28: Waiting for worker…
2026-04-13 15:29.12: Got resource from pool OCluster
Building on ocaml-2.osuosl.ci.dev
All commits already cached
Updating files:  42% (7979/18704)
Updating files:  43% (8043/18704)
Updating files:  44% (8230/18704)
Updating files:  45% (8417/18704)
Updating files:  46% (8604/18704)
Updating files:  47% (8791/18704)
Updating files:  48% (8978/18704)
Updating files:  49% (9165/18704)
Updating files:  50% (9352/18704)
Updating files:  51% (9540/18704)
Updating files:  52% (9727/18704)
Updating files:  53% (9914/18704)
Updating files:  54% (10101/18704)
Updating files:  55% (10288/18704)
Updating files:  56% (10475/18704)
Updating files:  57% (10662/18704)
Updating files:  58% (10849/18704)
Updating files:  59% (11036/18704)
Updating files:  60% (11223/18704)
Updating files:  61% (11410/18704)
Updating files:  62% (11597/18704)
Updating files:  63% (11784/18704)
Updating files:  64% (11971/18704)
Updating files:  65% (12158/18704)
Updating files:  66% (12345/18704)
Updating files:  67% (12532/18704)
Updating files:  68% (12719/18704)
Updating files:  69% (12906/18704)
Updating files:  70% (13093/18704)
Updating files:  71% (13280/18704)
Updating files:  72% (13467/18704)
Updating files:  73% (13654/18704)
Updating files:  74% (13841/18704)
Updating files:  75% (14028/18704)
Updating files:  76% (14216/18704)
Updating files:  77% (14403/18704)
Updating files:  78% (14590/18704)
Updating files:  79% (14777/18704)
Updating files:  80% (14964/18704)
Updating files:  81% (15151/18704)
Updating files:  82% (15338/18704)
Updating files:  83% (15525/18704)
Updating files:  84% (15712/18704)
Updating files:  85% (15899/18704)
Updating files:  86% (16086/18704)
Updating files:  86% (16167/18704)
Updating files:  87% (16273/18704)
Updating files:  88% (16460/18704)
Updating files:  89% (16647/18704)
Updating files:  90% (16834/18704)
Updating files:  91% (17021/18704)
Updating files:  92% (17208/18704)
Updating files:  93% (17395/18704)
Updating files:  94% (17582/18704)
Updating files:  95% (17769/18704)
Updating files:  96% (17956/18704)
Updating files:  97% (18143/18704)
Updating files:  98% (18330/18704)
Updating files:  99% (18517/18704)
Updating files: 100% (18704/18704)
Updating files: 100% (18704/18704), done.
HEAD is now at ba4685aeec Merge pull request #29653 from yakobowski/camlidl
Updating ba4685aeec..94b6f21296
Fast-forward
 packages/html_of_jsx/html_of_jsx.0.0.9/opam | 54 +++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 packages/html_of_jsx/html_of_jsx.0.0.9/opam

(from ocaml/opam:debian-13-ocaml-5.4@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d)
Unable to find image 'ocaml/opam:debian-13-ocaml-5.4@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d' locally
docker.io/ocaml/opam@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d: Pulling from ocaml/opam
deab8db42772: Already exists
0e3be483d5aa: Already exists
068cb436b3a9: Already exists
876321ecdfda: Already exists
273508c8cc8f: Already exists
0127577a5c6f: Already exists
3a9ccd696d58: Already exists
07e9e46cfc73: Already exists
90969cd95f06: Already exists
73bba924289b: Already exists
95b440bef6e0: Already exists
4d557eea525f: Already exists
66433cb92d59: Already exists
c84c96b2584b: Already exists
4c2683e0739d: Already exists
5d1e421ae43b: Already exists
30b477dede6e: Already exists
30b477dede6e: Already exists
ae38f53b91ad: Already exists
2891aff3bb84: Already exists
557b57ba5e84: Already exists
26aa66f0772d: Already exists
4f4fb700ef54: Already exists
052acd1bf2d5: Already exists
574caf9a2301: Already exists
84389297cf64: Already exists
6bbca6fcf80a: Already exists
a3d41e3ab742: Already exists
8d1ee78e3cbb: Already exists
7e42808b1a06: Already exists
145716f86fbb: Already exists
96f1a7065127: Already exists
bf34a5cce066: Already exists
b208125ec0c1: Already exists
eb9f72cac455: Already exists
b5c4657cdf92: Already exists
8600938f91bb: Already exists
2ddefa03d6ee: Already exists
62e3edde3b1e: Already exists
767c1c88ccf6: Already exists
0d5131c49294: Already exists
64299ee39a69: Pulling fs layer
1bae5a62186f: Pulling fs layer
9a7367ab0ba2: Pulling fs layer
c496441e7e94: Pulling fs layer
befaf80d7b55: Pulling fs layer
1f9158db7215: Pulling fs layer
202a4796ee81: Pulling fs layer
c496441e7e94: Waiting
befaf80d7b55: Waiting
1f9158db7215: Waiting
202a4796ee81: Waiting
64299ee39a69: Verifying Checksum
64299ee39a69: Download complete
9a7367ab0ba2: Verifying Checksum
9a7367ab0ba2: Download complete
1bae5a62186f: Verifying Checksum
1bae5a62186f: Download complete
64299ee39a69: Pull complete
1bae5a62186f: Pull complete
befaf80d7b55: Download complete
1f9158db7215: Verifying Checksum
1f9158db7215: Download complete
9a7367ab0ba2: Pull complete
202a4796ee81: Download complete
c496441e7e94: Verifying Checksum
c496441e7e94: Download complete
c496441e7e94: Pull complete
befaf80d7b55: Pull complete
1f9158db7215: Pull complete
202a4796ee81: Pull complete
Digest: sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d
Status: Downloaded newer image for ocaml/opam@sha256:cd754733d54c23d0c20108704f750371ec8bc7f044b96466b35966046581e99d
2026-04-13 15:29.15 ---> using "ac80a83f5a3ada3fd26cb5c59ed57e2109d8473ad3b785b94cf0e5b8414da0ee" 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-04-13 15:29.15 ---> using "46e285b6f457d8bc3bb2f479ed24bfa1bc57a7b01455dcb34f821a56bc2cb029" 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.

Continue? [Y/n] y
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 79 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=79 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-04-13 15:29.15 ---> using "75c795bd47ad17c0aa2a5c7d708e2440e2d82ac4901e653ae41176be4da80997" 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=arm64 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                 15
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {= "5.4.1"}]
# compiler-packages    ocaml-base-compiler.5.4.1, ocaml-compiler.5.4.1, 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.1
2026-04-13 15:29.15 ---> using "f69133acfdd5d3149b1995e6f2a23db61941389797c5f59aa8f8920db69f4886" 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-04-13 15:29.15 ---> using "e4c044943138a17058465343a5e27ed455bf8121429d80efa58bc6874de2d68f" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-04-13 15:29.24 ---> saved as "f6571670bed037e57d4fe0521cfc940705ad0ea38055d7675146179430a46624"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-13 15:30.03 ---> saved as "a6a29cc7555147aef674c054b2ff3c2c2035c181e347a5c18a87b434ffb64abf"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian trixie InRelease
- 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-security trixie-security/main arm64 Packages [122 kB]
- Fetched 213 kB in 0s (626 kB/s)
- Reading package lists...
- 
2026-04-13 15:30.08 ---> saved as "a2d26c173f4a05dfed4b70c3ddd1ac708ebfaa5d26ba9f016a923da196d9f2ce"

/home/opam: (run (shell "opam pin add -k version -yn html_of_jsx.0.0.9 0.0.9"))
html_of_jsx is now pinned to version 0.0.9
2026-04-13 15:30.09 ---> saved as "9aede4443c29144220c5239ec3b2773c00af3b36c5398bc11c8e342dc6a73fe0"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall html_of_jsx.0.0.9;\
                        \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\" != 'html_of_jsx.0.0.9' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
html_of_jsx.0.0.9 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 8 packages
  - install dune                3.22.1         [required by html_of_jsx]
  - install html_of_jsx         0.0.9 (pinned)
  - install ocaml-compiler-libs v0.17.0        [required by ppxlib]
  - install ppx_derivers        1.2.1          [required by ppxlib]
  - install ppxlib              0.38.0         [required by html_of_jsx]
  - install pretty_expressive   0.5            [required by html_of_jsx]
  - install sexplib0            v0.17.0        [required by ppxlib]
  - install stdlib-shims        0.3.0          [required by ppxlib]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.22.1  (cached)
-> retrieved html_of_jsx.0.0.9  (https://github.com/davesnx/html_of_jsx/releases/download/0.0.9/html_of_jsx-0.0.9.tbz)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppxlib.0.38.0  (cached)
-> retrieved pretty_expressive.0.5  (https://opam.ocaml.org/cache)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> installed dune.3.22.1
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed pretty_expressive.0.5
-> installed sexplib0.v0.17.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed ppxlib.0.38.0
-> installed html_of_jsx.0.0.9
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-13 15:31.37 ---> saved as "710b7cfd6dcc6b132bbe6faf0f62d07d591a319ff45a5400df31c85fe0947018"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test html_of_jsx.0.0.9) || true"))
The following actions will be performed:
=== recompile 1 package
  - recompile html_of_jsx             0.0.9 (pinned)
=== install 38 packages
  - install   alcotest                1.9.1          [required by html_of_jsx]
  - install   astring                 0.8.5          [required by alcotest]
  - install   base                    v0.17.3        [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   benchmark               1.7            [required by html_of_jsx]
  - install   camlp-streams           5.0.1          [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   cmdliner                2.1.0          [required by ocamlformat-mlx, alcotest, ocamlformat, reason]
  - install   cppo                    1.8.0          [required by reason]
  - install   csexp                   1.5.2          [required by ocamlformat, ocamlformat-mlx]
  - install   dune-build-info         3.22.1         [required by reason]
  - install   dune-configurator       3.22.1         [required by base]
  - install   either                  1.0.0          [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   fix                     20250919       [required by reason]
  - install   fmt                     0.11.0         [required by alcotest]
  - install   fpath                   0.7.3          [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   menhir                  20260209       [required by reason]
  - install   menhirCST               20260209       [required by menhir]
  - install   menhirGLR               20260209       [required by menhir]
  - install   menhirLib               20260209       [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   menhirSdk               20260209       [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   merlin-extend           0.6.2          [required by reason]
  - install   mlx                     0.11           [required by html_of_jsx]
  - install   ocaml-syntax-shims      1.0.0          [required by alcotest]
  - install   ocaml-version           4.0.4          [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   ocaml_intrinsics_kernel v0.17.1        [required by base]
  - install   ocamlbuild              0.16.1         [required by fmt, astring, uutf]
  - install   ocamlfind               1.9.8          [required by reason]
  - install   ocamlformat             0.29.0         [required by html_of_jsx]
  - install   ocamlformat-lib         0.29.0         [required by ocamlformat]
  - install   ocamlformat-mlx         0.28.1.2       [required by html_of_jsx]
  - install   ocamlformat-mlx-lib     0.28.1.2       [required by ocamlformat-mlx]
  - install   ocp-indent              1.9.0          [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   re                      1.14.0         [required by ocamlformat, alcotest, ocamlformat-mlx]
  - install   reason                  3.17.3         [required by html_of_jsx]
  - install   stdio                   v0.17.0        [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   topkg                   1.1.1          [required by fmt, astring, uutf]
  - install   uucp                    17.0.0         [required by uuseg]
  - install   uuseg                   17.0.0         [required by ocamlformat-lib, ocamlformat-mlx-lib]
  - install   uutf                    1.0.4          [required by alcotest]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved astring.0.8.5  (https://opam.ocaml.org/cache)
-> retrieved base.v0.17.3  (https://opam.ocaml.org/cache)
-> retrieved benchmark.1.7  (https://opam.ocaml.org/cache)
-> retrieved camlp-streams.5.0.1  (https://opam.ocaml.org/cache)
-> installed benchmark.1.7
-> installed camlp-streams.5.0.1
-> retrieved cmdliner.2.1.0  (https://opam.ocaml.org/cache)
-> retrieved cppo.1.8.0  (https://opam.ocaml.org/cache)
-> retrieved csexp.1.5.2  (https://opam.ocaml.org/cache)
-> installed csexp.1.5.2
-> installed cppo.1.8.0
-> retrieved dune-build-info.3.22.1, dune-configurator.3.22.1  (https://opam.ocaml.org/cache)
-> retrieved either.1.0.0  (https://opam.ocaml.org/cache)
-> installed cmdliner.2.1.0
-> installed dune-build-info.3.22.1
-> installed dune-configurator.3.22.1
-> installed either.1.0.0
-> retrieved fix.20250919  (https://opam.ocaml.org/cache)
-> retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
-> installed fix.20250919
-> retrieved fpath.0.7.3  (https://opam.ocaml.org/cache)
-> retrieved menhir.20260209, menhirCST.20260209, menhirGLR.20260209, menhirLib.20260209, menhirSdk.20260209  (https://opam.ocaml.org/cache)
-> installed menhirCST.20260209
-> retrieved merlin-extend.0.6.2  (https://opam.ocaml.org/cache)
-> installed menhirGLR.20260209
-> installed menhirLib.20260209
-> installed merlin-extend.0.6.2
-> installed menhirSdk.20260209
-> retrieved mlx.0.11  (https://opam.ocaml.org/cache)
-> retrieved ocaml-syntax-shims.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved ocaml-version.4.0.4  (https://opam.ocaml.org/cache)
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (https://opam.ocaml.org/cache)
-> installed ocaml-version.4.0.4
-> installed ocaml-syntax-shims.1.0.0
-> retrieved ocamlbuild.0.16.1  (https://opam.ocaml.org/cache)
-> installed ocaml_intrinsics_kernel.v0.17.1
-> retrieved ocamlfind.1.9.8  (https://opam.ocaml.org/cache)
-> retrieved ocamlformat.0.29.0, ocamlformat-lib.0.29.0  (https://opam.ocaml.org/cache)
-> retrieved ocamlformat-mlx.0.28.1.2, ocamlformat-mlx-lib.0.28.1.2  (https://opam.ocaml.org/cache)
-> installed ocamlfind.1.9.8
-> installed mlx.0.11
-> retrieved ocp-indent.1.9.0  (https://opam.ocaml.org/cache)
-> installed menhir.20260209
-> retrieved re.1.14.0  (https://opam.ocaml.org/cache)
-> installed ocamlbuild.0.16.1
-> retrieved reason.3.17.3  (https://opam.ocaml.org/cache)
-> installed base.v0.17.3
-> installed ocp-indent.1.9.0
-> removed   html_of_jsx.0.0.9
-> installed re.1.14.0
-> retrieved stdio.v0.17.0  (https://opam.ocaml.org/cache)
-> installed stdio.v0.17.0
-> retrieved topkg.1.1.1  (https://opam.ocaml.org/cache)
-> retrieved uucp.17.0.0  (https://opam.ocaml.org/cache)
-> retrieved uuseg.17.0.0  (https://opam.ocaml.org/cache)
-> retrieved uutf.1.0.4  (https://opam.ocaml.org/cache)
-> installed topkg.1.1.1
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed fpath.0.7.3
-> installed alcotest.1.9.1
-> installed reason.3.17.3
-> installed uucp.17.0.0
-> installed uuseg.17.0.0
-> installed ocamlformat-lib.0.29.0
-> installed ocamlformat-mlx-lib.0.28.1.2
-> installed ocamlformat.0.29.0
-> installed ocamlformat-mlx.0.28.1.2
-> installed html_of_jsx.0.0.9
Done.

<><> ocp-indent.1.9.0 installed successfully ><><><><><><><><><><><><><><><><><>
=> This package requires additional configuration for use in editors. Install package 'user-setup', or manually:

   * for Emacs, add these lines to ~/.emacs:
     (add-to-list 'load-path "/home/opam/.opam/5.4/share/emacs/site-lisp")
     (require 'ocp-indent)

   * for Vim, add this line to ~/.vimrc:
     set rtp^="/home/opam/.opam/5.4/share/ocp-indent/vim"
# To update the current shell environment, run: eval $(opam env)
2026-04-13 15:34.35 ---> saved as "a709643d81c136976ae0ee08153995c5173415b9a4f62d81c6cf0f6b2af2e81a"

/home/opam: (run (shell  "opam reinstall --with-test --verbose html_of_jsx.0.0.9;\
                        \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\" != 'html_of_jsx.0.0.9' && 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 html_of_jsx 0.0.9 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/4: [html_of_jsx: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "html_of_jsx" "-j" "15" "@install" "@runtest" (CWD=/home/opam/.opam/5.4/.opam-switch/build/html_of_jsx.0.0.9)
- (cd _build/default/test && ./main.exe)
- Testing `html_of_jsx'.
- This run has ID `PO5ZE8CZ'.
- 
-   [OK]          render                   0   single_empty_tag.
-   [OK]          render                   1   empty_string_attribute.
-   [OK]          render                   2   string_attributes.
-   [OK]          render                   3   bool_attributes.
-   [OK]          render                   4   truthy_attributes.
-   [OK]          render                   5   self_closing_tag.
-   [OK]          render                   6   dom_element_innerHtml.
-   [OK]          render                   7   children.
-   [OK]          render                   8   no_ignore_unkwnown_attributes_on...
-   [OK]          render                   9   ignore_nulls.
-   [OK]          render                  10   inline_styles.
-   [OK]          render                  11   list.
-   [OK]          render                  12   list_and_texts.
-   [OK]          render                  13   encode_attributes.
-   [OK]          render                  14   event.
-   [OK]          render                  15   className.
-   [OK]          render                  16   className_2.
-   [OK]          render                  17   render_svg.
-   [OK]          render                  18   render_svg.
-   [OK]          render                  19   jsx_unsafe.
-   [OK]          render                  20   stringf_text.
-   [OK]          Reason with JSX          0   tag.
-   [OK]          Reason with JSX          1   empty_attribute.
-   [OK]          Reason with JSX          2   bool_attribute.
-   [OK]          Reason with JSX          3   bool_attributes.
-   [OK]          Reason with JSX          4   innerhtml.
-   [OK]          Reason with JSX          5   int_attribute.
-   [OK]          Reason with JSX          6   svg.
-   [OK]          Reason with JSX          7   style_attribute.
-   [OK]          Reason with JSX          8   link_as_attribute.
-   [OK]          Reason with JSX          9   int_opt_attribute_some.
-   [OK]          Reason with JSX         10   int_opt_attribute_none.
-   [OK]          Reason with JSX         11   string_opt_attribute_some.
-   [OK]          Reason with JSX         12   string_opt_attribute_none.
-   [OK]          Reason with JSX         13   bool_opt_attribute_some.
-   [OK]          Reason with JSX         14   bool_opt_attribute_none.
-   [OK]          Reason with JSX         15   style_opt_attribute_some.
-   [OK]          Reason with JSX         16   style_opt_attribute_none.
-   [OK]          Reason with JSX         17   lists_as_children.
-   [OK]          Reason with JSX         18   children_uppercase.
-   [OK]          Reason with JSX         19   children_lowercase.
-   [OK]          Reason with JSX         20   onclick_inline_string.
-   [OK]          Reason with JSX         21   children_one_element.
-   [OK]          Reason with JSX         22   children_multiple_elements.
-   [OK]          Reason with JSX         23   create_element_variadic.
-   [OK]          Reason with JSX         24   aria_props.
-   [OK]          Reason with JSX         25   lowercase_component.
-   [OK]          Htmx                     0   simple_hx_boost.
-   [OK]          Htmx                     1   sse_connect.
-   [OK]          Htmx                     2   sse_swap.
-   [OK]          Htmx                     3   sse_close.
-   [OK]          Htmx                     4   sse_complete.
-   [OK]          Htmx                     5   ws_connect.
-   [OK]          Htmx                     6   ws_send.
-   [OK]          Htmx                     7   ws_complete.
-   [OK]          Htmx                     8   classes.
-   [OK]          Htmx                     9   preload.
-   [OK]          Htmx                    10   path_deps.
-   [OK]          Htmx                    11   loading_states_basic.
-   [OK]          Htmx                    12   loading_states_class.
-   [OK]          Htmx                    13   loading_states_disable.
-   [OK]          Htmx                    14   loading_states_delay.
-   [OK]          Htmx                    15   loading_states_target.
-   [OK]          Htmx                    16   hx_swap_polyvariant.
-   [OK]          Htmx                    17   hx_swap_polyvariant_dynamic.
-   [OK]          Htmx                    18   hx_swap_polyvariant_opt_some.
-   [OK]          Htmx                    19   hx_swap_polyvariant_opt_none.
-   [OK]          Test with mlx            0   tag.
-   [OK]          Test with mlx            1   empty_attribute.
-   [OK]          Test with mlx            2   bool_attribute.
-   [OK]          Test with mlx            3   bool_attributes.
-   [OK]          Test with mlx            4   innerhtml.
-   [OK]          Test with mlx            5   int_attribute.
-   [OK]          Test with mlx            6   svg.
-   [OK]          Test with mlx            7   style_attribute.
-   [OK]          Test with mlx            8   link_as_attribute.
-   [OK]          Test with mlx            9   int_opt_attribute_some.
-   [OK]          Test with mlx           10   int_opt_attribute_none.
-   [OK]          Test with mlx           11   string_opt_attribute_some.
-   [OK]          Test with mlx           12   string_opt_attribute_none.
-   [OK]          Test with mlx           13   bool_opt_attribute_some.
-   [OK]          Test with mlx           14   bool_opt_attribute_none.
-   [OK]          Test with mlx           15   style_opt_attribute_some.
-   [OK]          Test with mlx           16   style_opt_attribute_none.
-   [OK]          Test with mlx           17   children_uppercase.
-   [OK]          Test with mlx           18   children_lowercase.
-   [OK]          Test with mlx           19   onclick_inline_string.
-   [OK]          Test with mlx           20   children_one_element.
-   [OK]          Test with mlx           21   create_element_variadic.
-   [OK]          Test with mlx           22   aria_props.
-   [OK]          Test with mlx           23   lowercase_component.
-   [OK]          Test with mlx           24   target_polyvariant.
-   [OK]          Test with mlx           25   target_polyvariant_dynamic.
-   [OK]          Test with mlx           26   target_polyvariant_opt_some.
-   [OK]          Test with mlx           27   target_polyvariant_opt_none.
-   [OK]          Test with mlx           28   data_attributes.
-   [OK]          pp                       0   null_element.
-   [OK]          pp                       1   string_element.
-   [OK]          pp                       2   int_element.
-   [OK]          pp                       3   float_element.
-   [OK]          pp                       4   unsafe_element.
-   [OK]          pp                       5   self_closing_no_attrs.
-   [OK]          pp                       6   self_closing_with_attrs.
-   [OK]          pp                       7   empty_tag.
-   [OK]          pp                       8   empty_tag_with_attrs.
-   [OK]          pp                       9   tag_with_text.
-   [OK]          pp                      10   tag_with_int_child.
-   [OK]          pp                      11   tag_with_float_child.
-   [OK]          pp                      12   bool_true_attr.
-   [OK]          pp                      13   bool_false_attr.
-   [OK]          pp                      14   int_attr.
-   [OK]          pp                      15   float_attr.
-   [OK]          pp                      16   mixed_attr_types.
-   [OK]          pp                      17   multiple_text_children.
-   [OK]          pp                      18   mixed_inline_children.
-   [OK]          pp                      19   single_node_child.
-   [OK]          pp                      20   multiple_node_children.
-   [OK]          pp                      21   mixed_text_and_nodes.
-   [OK]          pp                      22   fragment_children.
-   [OK]          pp                      23   array_children.
-   [OK]          pp                      24   null_children_filtered.
-   [OK]          pp                      25   empty_list_child.
-   [OK]          pp                      26   nested_fragments.
-   [OK]          pp                      27   two_levels_break.
-   [OK]          pp                      28   three_levels_break.
-   [OK]          pp                      29   four_levels_deep.
-   [OK]          pp                      30   siblings_at_same_depth.
-   [OK]          pp                      31   single_child_chain_fits.
-   [OK]          pp                      32   single_child_chain_breaks.
-   [OK]          pp                      33   doctype_html.
-   [OK]          pp                      34   full_page.
-   [OK]          pp                      35   self_closing_tags_in_context.
-   [OK]          pp                      36   wide_width_single_line.
-   [OK]          pp                      37   narrow_width_forces_break.
-   [OK]          pp                      38   very_narrow_deep_break.
-   [OK]          pp                      39   width_boundary_fits.
-   [OK]          pp                      40   width_boundary_breaks.
-   [OK]          pp                      41   default_width_is_80.
-   [OK]          pp                      42   long_text_stays_inline.
-   [OK]          pp                      43   long_attribute_value.
-   [OK]          pp                      44   many_attributes.
-   [OK]          pp                      45   many_children.
-   [OK]          pp                      46   long_tag_with_many_attrs_and_chi...
-   [OK]          pp                      47   wide_table_row.
-   [OK]          pp                      48   escaping_text_content.
-   [OK]          pp                      49   escaping_attribute_values.
-   [OK]          pp                      50   escaping_ampersand_sequences.
-   [OK]          pp                      51   unsafe_with_newlines.
-   [OK]          pp                      52   unsafe_multiline_style.
-   [OK]          pp                      53   deeply_nested_single_child.
-   [OK]          pp                      54   deeply_nested_single_child_breaks.
-   [OK]          pp                      55   only_null_children.
-   [OK]          pp                      56   pp_matches_render_semantics.
-   [OK]          pp                      57   fragment_at_top_level.
-   [OK]          pp                      58   empty_fragment.
-   [OK]          pp                      59   empty_array.
-   [OK]          pp                      60   node_with_unsafe_child.
-   [OK]          pp                      61   complex_real_world.
-   [OK]          pp                      62   svg_rendering.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/html_of_jsx.0.0.9/_build/default/test/_build/_tests/html_of_jsx'.
- Test Successful in 0.020s. 159 tests run.
-> compiled  html_of_jsx.0.0.9
-> removed   html_of_jsx.0.0.9
-> installed html_of_jsx.0.0.9
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-13 15:34.59 ---> saved as "0cd17e65e5544ea5d08ffc56c020a57190cc68a4d9cd287ce8c47d7abc9ff8be"
Job succeeded
2026-04-13 15:35.18: Job succeeded