Merging upstream version 3.0.2.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
962b6a60c2
commit
3904671ae3
107 changed files with 1775 additions and 2323 deletions
|
@ -2,6 +2,7 @@ from __future__ import annotations
|
|||
|
||||
import os.path
|
||||
import re
|
||||
import tempfile
|
||||
from typing import Any
|
||||
from typing import NamedTuple
|
||||
from typing import Sequence
|
||||
|
@ -19,9 +20,8 @@ from pre_commit.store import Store
|
|||
from pre_commit.util import CalledProcessError
|
||||
from pre_commit.util import cmd_output
|
||||
from pre_commit.util import cmd_output_b
|
||||
from pre_commit.util import tmpdir
|
||||
from pre_commit.util import yaml_dump
|
||||
from pre_commit.util import yaml_load
|
||||
from pre_commit.yaml import yaml_dump
|
||||
from pre_commit.yaml import yaml_load
|
||||
|
||||
|
||||
class RevInfo(NamedTuple):
|
||||
|
@ -47,7 +47,7 @@ class RevInfo(NamedTuple):
|
|||
'FETCH_HEAD', '--tags', '--exact',
|
||||
)
|
||||
|
||||
with tmpdir() as tmp:
|
||||
with tempfile.TemporaryDirectory() as tmp:
|
||||
git.init_repo(tmp, self.repo)
|
||||
cmd_output_b(
|
||||
*git_cmd, 'fetch', 'origin', 'HEAD', '--tags',
|
||||
|
|
|
@ -3,9 +3,11 @@ from __future__ import annotations
|
|||
import re
|
||||
import textwrap
|
||||
|
||||
import cfgv
|
||||
import yaml
|
||||
|
||||
from pre_commit.util import yaml_load
|
||||
from pre_commit.clientlib import InvalidConfigError
|
||||
from pre_commit.yaml import yaml_load
|
||||
|
||||
|
||||
def _is_header_line(line: str) -> bool:
|
||||
|
@ -44,6 +46,13 @@ def migrate_config(config_file: str, quiet: bool = False) -> int:
|
|||
with open(config_file) as f:
|
||||
orig_contents = contents = f.read()
|
||||
|
||||
with cfgv.reraise_as(InvalidConfigError):
|
||||
with cfgv.validate_context(f'File {config_file}'):
|
||||
try:
|
||||
yaml_load(orig_contents)
|
||||
except Exception as e:
|
||||
raise cfgv.ValidationError(str(e))
|
||||
|
||||
contents = _migrate_map(contents)
|
||||
contents = _migrate_sha_to_rev(contents)
|
||||
|
||||
|
|
|
@ -189,7 +189,16 @@ def _run_single_hook(
|
|||
filenames = ()
|
||||
time_before = time.time()
|
||||
language = languages[hook.language]
|
||||
retcode, out = language.run_hook(hook, filenames, use_color)
|
||||
with language.in_env(hook.prefix, hook.language_version):
|
||||
retcode, out = language.run_hook(
|
||||
hook.prefix,
|
||||
hook.entry,
|
||||
hook.args,
|
||||
filenames,
|
||||
is_local=hook.src == 'local',
|
||||
require_serial=hook.require_serial,
|
||||
color=use_color,
|
||||
)
|
||||
duration = round(time.time() - time_before, 2) or 0
|
||||
diff_after = _get_diff()
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ from __future__ import annotations
|
|||
import argparse
|
||||
import logging
|
||||
import os.path
|
||||
import tempfile
|
||||
|
||||
import pre_commit.constants as C
|
||||
from pre_commit import git
|
||||
|
@ -11,9 +12,8 @@ from pre_commit.clientlib import load_manifest
|
|||
from pre_commit.commands.run import run
|
||||
from pre_commit.store import Store
|
||||
from pre_commit.util import cmd_output_b
|
||||
from pre_commit.util import tmpdir
|
||||
from pre_commit.util import yaml_dump
|
||||
from pre_commit.xargs import xargs
|
||||
from pre_commit.yaml import yaml_dump
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -49,7 +49,7 @@ def _repo_ref(tmpdir: str, repo: str, ref: str | None) -> tuple[str, str]:
|
|||
|
||||
|
||||
def try_repo(args: argparse.Namespace) -> int:
|
||||
with tmpdir() as tempdir:
|
||||
with tempfile.TemporaryDirectory() as tempdir:
|
||||
repo, ref = _repo_ref(tempdir, args.repo, args.ref)
|
||||
|
||||
store = Store(tempdir)
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import Sequence
|
||||
|
||||
from pre_commit import clientlib
|
||||
|
||||
|
||||
def validate_config(filenames: list[str]) -> int:
|
||||
def validate_config(filenames: Sequence[str]) -> int:
|
||||
ret = 0
|
||||
|
||||
for filename in filenames:
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import Sequence
|
||||
|
||||
from pre_commit import clientlib
|
||||
|
||||
|
||||
def validate_manifest(filenames: list[str]) -> int:
|
||||
def validate_manifest(filenames: Sequence[str]) -> int:
|
||||
ret = 0
|
||||
|
||||
for filename in filenames:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue