Build:
- 1
- 0
2024-04-28 23:05.05: New job: test edwintorok/lintcstubs https://github.com/edwintorok/lintcstubs.git#refs/heads/genrules2maybe (5ad39bc5fcd21a8fecf2734813541f216e0cd0f0) (linux-x86_64:(lint-fmt)) Base: ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480 ocamlformat version: version 0.26.1 (from opam) To reproduce locally: git clone --recursive "https://github.com/edwintorok/lintcstubs.git" -b "genrules2maybe" && cd "lintcstubs" && git reset --hard 5ad39bc5 cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480 USER 1000:1000 RUN cd ~/opam-repository && (git cat-file -e a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 || git fetch origin master) && git reset -q --hard a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 && git log --no-decorate -n1 --oneline && opam update -u RUN opam depext -i dune WORKDIR /src RUN opam depext -i ocamlformat=0.26.1 COPY --chown=1000:1000 . /src/ RUN opam exec -- dune build @fmt --ignore-promoted-rules || (echo "dune build @fmt failed"; exit 2) END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2024-04-28 23:05.05: Using cache hint "edwintorok/lintcstubs-ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480-debian-12-4.08_opam-2.1-ocamlformat-a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2" 2024-04-28 23:05.05: Using OBuilder spec: ((from ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480) (user (uid 1000) (gid 1000)) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 || git fetch origin master) && git reset -q --hard a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 && git log --no-decorate -n1 --oneline && opam update -u")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam depext -i dune")) (workdir /src) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam depext -i ocamlformat=0.26.1")) (copy (src .) (dst /src/)) (run (shell "opam exec -- dune build @fmt --ignore-promoted-rules || (echo \"dune build @fmt failed\"; exit 2)")) ) 2024-04-28 23:05.05: Waiting for resource in pool OCluster 2024-04-28 23:05.05: Waiting for worker… 2024-04-28 23:10.52: Got resource from pool OCluster Building on x86-bm-c4.sw.ocaml.org hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch <name> hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m <name> Initialized empty Git repository in /var/cache/obuilder/ocluster/git/lintcstubs.git-9c1be3799dfbf793f232fc1d21c51702c5b57272/.git/ HEAD is now at 5ad39bc doesnotwor (from ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480) Unable to find image 'ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480' locally docker.io/ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480: Pulling from ocaml/opam 1a743107bfdb: Pulling fs layer 1a743107bfdb: Verifying Checksum 1a743107bfdb: Download complete 1a743107bfdb: Pull complete Digest: sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480 Status: Downloaded newer image for ocaml/opam@sha256:e30e92a245a5f284471a3437bd6b19ebfb9ae067e380416fd178b1f6c2290480 2024-04-28 23:12.49 ---> saved as "ca7a47bb337547622343e1e691b0c92596d0990b9ed28342fd47c7204c2b0a74" /: (user (uid 1000) (gid 1000)) /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 || git fetch origin master) && git reset -q --hard a78d61bd5a5f9e1aa605a46b9dd8ea1fe39046f2 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD 4bb8cb8b65..13fb16b0ed master -> origin/master a78d61bd5a ocaml-version 3.6.7 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from file:///home/opam/opam-repository default (at file:///home/opam/opam-repository): [INFO] opam 2.1 includes many performance improvements over 2.0; please consider upgrading (https://opam.ocaml.org/doc/Install.html) Everything as up-to-date as possible (run with --verbose to show unavailable upgrades). However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages. Nothing to do. # Run eval $(opam env) to update the current shell environment 2024-04-28 23:14.09 ---> saved as "f222038aa0f02f6becd49cb405146e368f1697bc0a30d8a21b233972fa6ef725" /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam depext -i dune")) # Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian # No extra OS packages requirements found. # All required OS packages found. # Now letting opam install the packages The following actions will be performed: - install dune 3.15.0 <><> Gathering sources ><><><><><><><><><><><><><><><><><><><><><><><><><><><><> [dune.3.15.0] found in cache <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> installed dune.3.15.0 Done. # Run eval $(opam env) to update the current shell environment 2024-04-28 23:15.08 ---> saved as "3cd9177244aa60d8f9e524cb6bd567d04a1db09d2fdf8b02a3e9b8ea1db02d0b" /: (workdir /src) /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam depext -i ocamlformat=0.26.1")) # Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian # No extra OS packages requirements found. # All required OS packages found. # Now letting opam install the packages The following actions will be performed: - install sexplib0 v0.14.0 [required by base] - install ocamlbuild 0.14.3 [required by fpath, astring, uuseg] - install menhirCST 20231231 [required by menhir] - install dune-build-info 3.15.0 [required by ocamlformat-lib] - install either 1.0.0 [required by ocamlformat-lib] - install cmdliner 1.2.0 [required by ocamlformat] - install menhirSdk 20231231 [required by ocamlformat-lib] - install ocamlfind 1.9.6 [required by ocp-indent, astring, fpath, uuseg] - install menhirLib 20231231 [required by ocamlformat-lib] - install result 1.5 [required by ocamlformat-lib] - install seq base [required by re] - install csexp 1.5.2 [required by ocamlformat-lib] - install ocaml-version 3.6.7 [required by ocamlformat-lib] - install camlp-streams 5.0.1 [required by ocamlformat-lib] - install fix 20230505 [required by ocamlformat-lib] - install topkg 1.0.7 [required by fpath, astring, uuseg] - install base-bytes base [required by ocp-indent] - install menhir 20231231 [required by ocamlformat-lib] - install re 1.11.0 [required by ocamlformat] - install dune-configurator 3.15.0 [required by base] - install uutf 1.0.3 [required by ocamlformat-lib] - install astring 0.8.5 [required by ocamlformat-lib] - install ocp-indent 1.8.1 [required by ocamlformat-lib] - install base v0.14.3 [required by ocamlformat-lib] - install uucp 15.0.0 [required by uuseg] - install fpath 0.7.3 [required by ocamlformat-lib] - install stdio v0.14.0 [required by ocamlformat-lib] - install uuseg 15.0.0 [required by ocamlformat-lib] - install ocamlformat-lib 0.26.1 [required by ocamlformat] - install ocamlformat 0.26.1 ===== 30 to install ===== <><> Gathering sources ><><><><><><><><><><><><><><><><><><><><><><><><><><><><> [astring.0.8.5] found in cache [base.v0.14.3] found in cache [camlp-streams.5.0.1] found in cache [cmdliner.1.2.0] found in cache [csexp.1.5.2] found in cache [dune-build-info.3.15.0] found in cache [dune-configurator.3.15.0] found in cache [either.1.0.0] found in cache [fix.20230505] found in cache [fpath.0.7.3] found in cache [menhir.20231231] found in cache [menhirCST.20231231] found in cache [menhirLib.20231231] found in cache [menhirSdk.20231231] found in cache [ocaml-version.3.6.7] found in cache [ocamlbuild.0.14.3] found in cache [ocamlfind.1.9.6] found in cache [ocamlformat.0.26.1] found in cache [ocamlformat-lib.0.26.1] found in cache [ocp-indent.1.8.1] found in cache [re.1.11.0] found in cache [result.1.5] found in cache [sexplib0.v0.14.0] found in cache [stdio.v0.14.0] found in cache [topkg.1.0.7] found in cache [uucp.15.0.0] found in cache [uuseg.15.0.0] found in cache [uutf.1.0.3] found in cache <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> installed seq.base -> installed camlp-streams.5.0.1 -> installed csexp.1.5.2 -> installed either.1.0.0 -> installed fix.20230505 -> installed menhirCST.20231231 -> installed menhirLib.20231231 -> installed cmdliner.1.2.0 -> installed menhirSdk.20231231 -> installed ocaml-version.3.6.7 -> installed re.1.11.0 -> installed result.1.5 -> installed sexplib0.v0.14.0 -> installed dune-build-info.3.15.0 -> installed dune-configurator.3.15.0 -> installed ocamlfind.1.9.6 -> installed base-bytes.base -> installed ocamlbuild.0.14.3 -> installed ocp-indent.1.8.1 -> installed base.v0.14.3 -> installed topkg.1.0.7 -> installed stdio.v0.14.0 -> installed uutf.1.0.3 -> installed astring.0.8.5 -> installed fpath.0.7.3 -> installed menhir.20231231 -> installed uucp.15.0.0 -> installed uuseg.15.0.0 -> installed ocamlformat-lib.0.26.1 -> installed ocamlformat.0.26.1 Done. <><> ocp-indent.1.8.1 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/4.08/share/emacs/site-lisp") (require 'ocp-indent) * for Vim, add this line to ~/.vimrc: set rtp^="/home/opam/.opam/4.08/share/ocp-indent/vim" # Run eval $(opam env) to update the current shell environment 2024-04-28 23:16.49 ---> saved as "4b18813457f497e77dbdfbd6d11d8a9a296fb382457da3b96a6a4fea0b6f2556" /src: (copy (src .) (dst /src/)) 2024-04-28 23:16.49 ---> saved as "d470059566fdff04c7b16d5ad60247048856c54d22856cb4a4d822cd8db7378d" /src: (run (shell "opam exec -- dune build @fmt --ignore-promoted-rules || (echo \"dune build @fmt failed\"; exit 2)")) File "rules0/dune", line 3, characters 44-54: 3 | (modules lintcstubs_gen_rules dune_stanzas dune_rules) ^^^^^^^^^^ Error: Module Dune_rules doesn't exist. File "rules/bin/dune", line 1, characters 0-0: diff --git a/_build/default/rules/bin/dune b/_build/default/rules/bin/.formatted/dune index 3fc0f25..ccc5641 100644 --- a/_build/default/rules/bin/dune +++ b/_build/default/rules/bin/.formatted/dune @@ -8,8 +8,7 @@ (public_names lintcstubs_gen_find_dirs lintcstubs_gen_find_targets) (modules lintcstubs_gen_find_targets lintcstubs_gen_find_dirs) (libraries dune-action-plugin) - (package lintcstubs-gen) -) + (package lintcstubs-gen)) (executables (public_names lintcstubs_genrules) File "dune", line 1, characters 0-0: diff --git a/_build/default/dune b/_build/default/.formatted/dune index e2ecf33..abb372c 100644 --- a/_build/default/dune +++ b/_build/default/.formatted/dune @@ -10,8 +10,8 @@ (rule (alias foox) - (action (dynamic-run %{bin:lintcstubs_gen_find_targets} c ml)) -) + (action + (dynamic-run %{bin:lintcstubs_gen_find_targets} c ml))) (install (section File "rules/bin/lintcstubs_gen_find_dirs.ml", line 1, characters 0-0: diff --git a/_build/default/rules/bin/lintcstubs_gen_find_dirs.ml b/_build/default/rules/bin/.formatted/lintcstubs_gen_find_dirs.ml index 1cace33..af1be14 100644 --- a/_build/default/rules/bin/lintcstubs_gen_find_dirs.ml +++ b/_build/default/rules/bin/.formatted/lintcstubs_gen_find_dirs.ml @@ -11,15 +11,13 @@ let rec join = function let rec readdir dir = let read_subdir subdir = let fullpath = Filename.concat dir subdir in - fullpath |> print_endline; + fullpath |> print_endline ; if Sys.file_exists fullpath && Sys.is_directory fullpath then readdir fullpath else return () in - let f paths = - paths |> List.map read_subdir |> join - in + let f paths = paths |> List.map read_subdir |> join in read_directory_with_glob ~path:(Path.of_string dir) ~glob:Dune_glob.V1.universal |> stage ~f File "rules/bin/lintcstubs_gen_find_targets.ml", line 1, characters 0-0: diff --git a/_build/default/rules/bin/lintcstubs_gen_find_targets.ml b/_build/default/rules/bin/.formatted/lintcstubs_gen_find_targets.ml index 1496244..084ad9f 100644 --- a/_build/default/rules/bin/lintcstubs_gen_find_targets.ml +++ b/_build/default/rules/bin/.formatted/lintcstubs_gen_find_targets.ml @@ -14,31 +14,32 @@ let rec find ~glob paths = paths |> PathSet.of_list |> PathSet.map Filename.dirname |> PathSet.elements in List.rev_append dirs paths - |> List.map @@ fun path -> - if Dune_glob.V1.test glob path then - return (PathSet.singleton path) - else if Sys.file_exists path && Sys.is_directory path then begin - prerr_endline path; - stage - (* we want to discover subdirs containing cmt, so we have to ask for everything *) - (read_directory_with_glob ~path:(Path.of_string path) - ~glob:Dune_glob.V1.universal - ) - ~f:(fun files -> - let dirs = files |> List.filter (fun path' -> - let path = Filename.concat path path' in - prerr_endline path; - Sys.file_exists path && Sys.is_directory path - ) in - (* TODO: recurse, FIXME: this crashes dune with an exception, cycle *) - find ~glob dirs |> join -(* files |> List.filter (Dune_glob.V1.test glob) - |> PathSet.of_list |> return*) - ) - end - else - return PathSet.empty - + |> List.map @@ fun path -> + if Dune_glob.V1.test glob path then + return (PathSet.singleton path) + else if Sys.file_exists path && Sys.is_directory path then ( + prerr_endline path ; + stage + (* we want to discover subdirs containing cmt, so we have to ask for everything *) + (read_directory_with_glob ~path:(Path.of_string path) + ~glob:Dune_glob.V1.universal + ) + ~f:(fun files -> + let dirs = + files + |> List.filter (fun path' -> + let path = Filename.concat path path' in + prerr_endline path ; + Sys.file_exists path && Sys.is_directory path + ) + in + (* TODO: recurse, FIXME: this crashes dune with an exception, cycle *) + find ~glob dirs |> join + (* files |> List.filter (Dune_glob.V1.test glob) + |> PathSet.of_list |> return*) + ) + ) else + return PathSet.empty let () = let exts = ref [] and paths = ref [] and output = ref "" in @@ -57,11 +58,13 @@ let () = ignore usage ; let glob = Dune_glob.V1.matching_extensions !exts in let result = - stage (find ~glob !paths |> join) ~f:(fun files -> + stage + (find ~glob !paths |> join) + ~f:(fun files -> let data = Printf.sprintf "(%s)" @@ String.concat " " (PathSet.elements files) in write_file ~path:(Path.of_string !output) ~data - ) + ) in run result dune build @fmt failed "/usr/bin/env" "bash" "-c" "opam exec -- dune build @fmt --ignore-promoted-rules || (echo "dune build @fmt failed"; exit 2)" failed with exit status 2 2024-04-28 23:16.51: Job failed: Failed: Build failed