diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6ae9c83b9f6..600b33a51c3 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1080,18 +1080,10 @@ repos: salt/client/ssh/ssh_py_shim.py )$ - - repo: https://github.com/saltstack/mirrors-nox - rev: v2020.8.22 + - repo: https://github.com/saltstack/pre-commit-remove-import-headers + rev: 1.0.0 hooks: - - id: nox - alias: remove-import-comments - name: Remove import comments - files: .*\.py$ - args: - - -e - - invoke-pre-commit - - -- - - imports.remove-comments + - id: remove-import-headers - repo: https://github.com/timothycrosley/isort rev: "1e78a9acf3110e1f9721feb591f89a451fc9876a" diff --git a/tasks/__init__.py b/tasks/__init__.py index 3d8a487701f..000fe255d8c 100644 --- a/tasks/__init__.py +++ b/tasks/__init__.py @@ -1,9 +1,8 @@ from invoke import Collection # pylint: disable=3rd-party-module-not-gated -from . import docs, filemap, imports, loader +from . import docs, filemap, loader ns = Collection() ns.add_collection(Collection.from_module(docs, name="docs"), name="docs") ns.add_collection(Collection.from_module(loader, name="loader"), name="loader") ns.add_collection(Collection.from_module(filemap, name="filemap"), name="filemap") -ns.add_collection(Collection.from_module(imports, name="imports"), name="imports") diff --git a/tasks/imports.py b/tasks/imports.py deleted file mode 100644 index 67a99e45642..00000000000 --- a/tasks/imports.py +++ /dev/null @@ -1,54 +0,0 @@ -""" - tasks.imports - ~~~~~~~~~~~~~ - - Imports related tasks -""" - -import pathlib -import re - -from invoke import task # pylint: disable=3rd-party-module-not-gated -from tasks import utils - -CODE_DIR = pathlib.Path(__file__).resolve().parent.parent -SALT_CODE_DIR = CODE_DIR / "salt" - - -@task(iterable=["files"], positional=["files"]) -def remove_comments(ctx, files): - """ - Remove import comments, 'Import Python libs', 'Import salt libs', etc - """ - # CD into Salt's repo root directory - ctx.cd(CODE_DIR) - - # Unfortunately invoke does not support nargs. - # We migth have been passed --files="foo.py bar.py" - # Turn that into a list of paths - _files = [] - for path in files: - if not path: - continue - _files.extend(path.split()) - if not _files: - utils.exit_invoke(0) - - _files = [ - pathlib.Path(fname).resolve() for fname in _files if fname.endswith(".py") - ] - - fixes = 0 - exitcode = 0 - comments_regex = re.compile(r"^# ([I|i])mports? .*(([L|l])ibs?)?\n", re.MULTILINE) - for path in _files: - contents = path.read_text() - fixed = comments_regex.sub("", contents) - if fixed == contents: - continue - fixes += 1 - exitcode = 1 - path.write_text(fixed) - if exitcode: - utils.error("Fixed {} files", fixes) - utils.exit_invoke(exitcode)