internal/

directory
v0.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 12, 2026 License: MIT

Directories

Path Synopsis
Package auth reports credential status for the providers a run uses.
Package auth reports credential status for the providers a run uses.
Package checksum sources a sha256 for a value=sha256 follower.
Package checksum sources a sha256 for a value=sha256 follower.
Package command implements the clover CLI: argument parsing and dispatch to the run, lint, and format modes.
Package command implements the clover CLI: argument parsing and dispatch to the run, lint, and format modes.
Package comment recognises host-language comment syntaxes (#, //, <!-- -->) so directives are found in any text file.
Package comment recognises host-language comment syntaxes (#, //, <!-- -->) so directives are found in any text file.
Package config loads and validates Clover's optional YAML configuration.
Package config loads and validates Clover's optional YAML configuration.
Package console renders engine progress at the CLI edge.
Package console renders engine progress at the CLI edge.
Package constant holds clover's shared string vocabulary - the literal spellings of directive grammar that appear across more than one package (constraint keywords now; provider names, source selectors, and value kinds as they land).
Package constant holds clover's shared string vocabulary - the literal spellings of directive grammar that appear across more than one package (constraint keywords now; provider names, source selectors, and value kinds as they land).
Package directive scans for the clover: keyword and parses the key=value grammar (quote-on-demand) into an ordered Directive.
Package directive scans for the clover: keyword and parses the key=value grammar (quote-on-demand) into an ordered Directive.
Package display formats resolved values for human-facing output.
Package display formats resolved values for human-facing output.
Package exec schedules markers over the follow-edge dependency DAG: topological order, stable-sorted ready set, cycle detection, capped parallelism.
Package exec schedules markers over the follow-edge dependency DAG: topological order, stable-sorted ready set, cycle detection, capped parallelism.
Package forge holds provider-agnostic helpers shared by forge providers - Gitea/Forgejo today, GitHub Enterprise and self-managed GitLab in future: host parsing, same-origin checks, and OAuth PKCE/Link primitives.
Package forge holds provider-agnostic helpers shared by forge providers - Gitea/Forgejo today, GitHub Enterprise and self-managed GitLab in future: host parsing, same-origin checks, and OAuth PKCE/Link primitives.
Package httpcache provides a caching http.RoundTripper that sits beneath the providers: they use an ordinary *http.Client and never manage caching themselves.
Package httpcache provides a caching http.RoundTripper that sits beneath the providers: they use an ordinary *http.Client and never manage caching themselves.
Package ignore matches paths against the ignore files that apply to them, for use as scan's ignore predicate.
Package ignore matches paths against the ignore files that apply to them, for use as scan's ignore predicate.
Package infer bridges auto-detection and the provider registry: it decides whether a line Clover recognizes would actually resolve, offline.
Package infer bridges auto-detection and the provider registry: it decides whether a line Clover recognizes would actually resolve, offline.
Package jq compiles jq programs, so the gojq parse-then-compile pair lives in one place for every caller that queries JSON - the http provider's extractor and the sidecar locator alike.
Package jq compiles jq programs, so the gojq parse-then-compile pair lives in one place for every caller that queries JSON - the http provider's extractor and the sidecar locator alike.
log
field
Package field defines the structured-log field names clover logs with, so a key is spelled identically everywhere and a misspelling is a compile error.
Package field defines the structured-log field names clover logs with, so a key is spelled identically everywhere and a misspelling is a compile error.
Package logger centralises configuration of the process-wide clog logger for the CLI, layered on top of conductor's defaults.
Package logger centralises configuration of the process-wide clog logger for the CLI, layered on top of conductor's defaults.
Package match holds the Rewriter seam (Locate + Render -> edit-set) and its dispatch table: the smart rewriter plus the action-pin rewriter for SHA-pinned uses: lines.
Package match holds the Rewriter seam (Locate + Render -> edit-set) and its dispatch table: the smart rewriter plus the action-pin rewriter for SHA-pinned uses: lines.
Package mode implements run, lint, and format over the shared pipeline, differing only in network use and what (if anything) is written.
Package mode implements run, lint, and format over the shared pipeline, differing only in network use and what (if anything) is written.
Package model defines the shared domain types: Directive, Target, Marker (lifecycle), Candidate (rich: Commit/sha256), and Result.
Package model defines the shared domain types: Directive, Target, Marker (lifecycle), Candidate (rich: Commit/sha256), and Result.
Package oci is a small client for the OCI distribution (registry v2) protocol: listing a repository's tags, resolving a tag's manifest digest, and answering the bearer-token challenge a registry returns on the first unauthenticated request.
Package oci is a small client for the OCI distribution (registry v2) protocol: listing a repository's tags, resolving a tag's manifest digest, and answering the bearer-token challenge a registry returns on the first unauthenticated request.
Package output defines the detail level of a clover report.
Package output defines the detail level of a clover report.
Package pattern is clover's one matching grammar, shared by every directive that accepts a pattern (include/exclude, verify-branch, checksum, find): a value bracketed by / is a strict RE2 regex; any other value is a glob with *, ?, and <placeholders>.
Package pattern is clover's one matching grammar, shared by every directive that accepts a pattern (include/exclude, verify-branch, checksum, find): a value bracketed by / is a strict RE2 regex; any other value is a glob with *, ?, and <placeholders>.
Package pipeline orchestrates the phases (discover -> parse -> validate -> prepare -> execute -> report) and defines the Executor, Mode, and Reporter seams.
Package pipeline orchestrates the phases (discover -> parse -> validate -> prepare -> execute -> report) and defines the Executor, Mode, and Reporter seams.
Package progress is the engine-facing seam for reporting the live state of a batch of concurrent work - one task per unit (a marker resolving).
Package progress is the engine-facing seam for reporting the live state of a batch of concurrent work - one task per unit (a marker resolving).
Package provider defines the Provider interface, the compiled-in registry (init self-registration), and optional capabilities (Anchorer, Digester, Linker, Committer, BranchChecker, Authenticator).
Package provider defines the Provider interface, the compiled-in registry (init self-registration), and optional capabilities (Anchorer, Digester, Linker, Committer, BranchChecker, Authenticator).
all
Package all is the composition helper that constructs every built-in provider.
Package all is the composition helper that constructs every built-in provider.
docker
Package docker resolves container image versions from a registry's tags, using Docker Hub's API for hub.docker.com and the OCI registry v2 bearer-token challenge elsewhere, piggybacking on the user's existing docker login for credentials.
Package docker resolves container image versions from a registry's tags, using Docker Hub's API for hub.docker.com and the OCI registry v2 bearer-token challenge elsewhere, piggybacking on the user's existing docker login for credentials.
follow
Package follow implements the follow provider: reuses another marker's resolved Candidate (via from=) from the registry and renders a value (version/commit/sha256).
Package follow implements the follow provider: reuses another marker's resolved Candidate (via from=) from the registry and renders a value (version/commit/sha256).
gitea
Package gitea resolves versions from a Gitea or Forgejo forge's tags and releases.
Package gitea resolves versions from a Gitea or Forgejo forge's tags and releases.
github
Package github resolves versions from GitHub releases/tags, enriches candidates with commit SHAs, and sources checksums via an ordered chain.
Package github resolves versions from GitHub releases/tags, enriches candidates with commit SHAs, and sources checksums via an ordered chain.
gitlab
Package gitlab resolves versions from a GitLab project's tags or releases, enriching candidates with the commit SHA the REST API returns for free.
Package gitlab resolves versions from a GitLab project's tags or releases, enriching candidates with the commit SHA the REST API returns for free.
golang
Package golang resolves Go toolchain versions from the official go.dev download index.
Package golang resolves Go toolchain versions from the official go.dev download index.
hashicorp
Package hashicorp resolves HashiCorp tool versions (Terraform, Vault, Consul, Nomad, Packer, Boundary, Sentinel, ...) from HashiCorp's public, unauthenticated releases API.
Package hashicorp resolves HashiCorp tool versions (Terraform, Vault, Consul, Nomad, Packer, Boundary, Sentinel, ...) from HashiCorp's public, unauthenticated releases API.
helm
Package helm resolves Helm chart versions from both classic HTTP chart repositories (an index.yaml served under the repo URL) and OCI registries (oci://, where a chart's versions are the repository's tags).
Package helm resolves Helm chart versions from both classic HTTP chart repositories (an index.yaml served under the repo URL) and OCI registries (oci://, where a chart's versions are the repository's tags).
http
Package http resolves versions from an arbitrary HTTP endpoint, the escape hatch for any source clover has no bespoke provider for.
Package http resolves versions from an arbitrary HTTP endpoint, the escape hatch for any source clover has no bespoke provider for.
manual
Package manual implements a human-owned root provider.
Package manual implements a human-owned root provider.
node
Package node resolves Node.js runtime versions from nodejs.org's public, unauthenticated release index.
Package node resolves Node.js runtime versions from nodejs.org's public, unauthenticated release index.
npm
Package npm resolves npm package versions from the public npm registry.
Package npm resolves npm package versions from the public npm registry.
pypi
Package pypi resolves Python package versions from the official PyPI JSON API.
Package pypi resolves Python package versions from the official PyPI JSON API.
python
Package python resolves CPython releases from the official python.org downloads API.
Package python resolves CPython releases from the official python.org downloads API.
rust
Package rust resolves Rust toolchain versions from the official static.rust-lang.org manifest index.
Package rust resolves Rust toolchain versions from the official static.rust-lang.org manifest index.
terraform
Package terraform resolves Terraform provider versions from a registry implementing the provider registry protocol.
Package terraform resolves Terraform provider versions from a registry implementing the provider registry protocol.
zig
Package zig resolves Zig toolchain versions from the official ziglang.org download index.
Package zig resolves Zig toolchain versions from the official ziglang.org download index.
Package ratelimit provides an http.RoundTripper that respects an API's rate limit headers.
Package ratelimit provides an http.RoundTripper that respects an API's rate limit headers.
Package regexlit defines clover's /regex/ literal syntax: a value bracketed by slashes is a regular expression, anything else is not.
Package regexlit defines clover's /regex/ literal syntax: a value bracketed by slashes is a regular expression, anything else is not.
Package registry is the run-scoped store mapping id -> resolved Candidate, enabling follow markers to reuse producers' results.
Package registry is the run-scoped store mapping id -> resolved Candidate, enabling follow markers to reuse producers' results.
Package report renders mode summaries to the user through clog: per-marker lines with smart file:line hyperlinks, plus a closing summary.
Package report renders mode summaries to the user through clog: per-marker lines with smart file:line hyperlinks, plus a closing summary.
github
Package github builds GitHub Actions workflow-command annotations - the ::error/::warning/::notice lines a workflow parses from a step's output to surface a message inline on a pull request.
Package github builds GitHub Actions workflow-command annotations - the ::error/::warning/::notice lines a workflow parses from a step's output to surface a message inline on a pull request.
Package rule compiles a directive's selection-policy keys (constraint, include/exclude, prerelease, cooldown, behind, downgrade) into the options the version selection chain consumes.
Package rule compiles a directive's selection-policy keys (constraint, include/exclude, prerelease, cooldown, behind, downgrade) into the options the version selection chain consumes.
Package scan walks the requested paths and discovers the files that contain a clover: directive.
Package scan walks the requested paths and discovers the files that contain a clover: directive.
Package sidecar carries the format-agnostic logic for YAML sidecar files: the <target>.clover.yaml (or .yml) that holds update rules for a target that cannot host an inline clover: comment, strict JSON being the canonical case.
Package sidecar carries the format-agnostic logic for YAML sidecar files: the <target>.clover.yaml (or .yml) that holds update rules for a target that cannot host an inline clover: comment, strict JSON being the canonical case.
Package tag parses and evaluates the --tag marker filter.
Package tag parses and evaluates the --tag marker filter.
Package token persists the access tokens clover mints (e.g.
Package token persists the access tokens clover mints (e.g.
tools
genmise command
Command genmise generates the mise tool-name to GitHub repository map the match package's auto-detection uses for mise configuration files.
Command genmise generates the mise tool-name to GitHub repository map the match package's auto-detection uses for mise configuration files.
Package tui holds the charmbracelet-based interactive surfaces (the clover init wizard).
Package tui holds the charmbracelet-based interactive surfaces (the clover init wizard).
Package vcs resolves the version-controlled repository a file belongs to, so clover can namespace id= per repository: the same id in two different repositories is not a clash.
Package vcs resolves the version-controlled repository a file belongs to, so clover can namespace id= per repository: the same id in two different repositories is not a clash.
Package version parses/compares semver, evaluates constraints (keyword bumps + Terraform ranges), and runs the candidate-selection filter chain.
Package version parses/compares semver, evaluates constraints (keyword bumps + Terraform ranges), and runs the candidate-selection filter chain.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL