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