2025-07-26 07:51.58: New job: test ahrefs/ocannl https://github.com/ahrefs/ocannl.git#refs/heads/master (85eaff98853cd8dd8f4f6be71649c038e52bd682) (linux-x86_64:(lint-opam)) Base: ocaml/opam:debian-12-ocaml-5.0@sha256:6d203d213ec8fdb5074b28177992b3d4f49dfd6296c882c614c25b680c981885 Opam files lint To reproduce locally: git clone --recursive "https://github.com/ahrefs/ocannl.git" -b "master" && cd "ocannl" && git reset --hard 85eaff98 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:debian-12-ocaml-5.0@sha256:6d203d213ec8fdb5074b28177992b3d4f49dfd6296c882c614c25b680c981885 # debian-12-5.0_opam-2.3 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version WORKDIR /src RUN sudo chown opam /src RUN cd ~/opam-repository && (git cat-file -e b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 neural_nets_lib.opam arrayjit.opam ./ RUN opam pin add -yn neural_nets_lib.dev './' && \ opam pin add -yn arrayjit.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="astring.0.8.5 base-bigarray.base base-domains.base base-nnp.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.19.1 dyn.3.19.1 fmt.0.10.0 fpath.0.7.3 jsonm.1.0.2 logs.0.9.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 num.1.6 ocaml.5.0.0 ocaml-base-compiler.5.0.0 ocaml-config.3 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocamlgraph.2.2.0 opam-core.2.4.0 opam-dune-lint.0.6 opam-file-format.2.2.0 opam-format.2.4.0 opam-repository.2.4.0 opam-state.2.4.0 ordering.3.19.1 parsexp.v0.16.0 patch.3.0.0 pp.2.0.0 re.1.13.2 rresult.0.7.0 seq.base sexplib.v0.16.0 sexplib0.v0.16.0 sha.1.15.4 spdx_licenses.1.4.0 stdlib-shims.0.3.0 stdune.3.19.1 swhid_core.0.1 topkg.1.1.0 uutf.1.0.4" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.2 --depext-only -y deps_for_opam_dune_lint.opam $DEPS RUN opam install $DEPS ENV CI="true" ENV OCAMLCI="true" WORKDIR /src COPY --chown=1000:1000 . /src/ RUN opam lint RUN opam exec -- opam-dune-lint END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2025-07-26 07:51.58: Using cache hint "ahrefs/ocannl-ocaml/opam:debian-12-ocaml-5.0@sha256:6d203d213ec8fdb5074b28177992b3d4f49dfd6296c882c614c25b680c981885-debian-12-5.0_opam-2.3-0e5c8680d67d113d776f1ea164824ac1" 2025-07-26 07:51.58: Using OBuilder spec: ((from ocaml/opam:debian-12-ocaml-5.0@sha256:6d203d213ec8fdb5074b28177992b3d4f49dfd6296c882c614c25b680c981885) (comment debian-12-5.0_opam-2.3) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (workdir /src) (run (shell "sudo chown opam /src")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./)) (run (network host) (shell "opam pin add -yn neural_nets_lib.dev './' && \ \nopam pin add -yn arrayjit.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "astring.0.8.5 base-bigarray.base base-domains.base base-nnp.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.19.1 dyn.3.19.1 fmt.0.10.0 fpath.0.7.3 jsonm.1.0.2 logs.0.9.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 num.1.6 ocaml.5.0.0 ocaml-base-compiler.5.0.0 ocaml-config.3 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocamlgraph.2.2.0 opam-core.2.4.0 opam-dune-lint.0.6 opam-file-format.2.2.0 opam-format.2.4.0 opam-repository.2.4.0 opam-state.2.4.0 ordering.3.19.1 parsexp.v0.16.0 patch.3.0.0 pp.2.0.0 re.1.13.2 rresult.0.7.0 seq.base sexplib.v0.16.0 sexplib0.v0.16.0 sha.1.15.4 spdx_licenses.1.4.0 stdlib-shims.0.3.0 stdune.3.19.1 swhid_core.0.1 topkg.1.1.0 uutf.1.0.4") (env CI true) (env OCAMLCI true) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.2 --depext-only -y deps_for_opam_dune_lint.opam $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (env CI true) (env OCAMLCI true) (workdir /src) (copy (src .) (dst /src/)) (run (shell "opam lint")) (run (shell "opam exec -- opam-dune-lint")) ) 2025-07-26 07:51.58: Waiting for resource in pool OCluster 2025-07-26 07:51.58: Waiting for worker… 2025-07-26 07:51.58: Got resource from pool OCluster Building on clete.caelum.ci.dev HEAD is now at 4dcf8de7 Rename llv -> llsc HEAD is now at 85eaff98 First pass on adding vector-returning operations, by Claude Opus Prompt: Separate Uint4x32_to_prec_uniform from the type unop in arrayjit/lib/ops.ml into a separate type vec_unop . In the Low_level module type t , add a constructor Set_from_vec { tn : Tnode.t; idcs : Indexing.axis_index array; length: int; vec_unop : Ops.vec_unop; arg : scalar_t; mutable debug : string } . This constructor is an analogue of the Set constructor but for vector rather than scalar values. The length field is the length of the vector, and backends should set the consecutive cells of the buffer corresponding to tn , starting with position idcs . At present, given that we only have one vector operation, for simplicity we do not introduce a separate type vector_t , that's why the fields of a hypothetical vector_t Unop are inlined into Set_from_vec . In the Assignments module type t , add a constructor Set_vec_unop { op : Ops.vec_unop ; lhs : Tn.t ; rhs : buffer; projections : Indexing.projections Lazy.t } . Add handling for the new variants following the intended meaning. Add support for the separated out vector assignment and vector operation in the syntax extension file ppx_cd.ml . Reach out for clarifications, I'm here to help. Once we get the backend-generic code into a good shape, we will add support in the backend-specific code. We will start by converting the uint4x32_to_*_uniform functions in builtins.c , builtins_small.cu and builtins.msl to return vectors of results, for each function we will introduce a vector type holding the specific number of results that these functions should compute to make efficient use of the random bits from the argument uint4x32 value. Then, we will enhance code generation to support the vectorized assignment Set_from_vec by unrolling it into the `length` number of individual assignments. (from ocaml/opam:debian-12-ocaml-5.0@sha256:6d203d213ec8fdb5074b28177992b3d4f49dfd6296c882c614c25b680c981885) 2025-07-26 07:51.59 ---> using "eb554071cf3bb1097d63dadc1e86b12da0699d57db7ad9748f3092ab4cdcacf5" from cache /: (comment debian-12-5.0_opam-2.3) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam")) 2025-07-26 07:51.59 ---> using "c5d8ad914d7d70841f2a0f917b2afd9de2aec2e86a81448c35033f28a17efd94" from cache /src: (run (shell "opam init --reinit -ni")) Configuring from /home/opam/.opamrc and then from built-in defaults. Checking for available remotes: rsync and local, git. - you won't be able to use mercurial repositories unless you install the hg command on your system. - you won't be able to use darcs repositories unless you install the darcs command on your system. This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted. You may want to back it up before going further. Continue? [y/n] y Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2025-07-26 07:51.59 ---> using "5db851d7bd0be5b6bca27e688c80d53704bdf124f34c08c4f151da9547ec89d9" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 5.15.0-134-generic The OCaml toplevel, version 5.0.0 2.2.1 2025-07-26 07:51.59 ---> using "946d18c677aa0a0b6c6d32c1bea0bfd9e1a200eca0b553946d45e98a9dc67c66" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2025-07-26 07:51.59 ---> using "2886449f3a6603070fc7f96610cb916899434acc9355afe5ec308df59360059a" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e b8021439f8c57ba6435bc2263f6596671f4f4466 || git fetch origin master) && git reset -q --hard b8021439f8c57ba6435bc2263f6596671f4f4466 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD 0094db1438..b8021439f8 master -> origin/master b8021439f8 Merge pull request #28261 from kit-ty-kate/deploy-fix-25819 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository The following actions will be performed: === recompile 4 packages - recompile base-domains base [uses ocaml] - recompile base-nnp base [uses base-domains] - recompile ocaml 5.0.0 [upstream or system changes] - recompile opam-depext 1.2.3 [uses ocaml] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved opam-depext.1.2.3 (cached) -> removed base-nnp.base -> removed base-domains.base -> removed opam-depext.1.2.3 -> removed ocaml.5.0.0 -> installed ocaml.5.0.0 -> installed base-domains.base -> installed base-nnp.base -> installed opam-depext.1.2.3 Done. <><> opam-depext.1.2.3 installed successfully <><><><><><><><><><><><><><><><><> => opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead # Run eval $(opam env) to update the current shell environment 2025-07-26 07:51.59 ---> using "77df2aa2075216f118ae1b917d7cfc4801d9a217d2676e7b74cb60a2c275467f" from cache /src: (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./)) 2025-07-26 07:51.59 ---> using "d3d97a6e317398da43c6a04c9076bb2a42b905933afba0a93ea7f581bb3743be" from cache /src: (run (network host) (shell "opam pin add -yn neural_nets_lib.dev './' && \ \nopam pin add -yn arrayjit.dev './'")) [neural_nets_lib.dev] synchronised (file:///src) neural_nets_lib is now pinned to file:///src (version dev) [arrayjit.dev] synchronised (file:///src) arrayjit is now pinned to file:///src (version dev) 2025-07-26 07:51.59 ---> using "1e90e0087f6edcadabc4b395581fef41ada860d0d7d084b4f56871f6b467fe93" from cache /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2025-07-26 07:51.59 ---> using "3ef6a54af60ced0d8908d5f657a4297c4f3c8e933050c16c6a08cb403570a5ca" from cache /src: (env DEPS "astring.0.8.5 base-bigarray.base base-domains.base base-nnp.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 csexp.1.5.2 dune.3.19.1 dyn.3.19.1 fmt.0.10.0 fpath.0.7.3 jsonm.1.0.2 logs.0.9.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 num.1.6 ocaml.5.0.0 ocaml-base-compiler.5.0.0 ocaml-config.3 ocaml-options-vanilla.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocamlgraph.2.2.0 opam-core.2.4.0 opam-dune-lint.0.6 opam-file-format.2.2.0 opam-format.2.4.0 opam-repository.2.4.0 opam-state.2.4.0 ordering.3.19.1 parsexp.v0.16.0 patch.3.0.0 pp.2.0.0 re.1.13.2 rresult.0.7.0 seq.base sexplib.v0.16.0 sexplib0.v0.16.0 sha.1.15.4 spdx_licenses.1.4.0 stdlib-shims.0.3.0 stdune.3.19.1 swhid_core.0.1 topkg.1.1.0 uutf.1.0.4") /src: (env CI true) /src: (env OCAMLCI true) /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.2 --depext-only -y deps_for_opam_dune_lint.opam $DEPS")) + /usr/bin/sudo "apt-get" "update" - Hit:1 http://deb.debian.org/debian bookworm InRelease - Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB] - Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB] - Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [272 kB] - Fetched 375 kB in 1s (473 kB/s) - Reading package lists... - [ERROR] No package named deps_for_opam_dune_lint found. "/usr/bin/env" "bash" "-c" "opam update --depexts && opam install --cli=2.2 --depext-only -y deps_for_opam_dune_lint.opam $DEPS" failed with exit status 5 2025-07-26 07:52.02: Job failed: Failed: Build failed