Liking cljdoc? Tell your friends :D

com.blockether.vis.internal.foundation.environment.monorepo

Monorepo / multi-package detection.

Walks the tree once (bounded), counting per-language manifest files at any depth below the root. >=2 manifests of the same kind in distinct subdirectories signals a multi-package workspace; we report the kind, the count, and a best-guess shape label (e.g. "polylith", "workspace", "submodules").

Reflection-clean. Honors the same skip-directory list as the language scanner. A caller can give the file list of a git work tree as :files; the scan then reads that list instead of a walk.

Monorepo / multi-package detection.

Walks the tree once (bounded), counting per-language manifest
files at any depth below the root. >=2 manifests of the same
kind in distinct subdirectories signals a multi-package
workspace; we report the kind, the count, and a best-guess
shape label (e.g. "polylith", "workspace", "submodules").

Reflection-clean. Honors the same skip-directory list as the
language scanner. A caller can give the file list of a git work tree
as `:files`; the scan then reads that list instead of a walk.
raw docstring

default-deadline-msclj

source

default-max-filesclj

source

snapshotclj

(snapshot root)
(snapshot root
          {:keys [max-files deadline-ms files]
           :or {max-files default-max-files deadline-ms default-deadline-ms}})

Walk root looking for known package manifests. Returns:

{:shape "polylith" | "workspace" | "submodules" | nil :totals {:clojure N :node N ...} ;; only kinds present :files {:clojure ["path/deps.edn" ...] ...} :truncated? bool}

The :files paths are relative to root and OMIT the manifest in the root itself (we only care about descendants - a single root-level deps.edn is not a monorepo).

Option :files gives relative paths to read instead of a walk, for example a git file list.

Walk `root` looking for known package manifests. Returns:

  {:shape   "polylith" | "workspace" | "submodules" | nil
   :totals  {:clojure N :node N ...}        ;; only kinds present
   :files   {:clojure ["path/deps.edn" ...]
             ...}
   :truncated? bool}

The `:files` paths are relative to `root` and OMIT the manifest
in the root itself (we only care about descendants - a single
root-level deps.edn is not a monorepo).

Option `:files` gives relative paths to read instead of a walk, for
example a git file list.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close