(for PR #29348)

2026-02-06 22:47.59: New job: test js_of_ocaml-toplevel.6.3.0, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29348/head (0e395cdb6b7b8c4427b82124387c6a5b953d1ac5)
                              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/29348/head" && git reset --hard 0e395cdb
git fetch origin master
git merge --no-edit 340ee6fd1ff10d0fce25e21ba1caca9ed1cfec68
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:5331d61d9c6712a099737272bd06abe2b52b40114cb788df178311cd21a9087f
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 js_of_ocaml-toplevel.6.3.0 6.3.0
RUN opam reinstall js_of_ocaml-toplevel.6.3.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" != 'js_of_ocaml-toplevel.6.3.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 js_of_ocaml-toplevel.6.3.0) || true
RUN opam reinstall --with-test --verbose js_of_ocaml-toplevel.6.3.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" != 'js_of_ocaml-toplevel.6.3.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-02-06 22:47.59: Using cache hint "ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:5331d61d9c6712a099737272bd06abe2b52b40114cb788df178311cd21a9087f-js_of_ocaml-toplevel.6.3.0-0e395cdb6b7b8c4427b82124387c6a5b953d1ac5"
2026-02-06 22:47.59: Using OBuilder spec:
((from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:5331d61d9c6712a099737272bd06abe2b52b40114cb788df178311cd21a9087f)
 (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 js_of_ocaml-toplevel.6.3.0 6.3.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall js_of_ocaml-toplevel.6.3.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\" != 'js_of_ocaml-toplevel.6.3.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 js_of_ocaml-toplevel.6.3.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose js_of_ocaml-toplevel.6.3.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\" != 'js_of_ocaml-toplevel.6.3.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-02-06 22:47.59: Waiting for resource in pool OCluster
2026-02-06 22:52.03: Waiting for worker…
2026-02-06 22:55.08: Got resource from pool OCluster
Building on asteria.caelum.ci.dev
All commits already cached
HEAD is now at 340ee6fd1f Merge pull request #29341 from Halbaroth/release-alt-ergo-free-2.4.3
Updating 340ee6fd1f..0e395cdb6b
Fast-forward
 .../js_of_ocaml-compiler.6.3.0/opam                | 57 +++++++++++++++++++++
 .../js_of_ocaml-lwt/js_of_ocaml-lwt.6.3.0/opam     | 47 ++++++++++++++++++
 .../js_of_ocaml-ppx/js_of_ocaml-ppx.6.3.0/opam     | 45 +++++++++++++++++
 .../js_of_ocaml-ppx_deriving_json.6.3.0/opam       | 45 +++++++++++++++++
 .../js_of_ocaml-toplevel.6.3.0/opam                | 47 ++++++++++++++++++
 .../js_of_ocaml-tyxml/js_of_ocaml-tyxml.6.3.0/opam | 48 ++++++++++++++++++
 packages/js_of_ocaml/js_of_ocaml.6.3.0/opam        | 45 +++++++++++++++++
 .../wasm_of_ocaml-compiler.6.3.0/opam              | 58 ++++++++++++++++++++++
 8 files changed, 392 insertions(+)
 create mode 100644 packages/js_of_ocaml-compiler/js_of_ocaml-compiler.6.3.0/opam
 create mode 100644 packages/js_of_ocaml-lwt/js_of_ocaml-lwt.6.3.0/opam
 create mode 100644 packages/js_of_ocaml-ppx/js_of_ocaml-ppx.6.3.0/opam
 create mode 100644 packages/js_of_ocaml-ppx_deriving_json/js_of_ocaml-ppx_deriving_json.6.3.0/opam
 create mode 100644 packages/js_of_ocaml-toplevel/js_of_ocaml-toplevel.6.3.0/opam
 create mode 100644 packages/js_of_ocaml-tyxml/js_of_ocaml-tyxml.6.3.0/opam
 create mode 100644 packages/js_of_ocaml/js_of_ocaml.6.3.0/opam
 create mode 100644 packages/wasm_of_ocaml-compiler/wasm_of_ocaml-compiler.6.3.0/opam

(from ocaml/opam:opensuse-15.6-ocaml-4.14@sha256:5331d61d9c6712a099737272bd06abe2b52b40114cb788df178311cd21a9087f)
2026-02-06 22:55.17 ---> using "66a304a8684c90440145a2a5c1ef071d0f963404e65d0332638fcf80cf99c190" 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-02-06 22:55.17 ---> using "983806ca46f07bc3db91145931ad307232ac51b20c1e47d44709783ff5f831b6" 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-02-06 22:55.17 ---> using "d63b5b5641172103941848d579b3781afeb0eb2617f8bdda3061919a0de3e055" 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=opensuse-leap os-version=15.6
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 255
# 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-02-06 22:55.17 ---> using "03bd6d7cf9a83b520e144cdf3cfc02c0ad0a46ad799682e160b168631bc24f4f" 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-02-06 22:55.17 ---> using "88fe2f5a1ce9855566af95f700ca2e30e1b8b08af83d11c9d894e42599be0a65" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-02-06 22:55.19 ---> saved as "558eb66a5d07c44fe1b3ab96109af084767451fb1128a7dc976c2bc435866ae1"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-02-06 22:55.39 ---> saved as "a98ba157751e97432ab1f9c899cbe2cf8f79e6378f6216d4f1920934b99c472c"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "zypper" "--non-interactive" "refresh"
- Retrieving repository 'Update repository of openSUSE Backports' metadata [..
- Looking for gpg keys in repository Update repository of openSUSE Backports.
-   gpgkey=http://download.opensuse.org/update/leap/15.6/backports/repodata/repomd.xml.key
- ....
- ....
- ....
- ....
- ....
- ....
- ....
- ...........done]
- Building repository 'Update repository of openSUSE Backports' cache [..
- ..done]
- Retrieving repository 'Update repository with updates from SUSE Linux Enterprise 15' metadata [..
- Looking for gpg keys in repository Update repository with updates from SUSE Linux Enterprise 15.
-   gpgkey=http://download.opensuse.org/update/leap/15.6/sle/repodata/repomd.xml.key
- .....
- ....
- ...
- ....
- ....
- ....
- .........
- ............
- ........
- ........
- .........
- ........
- .........
- ........
- ..........
- ........
- .......
- .......
- ........
- .........
- .........
- .........
- ..........
- .........
- ........
- .........
- ........
- ........
- .........
- .........
- .........
- ..........
- .........
- .........
- ........
- ..........
- ........
- ........
- .........
- ........
- ........
- .........
- .........
- ..........
- .........
- ..........
- .........
- .........
- ..........
- ..............
- ........
- ..done]
- Building repository 'Update repository with updates from SUSE Linux Enterprise 15' cache [..
- ..done]
- 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-02-06 22:56.57 ---> saved as "473b138e764cc710cd123c5c04769209ccda1798676a35c76d4673066bb322fa"

/home/opam: (run (shell "opam pin add -k version -yn js_of_ocaml-toplevel.6.3.0 6.3.0"))
js_of_ocaml-toplevel is now pinned to version 6.3.0
2026-02-06 22:56.58 ---> saved as "93e3dff2991f50107606d4cc8308808e3904d70cfa1fa81f641187c3372ad008"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall js_of_ocaml-toplevel.6.3.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\" != 'js_of_ocaml-toplevel.6.3.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
js_of_ocaml-toplevel.6.3.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 19 packages
  - install cmdliner             2.1.0          [required by js_of_ocaml-compiler]
  - install dune                 3.21.0         [required by js_of_ocaml-toplevel]
  - install gen                  1.1            [required by sedlex]
  - install js_of_ocaml-compiler 6.3.0          [required by js_of_ocaml-toplevel]
  - install js_of_ocaml-toplevel 6.3.0 (pinned)
  - install menhir               20260203       [required by js_of_ocaml-compiler]
  - install menhirCST            20260203       [required by menhir]
  - install menhirGLR            20260203       [required by menhir]
  - install menhirLib            20260203       [required by js_of_ocaml-compiler]
  - install menhirSdk            20260203       [required by js_of_ocaml-compiler]
  - install ocaml-compiler-libs  v0.12.4        [required by js_of_ocaml-compiler]
  - install ocamlfind            1.9.8          [required by js_of_ocaml-toplevel]
  - install ppx_derivers         1.2.1          [required by ppxlib]
  - install ppxlib               0.37.0         [required by js_of_ocaml-toplevel]
  - install sedlex               3.7            [required by js_of_ocaml-compiler]
  - install seq                  base           [required by gen]
  - install sexplib0             v0.17.0        [required by ppxlib]
  - install stdlib-shims         0.3.0          [required by ppxlib]
  - install yojson               3.0.0          [required by js_of_ocaml-compiler]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved cmdliner.2.1.0  (cached)
-> retrieved dune.3.21.0  (cached)
-> retrieved gen.1.1  (cached)
-> installed cmdliner.2.1.0
-> retrieved js_of_ocaml-compiler.6.3.0, js_of_ocaml-toplevel.6.3.0  (cached)
-> retrieved menhir.20260203, menhirCST.20260203, menhirGLR.20260203, menhirLib.20260203, menhirSdk.20260203  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppxlib.0.37.0  (cached)
-> retrieved sedlex.3.7  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved yojson.3.0.0  (cached)
-> installed ocamlfind.1.9.8
-> installed dune.3.21.0
-> installed menhirCST.20260203
-> installed gen.1.1
-> installed menhirGLR.20260203
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed menhirLib.20260203
-> installed menhirSdk.20260203
-> installed sexplib0.v0.17.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed yojson.3.0.0
-> installed menhir.20260203
-> installed ppxlib.0.37.0
-> installed sedlex.3.7
-> installed js_of_ocaml-compiler.6.3.0
-> installed js_of_ocaml-toplevel.6.3.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-02-06 22:58.03 ---> saved as "ef709e34dfe25ec9260443184d2f9c122bd3556c624b7721526279949955d454"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test js_of_ocaml-toplevel.6.3.0) || true"))
The following actions will be performed:
=== downgrade 2 packages
  - downgrade ppxlib               0.37.0 to 0.35.0   [required by js_of_ocaml-toplevel]
  - downgrade sexplib0             v0.17.0 to v0.16.0 [required by ppxlib]
=== recompile 4 packages
  - recompile js_of_ocaml-compiler 6.3.0              [uses ppxlib]
  - recompile js_of_ocaml-toplevel 6.3.0 (pinned)
  - recompile ocamlfind            1.9.8              [uses graphics]
  - recompile sedlex               3.7                [uses ppxlib]
=== install 25 packages
  - install   base                 v0.16.4            [required by ppx_expect]
  - install   conf-libX11          1                  [required by graphics]
  - install   conf-libXft          1                  [required by graphics]
  - install   conf-pkg-config      4                  [required by graphics]
  - install   csexp                1.5.2              [required by dune-configurator]
  - install   dune-configurator    3.21.0             [required by graphics]
  - install   graphics             5.2.0              [required by js_of_ocaml-toplevel]
  - install   jane-street-headers  v0.16.0            [required by time_now]
  - install   jst-config           v0.16.0            [required by time_now]
  - install   num                  1.6                [required by js_of_ocaml-toplevel]
  - install   ppx_assert           v0.16.0            [required by jst-config]
  - install   ppx_base             v0.16.0            [required by time_now]
  - install   ppx_cold             v0.16.0            [required by ppx_base]
  - install   ppx_compare          v0.16.0            [required by ppx_base]
  - install   ppx_enumerate        v0.16.0            [required by ppx_base]
  - install   ppx_expect           v0.16.2            [required by js_of_ocaml-toplevel]
  - install   ppx_globalize        v0.16.0            [required by ppx_base]
  - install   ppx_hash             v0.16.0            [required by ppx_base]
  - install   ppx_here             v0.16.0            [required by ppx_expect]
  - install   ppx_inline_test      v0.16.1            [required by ppx_expect]
  - install   ppx_optcomp          v0.16.0            [required by time_now]
  - install   ppx_sexp_conv        v0.16.0            [required by ppx_base]
  - install   re                   1.14.0             [required by js_of_ocaml-toplevel]
  - install   stdio                v0.16.0            [required by ppx_expect]
  - install   time_now             v0.16.0            [required by ppx_inline_test]

The following system packages will first need to be installed:
    libXft-devel

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run zypper to install them (may need root/sudo access)
  2. Display the recommended zypper command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1

+ /usr/bin/sudo "zypper" "--non-interactive" "install" "libXft-devel"
- Loading repository data...
- Reading installed packages...
- Resolving package dependencies...
- 
- The following 15 NEW packages are going to be installed:
-   fontconfig fontconfig-devel freetype2-devel libXft-devel libXft2 libXrender-devel libXrender1 libbrotli-devel libbrotlienc1 libbz2-devel libexpat-devel libfontconfig1 libfreetype6 libpng16-16 renderproto-devel
- 
- 15 new packages to install.
- 
- Package download size:     2.2 MiB
- 
- Package install size change:
-               |       8.2 MiB  required by packages that will be installed
-      8.2 MiB  |  -      0 B    released by packages that will be removed
- 
- Backend:  classic_rpmtrans
- Continue? [y/n/v/...? shows all options] (y): y
- Retrieving: libXrender1-0.9.10-1.30.x86_64 (Main Repository) (1/15),  24.1 KiB    
- Retrieving: libXrender1-0.9.10-1.30.x86_64.rpm [.....
- ....
- ....
- ....
- ....
- ....
- .done]
- Retrieving: libbz2-devel-1.0.8-150400.1.122.x86_64 (Main Repository) (2/15),  18.7 KiB    
- Retrieving: libbz2-devel-1.0.8-150400.1.122.x86_64.rpm [.done]
- Retrieving: renderproto-devel-0.11.1-1.22.x86_64 (Main Repository) (3/15),  22.9 KiB    
- Retrieving: renderproto-devel-0.11.1-1.22.x86_64.rpm [.done]
- Retrieving: libXrender-devel-0.9.10-1.30.x86_64 (Main Repository) (4/15),  17.1 KiB    
- Retrieving: libXrender-devel-0.9.10-1.30.x86_64.rpm [.done]
- Retrieving: libbrotlienc1-1.0.7-150200.3.5.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (5/15), 203.4 KiB    
- Retrieving: libbrotlienc1-1.0.7-150200.3.5.1.x86_64.rpm [....
- ....
- ....
- ....
- .....not found]
- Retrieving: libbrotlienc1-1.0.7-150200.3.5.1.x86_64.rpm [.not found]
- Retrieving: libbrotlienc1-1.0.7-150200.3.5.1.x86_64.rpm [.
- done]
- Retrieving: libexpat-devel-2.7.1-150400.3.31.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (6/15),  65.6 KiB    
- Retrieving: libexpat-devel-2.7.1-150400.3.31.1.x86_64.rpm [.not found]
- Retrieving: libexpat-devel-2.7.1-150400.3.31.1.x86_64.rpm [.not found]
- Retrieving: libexpat-devel-2.7.1-150400.3.31.1.x86_64.rpm [..done (61.1 KiB/s)]
- Retrieving: libpng16-16-1.6.40-150600.3.9.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (7/15), 139.8 KiB    
- Retrieving: libpng16-16-1.6.40-150600.3.9.1.x86_64.rpm [.not found]
- Retrieving: libpng16-16-1.6.40-150600.3.9.1.x86_64.rpm [.not found]
- Retrieving: libpng16-16-1.6.40-150600.3.9.1.x86_64.rpm [.done]
- Retrieving: libbrotli-devel-1.0.7-150200.3.5.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (8/15),  32.2 KiB    
- Retrieving: libbrotli-devel-1.0.7-150200.3.5.1.x86_64.rpm [.not found]
- Retrieving: libbrotli-devel-1.0.7-150200.3.5.1.x86_64.rpm [.not found]
- Retrieving: libbrotli-devel-1.0.7-150200.3.5.1.x86_64.rpm [.done]
- Retrieving: libfreetype6-2.10.4-150000.4.25.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (9/15), 454.8 KiB    
- Retrieving: libfreetype6-2.10.4-150000.4.25.1.x86_64.rpm [.not found]
- Retrieving: libfreetype6-2.10.4-150000.4.25.1.x86_64.rpm [.not found]
- Retrieving: libfreetype6-2.10.4-150000.4.25.1.x86_64.rpm [.done]
- Retrieving: freetype2-devel-2.10.4-150000.4.25.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15) (10/15), 942.6 KiB    
- Retrieving: freetype2-devel-2.10.4-150000.4.25.1.x86_64.rpm [.not found]
- Retrieving: freetype2-devel-2.10.4-150000.4.25.1.x86_64.rpm [.not found]
- Retrieving: freetype2-devel-2.10.4-150000.4.25.1.x86_64.rpm [.
- ..done (134.2 KiB/s)]
- Retrieving: fontconfig-2.14.2-150600.1.3.x86_64 (Main Repository) (11/15),  81.4 KiB    
- Retrieving: fontconfig-2.14.2-150600.1.3.x86_64.rpm [.done]
- Retrieving: libfontconfig1-2.14.2-150600.1.3.x86_64 (Main Repository) (12/15), 126.4 KiB    
- Retrieving: libfontconfig1-2.14.2-150600.1.3.x86_64.rpm [.done]
- Retrieving: libXft2-2.3.2-1.33.x86_64 (Main Repository) (13/15),  43.5 KiB    
- Retrieving: libXft2-2.3.2-1.33.x86_64.rpm [.done]
- Retrieving: fontconfig-devel-2.14.2-150600.1.3.x86_64 (Main Repository) (14/15),  23.0 KiB    
- Retrieving: fontconfig-devel-2.14.2-150600.1.3.x86_64.rpm [.done]
- Retrieving: libXft-devel-2.3.2-1.33.x86_64 (Main Repository) (15/15),  19.2 KiB    
- Retrieving: libXft-devel-2.3.2-1.33.x86_64.rpm [.done]
- 
- Checking for file conflicts: [..done]
- ( 1/15) Installing: libXrender1-0.9.10-1.30.x86_64 [..done]
- ( 2/15) Installing: libbz2-devel-1.0.8-150400.1.122.x86_64 [..done]
- ( 3/15) Installing: renderproto-devel-0.11.1-1.22.x86_64 [..done]
- ( 4/15) Installing: libXrender-devel-0.9.10-1.30.x86_64 [..done]
- ( 5/15) Installing: libbrotlienc1-1.0.7-150200.3.5.1.x86_64 [..done]
- ( 6/15) Installing: libexpat-devel-2.7.1-150400.3.31.1.x86_64 [..done]
- ( 7/15) Installing: libpng16-16-1.6.40-150600.3.9.1.x86_64 [..done]
- ( 8/15) Installing: libbrotli-devel-1.0.7-150200.3.5.1.x86_64 [..done]
- ( 9/15) Installing: libfreetype6-2.10.4-150000.4.25.1.x86_64 [..done]
- (10/15) Installing: freetype2-devel-2.10.4-150000.4.25.1.x86_64 [..done]
- (11/15) Installing: fontconfig-2.14.2-150600.1.3.x86_64 [..done]
- (12/15) Installing: libfontconfig1-2.14.2-150600.1.3.x86_64 [..done]
- (13/15) Installing: libXft2-2.3.2-1.33.x86_64 [..done]
- (14/15) Installing: fontconfig-devel-2.14.2-150600.1.3.x86_64 [.
- .done]
- (15/15) Installing: libXft-devel-2.3.2-1.33.x86_64 [..done]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved base.v0.16.4  (https://opam.ocaml.org/cache)
-> installed conf-pkg-config.4
-> retrieved csexp.1.5.2  (https://opam.ocaml.org/cache)
-> installed conf-libX11.1
-> installed conf-libXft.1
-> installed csexp.1.5.2
-> retrieved dune-configurator.3.21.0  (https://opam.ocaml.org/cache)
-> retrieved graphics.5.2.0  (https://opam.ocaml.org/cache)
-> retrieved jane-street-headers.v0.16.0  (https://opam.ocaml.org/cache)
-> installed jane-street-headers.v0.16.0
-> retrieved js_of_ocaml-compiler.6.3.0, js_of_ocaml-toplevel.6.3.0  (https://github.com/ocsigen/js_of_ocaml/releases/download/6.3.0/js_of_ocaml-6.3.0.tbz)
-> installed dune-configurator.3.21.0
-> retrieved jst-config.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved num.1.6  (https://opam.ocaml.org/cache)
-> retrieved ocamlfind.1.9.8  (https://opam.ocaml.org/cache)
-> retrieved ppx_assert.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_base.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_cold.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_compare.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_enumerate.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_expect.v0.16.2  (https://opam.ocaml.org/cache)
-> installed graphics.5.2.0
-> retrieved ppx_globalize.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_hash.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_here.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_inline_test.v0.16.1  (https://opam.ocaml.org/cache)
-> retrieved ppx_optcomp.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppx_sexp_conv.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved ppxlib.0.35.0  (https://opam.ocaml.org/cache)
-> retrieved re.1.14.0  (https://opam.ocaml.org/cache)
-> installed num.1.6
-> retrieved sedlex.3.7  (https://opam.ocaml.org/cache)
-> retrieved sexplib0.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved stdio.v0.16.0  (https://opam.ocaml.org/cache)
-> retrieved time_now.v0.16.0  (https://opam.ocaml.org/cache)
-> removed   js_of_ocaml-toplevel.6.3.0
-> removed   js_of_ocaml-compiler.6.3.0
-> removed   ocamlfind.1.9.8
-> removed   sedlex.3.7
-> removed   ppxlib.0.37.0
-> removed   sexplib0.v0.17.0
-> installed re.1.14.0
-> installed sexplib0.v0.16.0
-> installed ocamlfind.1.9.8
-> installed base.v0.16.4
-> installed stdio.v0.16.0
-> installed ppxlib.0.35.0
-> installed ppx_globalize.v0.16.0
-> installed ppx_optcomp.v0.16.0
-> installed ppx_cold.v0.16.0
-> installed ppx_here.v0.16.0
-> installed ppx_enumerate.v0.16.0
-> installed ppx_compare.v0.16.0
-> installed ppx_sexp_conv.v0.16.0
-> installed sedlex.3.7
-> installed ppx_hash.v0.16.0
-> installed ppx_assert.v0.16.0
-> installed ppx_base.v0.16.0
-> installed jst-config.v0.16.0
-> installed time_now.v0.16.0
-> installed ppx_inline_test.v0.16.1
-> installed ppx_expect.v0.16.2
-> installed js_of_ocaml-compiler.6.3.0
-> installed js_of_ocaml-toplevel.6.3.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-02-06 22:59.18 ---> saved as "9358a7fc4e2e40792a2a0b146eb087eb560ed37a923146437a14414f489bcd19"

/home/opam: (run (shell  "opam reinstall --with-test --verbose js_of_ocaml-toplevel.6.3.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\" != 'js_of_ocaml-toplevel.6.3.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 js_of_ocaml-toplevel 6.3.0 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/4: [js_of_ocaml-toplevel: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "js_of_ocaml-toplevel" "-j" "255" "@install" (CWD=/home/opam/.opam/4.14/.opam-switch/build/js_of_ocaml-toplevel.6.3.0)
- (cd tools/version && /home/opam/.opam/4.14/bin/ocaml -I +compiler-libs /home/opam/.opam/4.14/.opam-switch/build/js_of_ocaml-toplevel.6.3.0/_build/.dune/default/tools/version/dune.ml)
- fatal: not a git repository (or any parent up to mount point /)
- Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
-> compiled  js_of_ocaml-toplevel.6.3.0
-> removed   js_of_ocaml-toplevel.6.3.0
-> installed js_of_ocaml-toplevel.6.3.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-02-06 22:59.26 ---> saved as "a2f930b8950838adbcf39fff245a3e25568c6f883ff85c5a7ee6c3e9a47d59d8"
Job succeeded
2026-02-06 22:59.37: Job succeeded