Remove legacy hooks.yaml and pre-types config

This commit is contained in:
Anthony Sottile 2018-10-11 22:20:07 -07:00
parent 78b24438db
commit 2f6ba1b88e
3 changed files with 0 additions and 310 deletions

View file

@ -5,169 +5,112 @@
language: python language: python
types: [python] types: [python]
args: [-i] args: [-i]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-added-large-files - id: check-added-large-files
name: Check for added large files name: Check for added large files
description: Prevent giant files from being committed description: Prevent giant files from being committed
entry: check-added-large-files entry: check-added-large-files
language: python language: python
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-ast - id: check-ast
name: Check python ast name: Check python ast
description: Simply check whether the files parse as valid python. description: Simply check whether the files parse as valid python.
entry: check-ast entry: check-ast
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-byte-order-marker - id: check-byte-order-marker
name: Check for byte-order marker name: Check for byte-order marker
description: Forbid files which have a UTF-8 byte-order marker description: Forbid files which have a UTF-8 byte-order marker
entry: check-byte-order-marker entry: check-byte-order-marker
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-builtin-literals - id: check-builtin-literals
name: Check builtin type constructor use name: Check builtin type constructor use
description: Require literal syntax when initializing empty or zero Python builtin types. description: Require literal syntax when initializing empty or zero Python builtin types.
entry: check-builtin-literals entry: check-builtin-literals
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-case-conflict - id: check-case-conflict
name: Check for case conflicts name: Check for case conflicts
description: Check for files that would conflict in case-insensitive filesystems description: Check for files that would conflict in case-insensitive filesystems
entry: check-case-conflict entry: check-case-conflict
language: python language: python
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-docstring-first - id: check-docstring-first
name: Check docstring is first name: Check docstring is first
description: Checks a common error of defining a docstring after code. description: Checks a common error of defining a docstring after code.
entry: check-docstring-first entry: check-docstring-first
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-executables-have-shebangs - id: check-executables-have-shebangs
name: Check that executables have shebangs name: Check that executables have shebangs
description: Ensures that (non-binary) executables have a shebang. description: Ensures that (non-binary) executables have a shebang.
entry: check-executables-have-shebangs entry: check-executables-have-shebangs
language: python language: python
types: [text, executable] types: [text, executable]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-json - id: check-json
name: Check JSON name: Check JSON
description: This hook checks json files for parseable syntax. description: This hook checks json files for parseable syntax.
entry: check-json entry: check-json
language: python language: python
types: [json] types: [json]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: pretty-format-json - id: pretty-format-json
name: Pretty format JSON name: Pretty format JSON
description: This hook sets a standard for formatting JSON files. description: This hook sets a standard for formatting JSON files.
entry: pretty-format-json entry: pretty-format-json
language: python language: python
types: [json] types: [json]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-merge-conflict - id: check-merge-conflict
name: Check for merge conflicts name: Check for merge conflicts
description: Check for files that contain merge conflict strings. description: Check for files that contain merge conflict strings.
entry: check-merge-conflict entry: check-merge-conflict
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-symlinks - id: check-symlinks
name: Check for broken symlinks name: Check for broken symlinks
description: Checks for symlinks which do not point to anything. description: Checks for symlinks which do not point to anything.
entry: check-symlinks entry: check-symlinks
language: python language: python
types: [symlink] types: [symlink]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-vcs-permalinks - id: check-vcs-permalinks
name: Check vcs permalinks name: Check vcs permalinks
description: Ensures that links to vcs websites are permalinks. description: Ensures that links to vcs websites are permalinks.
entry: check-vcs-permalinks entry: check-vcs-permalinks
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-xml - id: check-xml
name: Check Xml name: Check Xml
description: This hook checks xml files for parseable syntax. description: This hook checks xml files for parseable syntax.
entry: check-xml entry: check-xml
language: python language: python
types: [xml] types: [xml]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-yaml - id: check-yaml
name: Check Yaml name: Check Yaml
description: This hook checks yaml files for parseable syntax. description: This hook checks yaml files for parseable syntax.
entry: check-yaml entry: check-yaml
language: python language: python
types: [yaml] types: [yaml]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: debug-statements - id: debug-statements
name: Debug Statements (Python) name: Debug Statements (Python)
description: Check for debugger imports and py37+ `breakpoint()` calls in python source. description: Check for debugger imports and py37+ `breakpoint()` calls in python source.
entry: debug-statement-hook entry: debug-statement-hook
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: detect-aws-credentials - id: detect-aws-credentials
name: Detect AWS Credentials name: Detect AWS Credentials
description: Detects *your* aws credentials from the aws cli credentials file description: Detects *your* aws credentials from the aws cli credentials file
entry: detect-aws-credentials entry: detect-aws-credentials
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: detect-private-key - id: detect-private-key
name: Detect Private Key name: Detect Private Key
description: Detects the presence of private keys description: Detects the presence of private keys
entry: detect-private-key entry: detect-private-key
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: double-quote-string-fixer - id: double-quote-string-fixer
name: Fix double quoted strings name: Fix double quoted strings
description: This hook replaces double quoted strings with single quoted strings description: This hook replaces double quoted strings with single quoted strings
entry: double-quote-string-fixer entry: double-quote-string-fixer
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: end-of-file-fixer - id: end-of-file-fixer
name: Fix End of Files name: Fix End of Files
description: Ensures that a file is either empty, or ends with one newline. description: Ensures that a file is either empty, or ends with one newline.
@ -175,9 +118,6 @@
language: python language: python
types: [text] types: [text]
stages: [commit, push, manual] stages: [commit, push, manual]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: file-contents-sorter - id: file-contents-sorter
name: File Contents Sorter name: File Contents Sorter
description: Sort the lines in specified files (defaults to alphabetical). You must provide list of target files as input in your .pre-commit-config.yaml file. description: Sort the lines in specified files (defaults to alphabetical). You must provide list of target files as input in your .pre-commit-config.yaml file.
@ -190,35 +130,23 @@
entry: fix-encoding-pragma entry: fix-encoding-pragma
description: 'Add # -*- coding: utf-8 -*- to the top of python files' description: 'Add # -*- coding: utf-8 -*- to the top of python files'
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: flake8 - id: flake8
name: Flake8 name: Flake8
description: This hook runs flake8. description: This hook runs flake8.
entry: flake8 entry: flake8
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: forbid-new-submodules - id: forbid-new-submodules
name: Forbid new submodules name: Forbid new submodules
language: python language: python
entry: forbid-new-submodules entry: forbid-new-submodules
description: Prevent addition of new git submodules description: Prevent addition of new git submodules
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: mixed-line-ending - id: mixed-line-ending
name: Mixed line ending name: Mixed line ending
description: Replaces or checks mixed line ending description: Replaces or checks mixed line ending
entry: mixed-line-ending entry: mixed-line-ending
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: name-tests-test - id: name-tests-test
name: Tests should end in _test.py name: Tests should end in _test.py
description: This verifies that test files are named correctly description: This verifies that test files are named correctly
@ -231,18 +159,12 @@
language: python language: python
pass_filenames: false pass_filenames: false
always_run: true always_run: true
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: pyflakes - id: pyflakes
name: Pyflakes (DEPRECATED, use flake8) name: Pyflakes (DEPRECATED, use flake8)
description: This hook runs pyflakes. (This is deprecated, use flake8). description: This hook runs pyflakes. (This is deprecated, use flake8).
entry: pyflakes entry: pyflakes
language: python language: python
types: [python] types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
- id: requirements-txt-fixer - id: requirements-txt-fixer
name: Fix requirements.txt name: Fix requirements.txt
description: Sorts entries in requirements.txt description: Sorts entries in requirements.txt
@ -261,6 +183,3 @@
entry: trailing-whitespace-fixer entry: trailing-whitespace-fixer
language: python language: python
types: [text] types: [text]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0

