prek¶
footman._stubs.prek.Prek
¶
Bases: Tool
__call__
¶
__call__(
*args: str,
all_files: _Flag = ...,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
directory: _Value = ...,
dry_run: _Flag = ...,
fail_fast: _Flag = ...,
files: _Value = ...,
from_ref: _Value = ...,
group: _Value = ...,
last_commit: _Flag = ...,
log_file: _Value = ...,
no_group: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
show_diff_on_failure: _Flag = ...,
skip: _Value = ...,
stage: Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
| Sequence[
Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
]
| None = ...,
to_ref: _Value = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
A fast Git hook manager written in Rust, designed as a drop-in alternative to pre-commit, reimagined.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
all_files
|
_Flag
|
Run on all files in the repo. |
...
|
cd
|
_Value
|
Change to directory before running. |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
directory
|
_Value
|
Run hooks on all files in the specified directories. |
...
|
dry_run
|
_Flag
|
Do not run the hooks, but print the hooks that would have been run. |
...
|
fail_fast
|
_Flag
|
Stop running hooks after the first failure. |
...
|
files
|
_Value
|
Specific filenames to run hooks on. May be repeated: a list emits the flag once per item. |
...
|
from_ref
|
_Value
|
The original ref in a |
...
|
group
|
_Value
|
Run hooks belonging to the specified group. |
...
|
last_commit
|
_Flag
|
Run hooks against the last commit. |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_group
|
_Value
|
Do not run hooks belonging to the specified group. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
show_diff_on_failure
|
_Flag
|
When hooks fail, run |
...
|
skip
|
_Value
|
Skip the specified hooks or projects. |
...
|
stage
|
Literal['manual', 'commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg'] | Sequence[Literal['manual', 'commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg']] | None
|
The stage during which the hook is fired. |
...
|
to_ref
|
_Value
|
The destination ref in a |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|
autoupdate
¶
autoupdate(
*,
bleeding_edge: _Flag = ...,
cd: _Value = ...,
check: _Flag = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
cooldown_days: _Value = ...,
dry_run: _Flag = ...,
exclude_repo: _Value = ...,
exclude_tag: _Value = ...,
exit_code: _Flag = ...,
freeze: _Flag = ...,
include_tag: _Value = ...,
jobs: _Value = ...,
log_file: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
repo: _Value = ...,
repo_exclude_tag: _Value = ...,
repo_include_tag: _Value = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
Update the rev field of repositories in the config file to the latest
version
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
bleeding_edge
|
_Flag
|
Update to the bleeding edge of the default branch instead of the latest tagged version. |
...
|
cd
|
_Value
|
Change to directory before running. |
...
|
check
|
_Flag
|
Alias of |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
cooldown_days
|
_Value
|
Minimum release age (in days) required for a version to be eligible. |
...
|
dry_run
|
_Flag
|
Do not write changes to the config file, only display what would be changed. |
...
|
exclude_repo
|
_Value
|
Do not update this repository. May be repeated: a list emits the flag once per item. |
...
|
exclude_tag
|
_Value
|
Ignore tags matching this glob pattern. May be repeated: a list emits the flag once per item. |
...
|
exit_code
|
_Flag
|
Exit with status 1 if updates are available. |
...
|
freeze
|
_Flag
|
Store "frozen" hashes in |
...
|
include_tag
|
_Value
|
Only consider tags matching this glob pattern. May be repeated: a list emits the flag once per item. |
...
|
jobs
|
_Value
|
Number of threads to use. Defaults to |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
repo
|
_Value
|
Only update this repository. May be repeated: a list emits the flag once per item. |
...
|
repo_exclude_tag
|
_Value
|
Ignore tags matching this glob pattern for a
repository ( |
...
|
repo_include_tag
|
_Value
|
Only consider tags matching this glob pattern for a
repository ( |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|
clean
¶
clean(
*,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
log_file: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
Remove all prek cached data
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
cd
|
_Value
|
Change to directory before running. |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|
flags
¶
flags(
*,
all_files: _Flag = ...,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
directory: _Value = ...,
dry_run: _Flag = ...,
fail_fast: _Flag = ...,
files: _Value = ...,
from_ref: _Value = ...,
group: _Value = ...,
last_commit: _Flag = ...,
log_file: _Value = ...,
no_group: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
show_diff_on_failure: _Flag = ...,
skip: _Value = ...,
stage: Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
| Sequence[
Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
]
| None = ...,
to_ref: _Value = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Prek
Bind tool-level global options before the subcommand.
tools.docker.flags(host=...) puts a tool's own
options ahead of the verb, where they belong.
install
¶
install(
*args: str,
allow_missing_config: _Flag = ...,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
git_dir: _Value = ...,
hook_type: Literal[
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
| Sequence[
Literal[
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
]
| None = ...,
log_file: _Value = ...,
no_progress: _Flag = ...,
overwrite: _Flag = ...,
prepare_hooks: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
skip: _Value = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
Install prek Git shims into Git's effective hooks directory
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
allow_missing_config
|
_Flag
|
Allow a missing configuration file. |
...
|
cd
|
_Value
|
Change to directory before running. |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
git_dir
|
_Value
|
Install Git shims into the |
...
|
hook_type
|
Literal['commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg'] | Sequence[Literal['commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg']] | None
|
Which Git shim(s) to install. |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
overwrite
|
_Flag
|
Overwrite existing Git shims. |
...
|
prepare_hooks
|
_Flag
|
Also prepare environments for all hooks used in the config file. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
skip
|
_Value
|
Skip the specified hooks or projects. |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|
run
¶
run(
*args: str,
all_files: _Flag = ...,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
directory: _Value = ...,
dry_run: _Flag = ...,
fail_fast: _Flag = ...,
files: _Value = ...,
from_ref: _Value = ...,
group: _Value = ...,
last_commit: _Flag = ...,
log_file: _Value = ...,
no_group: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
show_diff_on_failure: _Flag = ...,
skip: _Value = ...,
stage: Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
| Sequence[
Literal[
"manual",
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
]
| None = ...,
to_ref: _Value = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
Run hooks
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
all_files
|
_Flag
|
Run on all files in the repo. |
...
|
cd
|
_Value
|
Change to directory before running. |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
directory
|
_Value
|
Run hooks on all files in the specified directories. |
...
|
dry_run
|
_Flag
|
Do not run the hooks, but print the hooks that would have been run. |
...
|
fail_fast
|
_Flag
|
Stop running hooks after the first failure. |
...
|
files
|
_Value
|
Specific filenames to run hooks on. May be repeated: a list emits the flag once per item. |
...
|
from_ref
|
_Value
|
The original ref in a |
...
|
group
|
_Value
|
Run hooks belonging to the specified group. |
...
|
last_commit
|
_Flag
|
Run hooks against the last commit. |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_group
|
_Value
|
Do not run hooks belonging to the specified group. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
show_diff_on_failure
|
_Flag
|
When hooks fail, run |
...
|
skip
|
_Value
|
Skip the specified hooks or projects. |
...
|
stage
|
Literal['manual', 'commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg'] | Sequence[Literal['manual', 'commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg']] | None
|
The stage during which the hook is fired. |
...
|
to_ref
|
_Value
|
The destination ref in a |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|
uninstall
¶
uninstall(
*,
all: _Flag = ...,
cd: _Value = ...,
color: Literal["auto", "always", "never"]
| Sequence[Literal["auto", "always", "never"]]
| None = ...,
config: _Value = ...,
git_dir: _Value = ...,
hook_type: Literal[
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
| Sequence[
Literal[
"commit-msg",
"post-checkout",
"post-commit",
"post-merge",
"post-rewrite",
"pre-commit",
"pre-merge-commit",
"pre-push",
"pre-rebase",
"prepare-commit-msg",
]
]
| None = ...,
log_file: _Value = ...,
no_progress: _Flag = ...,
quiet: _Flag = ...,
refresh: _Flag = ...,
verbose: _Flag = ...,
**flags: Any,
) -> Result
Uninstall prek Git shims
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
all
|
_Flag
|
Uninstall all prek-managed Git shims. |
...
|
cd
|
_Value
|
Change to directory before running. |
...
|
color
|
Literal['auto', 'always', 'never'] | Sequence[Literal['auto', 'always', 'never']] | None
|
Whether to use color in output. Defaults to |
...
|
config
|
_Value
|
Path to alternate config file. |
...
|
git_dir
|
_Value
|
Uninstall Git shims from the |
...
|
hook_type
|
Literal['commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg'] | Sequence[Literal['commit-msg', 'post-checkout', 'post-commit', 'post-merge', 'post-rewrite', 'pre-commit', 'pre-merge-commit', 'pre-push', 'pre-rebase', 'prepare-commit-msg']] | None
|
Which Git shim(s) to uninstall. |
...
|
log_file
|
_Value
|
Write trace logs to the specified file. |
...
|
no_progress
|
_Flag
|
Hide all progress outputs. |
...
|
quiet
|
_Flag
|
Use quiet output. |
...
|
refresh
|
_Flag
|
Refresh all cached data. |
...
|
verbose
|
_Flag
|
Use verbose output. |
...
|