vcspull status - vcspull.cli.status

Repository status checking functionality for vcspull.

class vcspull.cli.status.StatusCheckConfig(max_concurrent, detailed)[source]

Bases: object

Configuration options for status checking.

Parameters:
  • max_concurrent (int)

  • detailed (bool)

max_concurrent: int
detailed: bool
vcspull.cli.status._visible_length(text)[source]

Return the printable length of string stripped of ANSI codes.

Return type:

int

Parameters:

text (str)

class vcspull.cli.status.StatusProgressPrinter(total, colors, enabled)[source]

Bases: object

Render incremental status check progress for TTY output.

Initialize the progress printer.

Parameters:
  • total (int) – Total number of repositories to check

  • colors (Colors) – Color formatter instance

  • enabled (bool) – Whether progress output is enabled

__init__(total, colors, enabled)[source]

Initialize the progress printer.

Parameters:
  • total (int) – Total number of repositories to check

  • colors (Colors) – Color formatter instance

  • enabled (bool) – Whether progress output is enabled

Return type:

None

update(processed, exists, missing)[source]

Update the progress line with the latest counts.

Return type:

None

Parameters:
  • processed (int) – Number of repositories processed so far

  • exists (int) – Number of repositories that exist

  • missing (int) – Number of repositories that are missing

finish()[source]

Ensure the progress line is terminated with a newline.

Return type:

None

vcspull.cli.status.create_status_subparser(parser)[source]

Create vcspull status argument subparser.

Return type:

None

Parameters:

parser (argparse.ArgumentParser) – The parser to configure

async vcspull.cli.status._check_repos_status_async(repos, *, config, progress)[source]

Check repository status concurrently using asyncio.

Return type:

list[dict[str, t.Any]]

Parameters:
Returns:

List of status dictionaries in completion order

Return type:

list[dict[str, t.Any]]

vcspull.cli.status._run_git_command(repo_path, *args)[source]

Execute a git command and return the completed process.

Return type:

Optional[CompletedProcess[str]]

Parameters:
vcspull.cli.status.check_repo_status(repo, detailed=False)[source]

Check the status of a single repository.

Return type:

dict[str, t.Any]

Parameters:
  • repo (ConfigDict) – Repository configuration

  • detailed (bool) – Whether to include detailed status information

Returns:

Repository status information

Return type:

dict

vcspull.cli.status.status_repos(repo_patterns, config_path, workspace_root, detailed, output_json, output_ndjson, color, concurrent=True, max_concurrent=None)[source]

Check status of configured repositories.

Return type:

None

Parameters:
  • repo_patterns (list[str]) – Patterns to filter repositories (fnmatch)

  • config_path (pathlib.Path | None) – Path to config file, or None to auto-discover

  • workspace_root (str | None) – Filter by workspace root

  • detailed (bool) – Show detailed status information

  • output_json (bool) – Output as JSON

  • output_ndjson (bool) – Output as NDJSON

  • color (str) – Color mode (auto, always, never)

  • concurrent (bool) – Whether to check repositories concurrently (default: True)

  • max_concurrent (int | None) – Maximum concurrent status checks (default: based on CPU count)

vcspull.cli.status._format_status_line(status, formatter, colors, detailed)[source]

Format a single repository status line for human output.

Return type:

None

Parameters:
  • status (dict) – Repository status information

  • formatter (OutputFormatter) – Output formatter

  • colors (Colors) – Color manager

  • detailed (bool) – Whether to show detailed information