View file

@ -1,186 +0,0 @@
- id: autopep8-wrapper
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-added-large-files
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-ast
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-builtin-literals
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-byte-order-marker
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-case-conflict
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-docstring-first
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-executables-have-shebangs
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-json
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: pretty-format-json
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-merge-conflict
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-symlinks
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-vcs-permalinks
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-xml
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: check-yaml
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: debug-statements
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: detect-aws-credentials
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: detect-private-key
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: double-quote-string-fixer
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: end-of-file-fixer
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: file-contents-sorter
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: fix-encoding-pragma
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: flake8
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: forbid-new-submodules
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: mixed-line-ending
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: name-tests-test
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: no-commit-to-branch
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: pyflakes
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: requirements-txt-fixer
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: sort-simple-yaml
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0
- id: trailing-whitespace
language: system
name: upgrade-your-pre-commit-version
entry: upgrade-your-pre-commit-version
files: ''
minimum_pre_commit_version: 0.15.0

View file

@ -1,43 +0,0 @@
from __future__ import absolute_import
from __future__ import unicode_literals
import io
import yaml
def _assert_parseable_in_old_pre_commit(hooks):
for hook in hooks:
assert {'id', 'name', 'entry', 'files', 'language'} <= set(hook)
def test_legacy_hooks():
with io.open('hooks.yaml', encoding='UTF-8') as legacy_file:
legacy = yaml.load(legacy_file.read())
with io.open('.pre-commit-hooks.yaml', encoding='UTF-8') as hooks_file:
hooks = yaml.load(hooks_file.read())
# The same set of hooks should be defined in both files
new_hook_ids = {hook['id'] for hook in hooks}
legacy_hook_ids = {hook['id'] for hook in legacy}
assert new_hook_ids == legacy_hook_ids
# Both files should be parseable by pre-commit<0.15.0
_assert_parseable_in_old_pre_commit(legacy)
_assert_parseable_in_old_pre_commit(hooks)
# The legacy file should force upgrading
for hook in legacy:
del hook['id']
assert hook == {
'language': 'system',
'name': 'upgrade-your-pre-commit-version',
'entry': 'upgrade-your-pre-commit-version',
'files': '',
'minimum_pre_commit_version': '0.15.0',
}
# Each hook should require a new version if it uses types
for hook in hooks:
if 'types' in hook:
assert hook['minimum_pre_commit_version'] == '0.15.0'