Repository: pre-commit/pre-commit-hooks
Pull request #166 (2017-01-22 02:05:40)

Add .pre-commit-hooks.yaml for forward compatibility
See pre-commit/pre-commit#470


Patch:
diff --git a/.pre-commit-hooks.yaml b/.pre-commit-hooks.yaml
new file mode 100644
index 0000000..0604585
--- /dev/null
+++ b/.pre-commit-hooks.yaml
@@ -0,0 +1,149 @@
+-   id: autopep8-wrapper
+    name: autopep8 wrapper
+    description: "Runs autopep8 over python source.  If you configure additional arguments you'll want to at least include -i."
+    entry: autopep8-wrapper
+    language: python
+    files: \.py$
+    args: [-i]
+-   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
+    # Match all files
+    files: ''
+-   id: check-ast
+    name: Check python ast
+    description: Simply check whether the files parse as valid python.
+    entry: check-ast
+    language: python
+    files: '\.py$'
+-   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
+    files: '\.py$'
+-   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
+    # Match all files
+    files: ''
+-   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
+    files: \.py$
+-   id: check-json
+    name: Check JSON
+    description: This hook checks json files for parseable syntax.
+    entry: check-json
+    language: python
+    files: \.json$
+-   id: pretty-format-json
+    name: Pretty format JSON
+    description: This hook sets a standard for formatting JSON files.
+    entry: pretty-format-json
+    language: python
+    files: \.json$
+-   id: check-merge-conflict
+    name: Check for merge conflicts
+    description: Check for files that contain merge conflict strings.
+    entry: check-merge-conflict
+    language: python
+    # Match all files
+    files: ''
+-   id: check-symlinks
+    name: Check for broken symlinks
+    description: Checks for symlinks which do not point to anything.
+    entry: check-symlinks
+    language: python
+    # Match all files
+    files: ''
+-   id: check-xml
+    name: Check Xml
+    description: This hook checks xml files for parseable syntax.
+    entry: check-xml
+    language: python
+    files: \.xml$
+-   id: check-yaml
+    name: Check Yaml
+    description: This hook checks yaml files for parseable syntax.
+    entry: check-yaml
+    language: python
+    files: \.(yaml|yml|eyaml)$
+-   id: debug-statements
+    name: Debug Statements (Python)
+    description: This hook checks that debug statements (pdb, ipdb, pudb) are not imported on commit.
+    entry: debug-statement-hook
+    language: python
+    files: \.py$
+-   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
+    files: ''
+-   id: detect-private-key
+    name: Detect Private Key
+    description: Detects the presence of private keys
+    entry: detect-private-key
+    language: python
+    files: ''
+-   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
+    files: \.py$
+-   id: end-of-file-fixer
+    name: Fix End of Files
+    description: Ensures that a file is either empty, or ends with one newline.
+    entry: end-of-file-fixer
+    language: python
+    files: \.(asciidoc|adoc|coffee|cpp|css|c|ejs|erb|groovy|h|haml|hh|hpp|hxx|html|in|j2|jade|json|js|less|markdown|md|ml|mli|pp|py|rb|rs|R|scala|scss|sh|slim|tex|tmpl|ts|txt|yaml|yml)$
+-   id: fix-encoding-pragma
+    name: Fix python encoding pragma
+    language: python
+    entry: fix-encoding-pragma
+    description: 'Add # -*- coding: utf-8 -*- to the top of python files'
+    files: \.py$
+-   id: flake8
+    name: Flake8
+    description: This hook runs flake8.
+    entry: flake8
+    language: python
+    files: \.py$
+-   id: forbid-new-submodules
+    name: Forbid new submodules
+    language: python
+    entry: forbid-new-submodules
+    description: Prevent addition of new git submodules
+    files: ''
+-   id: name-tests-test
+    name: Tests should end in _test.py
+    description: This verifies that test files are named correctly
+    entry: name-tests-test
+    language: python
+    files: tests/.+\.py$
+-   id: pyflakes
+    name: Pyflakes (DEPRECATED, use flake8)
+    description: This hook runs pyflakes. (This is deprecated, use flake8).
+    entry: pyflakes
+    language: python
+    files: \.py$
+-   id: requirements-txt-fixer
+    name: Fix requirements.txt
+    description: Sorts entries in requirements.txt
+    entry: requirements-txt-fixer
+    language: python
+    files: requirements.*\.txt$
+-   id: trailing-whitespace
+    name: Trim Trailing Whitespace
+    description: This hook trims trailing whitespace.
+    entry: trailing-whitespace-fixer
+    language: python
+    files: \.(asciidoc|adoc|coffee|cpp|css|c|ejs|erb|groovy|h|haml|hh|hpp|hxx|html|in|j2|jade|json|js|less|markdown|md|ml|mli|pp|py|rb|rs|R|scala|scss|sh|slim|tex|tmpl|ts|txt|yaml|yml)$


Test patch:
diff --git a/tests/meta_test.py b/tests/meta_test.py
new file mode 100644
index 0000000..202b3d7
--- /dev/null
+++ b/tests/meta_test.py
@@ -0,0 +1,7 @@
+import io
+
+
+def test_hooks_yaml_same_contents():
+    legacy_contents = io.open('hooks.yaml').read()
+    contents = io.open('.pre-commit-hooks.yaml').read()
+    assert legacy_contents == contents