Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 4a50859

Browse files
committed
remove pre-commit-validate-config and pre-commit-validate-manifest
1 parent 12a979e commit 4a50859

7 files changed

Lines changed: 88 additions & 121 deletions

File tree

pre_commit/clientlib.py

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from __future__ import annotations
22

3-
import argparse
43
import functools
54
import logging
65
import re
@@ -13,12 +12,8 @@
1312
from identify.identify import ALL_TAGS
1413

1514
import pre_commit.constants as C
16-
from pre_commit.color import add_color_option
17-
from pre_commit.commands.validate_config import validate_config
18-
from pre_commit.commands.validate_manifest import validate_manifest
1915
from pre_commit.errors import FatalError
2016
from pre_commit.languages.all import all_languages
21-
from pre_commit.logging_handler import logging_handler
2217
from pre_commit.util import parse_version
2318
from pre_commit.util import yaml_load
2419

@@ -44,14 +39,6 @@ def check_min_version(version: str) -> None:
4439
)
4540

4641

47-
def _make_argparser(filenames_help: str) -> argparse.ArgumentParser:
48-
parser = argparse.ArgumentParser()
49-
parser.add_argument('filenames', nargs='*', help=filenames_help)
50-
parser.add_argument('-V', '--version', action='version', version=C.VERSION)
51-
add_color_option(parser)
52-
return parser
53-
54-
5542
MANIFEST_HOOK_DICT = cfgv.Map(
5643
'Hook', 'id',
5744

@@ -97,19 +84,6 @@ class InvalidManifestError(FatalError):
9784
)
9885

9986

100-
def validate_manifest_main(argv: Sequence[str] | None = None) -> int:
101-
parser = _make_argparser('Manifest filenames.')
102-
args = parser.parse_args(argv)
103-
104-
with logging_handler(args.color):
105-
logger.warning(
106-
'pre-commit-validate-manifest is deprecated -- '
107-
'use `pre-commit validate-manifest` instead.',
108-
)
109-
110-
return validate_manifest(args.filenames)
111-
112-
11387
LOCAL = 'local'
11488
META = 'meta'
11589

@@ -397,16 +371,3 @@ class InvalidConfigError(FatalError):
397371
load_strategy=yaml_load,
398372
exc_tp=InvalidConfigError,
399373
)
400-
401-
402-
def validate_config_main(argv: Sequence[str] | None = None) -> int:
403-
parser = _make_argparser('Config filenames.')
404-
args = parser.parse_args(argv)
405-
406-
with logging_handler(args.color):
407-
logger.warning(
408-
'pre-commit-validate-config is deprecated -- '
409-
'use `pre-commit validate-config` instead.',
410-
)
411-
412-
return validate_config(args.filenames)

pre_commit/commands/validate_config.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
from __future__ import annotations
22

3+
from typing import Sequence
4+
35
from pre_commit import clientlib
46

57

6-
def validate_config(filenames: list[str]) -> int:
8+
def validate_config(filenames: Sequence[str]) -> int:
79
ret = 0
810

911
for filename in filenames:

pre_commit/commands/validate_manifest.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
from __future__ import annotations
22

3+
from typing import Sequence
4+
35
from pre_commit import clientlib
46

57

6-
def validate_manifest(filenames: list[str]) -> int:
8+
def validate_manifest(filenames: Sequence[str]) -> int:
79
ret = 0
810

911
for filename in filenames:

setup.cfg

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ exclude =
3434
[options.entry_points]
3535
console_scripts =
3636
pre-commit = pre_commit.main:main
37-
pre-commit-validate-config = pre_commit.clientlib:validate_config_main
38-
pre-commit-validate-manifest = pre_commit.clientlib:validate_manifest_main
3937

4038
[options.package_data]
4139
pre_commit.resources =

tests/clientlib_test.py

Lines changed: 0 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
from pre_commit.clientlib import MigrateShaToRev
1818
from pre_commit.clientlib import OptionalSensibleRegexAtHook
1919
from pre_commit.clientlib import OptionalSensibleRegexAtTop
20-
from pre_commit.clientlib import validate_config_main
21-
from pre_commit.clientlib import validate_manifest_main
2220
from testing.fixtures import sample_local_config
2321

2422

@@ -112,70 +110,6 @@ def test_config_schema_does_not_contain_defaults():
112110
assert not isinstance(item, cfgv.Optional)
113111

114112

115-
def test_validate_manifest_main_ok():
116-
assert not validate_manifest_main(('.pre-commit-hooks.yaml',))
117-
118-
119-
def test_validate_config_main_ok():
120-
assert not validate_config_main(('.pre-commit-config.yaml',))
121-
122-
123-
def test_validate_warn_on_unknown_keys_at_repo_level(tmpdir, caplog):
124-
f = tmpdir.join('cfg.yaml')
125-
f.write(
126-
'repos:\n'
127-
'- repo: https://gitlab.com/pycqa/flake8\n'
128-
' rev: 3.7.7\n'
129-
' hooks:\n'
130-
' - id: flake8\n'
131-
' args: [--some-args]\n',
132-
)
133-
ret_val = validate_config_main((f.strpath,))
134-
assert not ret_val
135-
assert caplog.record_tuples == [
136-
(
137-
'pre_commit',
138-
logging.WARNING,
139-
'pre-commit-validate-config is deprecated -- '
140-
'use `pre-commit validate-config` instead.',
141-
),
142-
(
143-
'pre_commit',
144-
logging.WARNING,
145-
'Unexpected key(s) present on https://gitlab.com/pycqa/flake8: '
146-
'args',
147-
),
148-
]
149-
150-
151-
def test_validate_warn_on_unknown_keys_at_top_level(tmpdir, caplog):
152-
f = tmpdir.join('cfg.yaml')
153-
f.write(
154-
'repos:\n'
155-
'- repo: https://gitlab.com/pycqa/flake8\n'
156-
' rev: 3.7.7\n'
157-
' hooks:\n'
158-
' - id: flake8\n'
159-
'foo:\n'
160-
' id: 1.0.0\n',
161-
)
162-
ret_val = validate_config_main((f.strpath,))
163-
assert not ret_val
164-
assert caplog.record_tuples == [
165-
(
166-
'pre_commit',
167-
logging.WARNING,
168-
'pre-commit-validate-config is deprecated -- '
169-
'use `pre-commit validate-config` instead.',
170-
),
171-
(
172-
'pre_commit',
173-
logging.WARNING,
174-
'Unexpected key(s) present at root: foo',
175-
),
176-
]
177-
178-
179113
def test_ci_map_key_allowed_at_top_level(caplog):
180114
cfg = {
181115
'ci': {'skip': ['foo']},
@@ -362,18 +296,6 @@ def test_validate_optional_sensible_regex_at_top_level(caplog, regex, warning):
362296
assert caplog.record_tuples == [('pre_commit', logging.WARNING, warning)]
363297

364298

365-
@pytest.mark.parametrize('fn', (validate_config_main, validate_manifest_main))
366-
def test_mains_not_ok(tmpdir, fn):
367-
not_yaml = tmpdir.join('f.notyaml')
368-
not_yaml.write('{')
369-
not_schema = tmpdir.join('notconfig.yaml')
370-
not_schema.write('{}')
371-
372-
assert fn(('does-not-exist',))
373-
assert fn((not_yaml.strpath,))
374-
assert fn((not_schema.strpath,))
375-
376-
377299
@pytest.mark.parametrize(
378300
('manifest_obj', 'expected'),
379301
(
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
from __future__ import annotations
2+
3+
import logging
4+
5+
from pre_commit.commands.validate_config import validate_config
6+
7+
8+
def test_validate_config_ok():
9+
assert not validate_config(('.pre-commit-config.yaml',))
10+
11+
12+
def test_validate_warn_on_unknown_keys_at_repo_level(tmpdir, caplog):
13+
f = tmpdir.join('cfg.yaml')
14+
f.write(
15+
'repos:\n'
16+
'- repo: https://gitlab.com/pycqa/flake8\n'
17+
' rev: 3.7.7\n'
18+
' hooks:\n'
19+
' - id: flake8\n'
20+
' args: [--some-args]\n',
21+
)
22+
ret_val = validate_config((f.strpath,))
23+
assert not ret_val
24+
assert caplog.record_tuples == [
25+
(
26+
'pre_commit',
27+
logging.WARNING,
28+
'Unexpected key(s) present on https://gitlab.com/pycqa/flake8: '
29+
'args',
30+
),
31+
]
32+
33+
34+
def test_validate_warn_on_unknown_keys_at_top_level(tmpdir, caplog):
35+
f = tmpdir.join('cfg.yaml')
36+
f.write(
37+
'repos:\n'
38+
'- repo: https://gitlab.com/pycqa/flake8\n'
39+
' rev: 3.7.7\n'
40+
' hooks:\n'
41+
' - id: flake8\n'
42+
'foo:\n'
43+
' id: 1.0.0\n',
44+
)
45+
ret_val = validate_config((f.strpath,))
46+
assert not ret_val
47+
assert caplog.record_tuples == [
48+
(
49+
'pre_commit',
50+
logging.WARNING,
51+
'Unexpected key(s) present at root: foo',
52+
),
53+
]
54+
55+
56+
def test_mains_not_ok(tmpdir):
57+
not_yaml = tmpdir.join('f.notyaml')
58+
not_yaml.write('{')
59+
not_schema = tmpdir.join('notconfig.yaml')
60+
not_schema.write('{}')
61+
62+
assert validate_config(('does-not-exist',))
63+
assert validate_config((not_yaml.strpath,))
64+
assert validate_config((not_schema.strpath,))
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
from __future__ import annotations
2+
3+
from pre_commit.commands.validate_manifest import validate_manifest
4+
5+
6+
def test_validate_manifest_ok():
7+
assert not validate_manifest(('.pre-commit-hooks.yaml',))
8+
9+
10+
def test_not_ok(tmpdir):
11+
not_yaml = tmpdir.join('f.notyaml')
12+
not_yaml.write('{')
13+
not_schema = tmpdir.join('notconfig.yaml')
14+
not_schema.write('{}')
15+
16+
assert validate_manifest(('does-not-exist',))
17+
assert validate_manifest((not_yaml.strpath,))
18+
assert validate_manifest((not_schema.strpath,))

0 commit comments

Comments
 (0)