mirror of
https://github.com/pre-commit/pre-commit-hooks.git
synced 2026-03-29 10:16:52 +00:00
Sync fork (#1)
* [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/setup-cfg-fmt: v2.1.0 → v2.2.0](https://github.com/asottile/setup-cfg-fmt/compare/v2.1.0...v2.2.0) - [github.com/asottile/reorder_python_imports: v3.8.5 → v3.9.0](https://github.com/asottile/reorder_python_imports/compare/v3.8.5...v3.9.0) - [github.com/asottile/pyupgrade: v3.1.0 → v3.2.0](https://github.com/asottile/pyupgrade/compare/v3.1.0...v3.2.0) - [github.com/pre-commit/mirrors-autopep8: v1.7.0 → v2.0.0](https://github.com/pre-commit/mirrors-autopep8/compare/v1.7.0...v2.0.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.2.0 → v3.2.2](https://github.com/asottile/pyupgrade/compare/v3.2.0...v3.2.2) - [github.com/pre-commit/mirrors-mypy: v0.982 → v0.990](https://github.com/pre-commit/mirrors-mypy/compare/v0.982...v0.990) * remove no_implicit_optional this is the default in mypy 0.990 Committed via https://github.com/asottile/all-repos * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v0.990 → v0.991](https://github.com/pre-commit/mirrors-mypy/compare/v0.990...v0.991) * v4.4.0 * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/PyCQA/flake8: 5.0.4 → 6.0.0](https://github.com/PyCQA/flake8/compare/5.0.4...6.0.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.2.2 → v3.3.0](https://github.com/asottile/pyupgrade/compare/v3.2.2...v3.3.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/add-trailing-comma: v2.3.0 → v2.4.0](https://github.com/asottile/add-trailing-comma/compare/v2.3.0...v2.4.0) - [github.com/asottile/pyupgrade: v3.3.0 → v3.3.1](https://github.com/asottile/pyupgrade/compare/v3.3.0...v3.3.1) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-autopep8: v2.0.0 → v2.0.1](https://github.com/pre-commit/mirrors-autopep8/compare/v2.0.0...v2.0.1) * azure pipelines -> github actions * add constraints file to requirements-txt-fixer files * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v0.991 → v1.0.0](https://github.com/pre-commit/mirrors-mypy/compare/v0.991...v1.0.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.0.0 → v1.0.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.0.0...v1.0.1) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-autopep8: v2.0.1 → v2.0.2](https://github.com/pre-commit/mirrors-autopep8/compare/v2.0.1...v2.0.2) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.0.1 → v1.1.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.0.1...v1.1.1) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.1.1 → v1.2.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.1.1...v1.2.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.3.1 → v3.3.2](https://github.com/asottile/pyupgrade/compare/v3.3.1...v3.3.2) * [pre-commit.ci] pre-commit autoupdate updates: - https://github.com/asottile/reorder_python_imports → https://github.com/asottile/reorder-python-imports - [github.com/asottile/pyupgrade: v3.3.2 → v3.4.0](https://github.com/asottile/pyupgrade/compare/v3.3.2...v3.4.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.2.0 → v1.3.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.2.0...v1.3.0) * fix tags trigger for github actions the old syntax worked for azure pipelines but not GHA Committed via https://github.com/asottile/all-repos * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/setup-cfg-fmt: v2.2.0 → v2.3.0](https://github.com/asottile/setup-cfg-fmt/compare/v2.2.0...v2.3.0) * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/add-trailing-comma: v2.4.0 → v2.5.1](https://github.com/asottile/add-trailing-comma/compare/v2.4.0...v2.5.1) - [github.com/asottile/pyupgrade: v3.4.0 → v3.6.0](https://github.com/asottile/pyupgrade/compare/v3.4.0...v3.6.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/reorder-python-imports: v3.9.0 → v3.10.0](https://github.com/asottile/reorder-python-imports/compare/v3.9.0...v3.10.0) - [github.com/asottile/pyupgrade: v3.6.0 → v3.7.0](https://github.com/asottile/pyupgrade/compare/v3.6.0...v3.7.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.3.0 → v1.4.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.3.0...v1.4.1) * py38-plus Committed via https://github.com/asottile/all-repos * shlex.join is always available in 3.8+ * Fix missing file-contents-sorter options in the README * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.8.0 → v3.9.0](https://github.com/asottile/pyupgrade/compare/v3.8.0...v3.9.0) * Fix a typo in check_yaml * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/add-trailing-comma: v3.0.0 → v3.0.1](https://github.com/asottile/add-trailing-comma/compare/v3.0.0...v3.0.1) - [github.com/asottile/pyupgrade: v3.9.0 → v3.10.1](https://github.com/asottile/pyupgrade/compare/v3.9.0...v3.10.1) - [github.com/PyCQA/flake8: 6.0.0 → 6.1.0](https://github.com/PyCQA/flake8/compare/6.0.0...6.1.0) * Add bpdb to debug_statements_hook This patch adds the bpython debugger import `bpdb` to the debug_statements_hook. * Fix blank lines As stated in the documentation: `Note that this hook WILL remove blank lines` Previously this hook would always add blank a blank line. With this fix, if the file is empty, a newline will not be added, and multpline blanklines in a file will be removed. Fixes #935 * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.4.1 → v1.5.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.4.1...v1.5.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.5.0 → v1.5.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.5.0...v1.5.1) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-autopep8: v2.0.2 → v2.0.4](https://github.com/pre-commit/mirrors-autopep8/compare/v2.0.2...v2.0.4) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/add-trailing-comma: v3.0.1 → v3.1.0](https://github.com/asottile/add-trailing-comma/compare/v3.0.1...v3.1.0) - https://github.com/pre-commit/mirrors-autopep8 → https://github.com/hhatto/autopep8 * Document newline behavior of `file-contents-sorter` * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/reorder-python-imports: v3.10.0 → v3.11.0](https://github.com/asottile/reorder-python-imports/compare/v3.10.0...v3.11.0) - [github.com/asottile/pyupgrade: v3.10.1 → v3.11.0](https://github.com/asottile/pyupgrade/compare/v3.10.1...v3.11.0) * Remove redundant int() conversion * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.11.0 → v3.13.0](https://github.com/asottile/pyupgrade/compare/v3.11.0...v3.13.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/setup-cfg-fmt: v2.4.0 → v2.5.0](https://github.com/asottile/setup-cfg-fmt/compare/v2.4.0...v2.5.0) - [github.com/asottile/reorder-python-imports: v3.11.0 → v3.12.0](https://github.com/asottile/reorder-python-imports/compare/v3.11.0...v3.12.0) - [github.com/asottile/pyupgrade: v3.13.0 → v3.14.0](https://github.com/asottile/pyupgrade/compare/v3.13.0...v3.14.0) * don't rewrite string quotes inside f-strings * v4.5.0 * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.14.0 → v3.15.0](https://github.com/asottile/pyupgrade/compare/v3.14.0...v3.15.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.5.1 → v1.6.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.5.1...v1.6.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.6.0 → v1.6.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.6.0...v1.6.1) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.6.1 → v1.7.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.6.1...v1.7.0) * [pre-commit.ci] pre-commit autoupdate updates: - [github.com/pre-commit/mirrors-mypy: v1.7.0 → v1.7.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.7.0...v1.7.1) --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Anthony Sottile <asottile@umich.edu> Co-authored-by: Lev Blit <levblt1@gmail.com> Co-authored-by: Abel Soares Siqueira <abel.s.siqueira@gmail.com> Co-authored-by: Viktor Szépe <viktor@szepe.net> Co-authored-by: mwip <matthias.weigand@protonmail.com> Co-authored-by: Roel Adriaans <roel@adriaans.org> Co-authored-by: Max R <mxr@users.noreply.github.com> Co-authored-by: Mészáros Gergely <maetveis@gmail.com> Co-authored-by: Miroslav Šedivý <6774676+eumiro@users.noreply.github.com>
This commit is contained in:
parent
4dcb74a498
commit
887db502c6
16 changed files with 109 additions and 62 deletions
19
.github/workflows/main.yml
vendored
Normal file
19
.github/workflows/main.yml
vendored
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
name: main
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main, test-me-*]
|
||||
tags: '*'
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
main-windows:
|
||||
uses: asottile/workflows/.github/workflows/tox.yml@v1.5.0
|
||||
with:
|
||||
env: '["py38"]'
|
||||
os: windows-latest
|
||||
main-linux:
|
||||
uses: asottile/workflows/.github/workflows/tox.yml@v1.5.0
|
||||
with:
|
||||
env: '["py38", "py39", "py310", "py311"]'
|
||||
os: ubuntu-latest
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.3.0
|
||||
rev: v4.5.0
|
||||
hooks:
|
||||
- id: trailing-whitespace
|
||||
- id: end-of-file-fixer
|
||||
|
|
@ -10,34 +10,33 @@ repos:
|
|||
- id: name-tests-test
|
||||
- id: requirements-txt-fixer
|
||||
- repo: https://github.com/asottile/setup-cfg-fmt
|
||||
rev: v2.1.0
|
||||
rev: v2.5.0
|
||||
hooks:
|
||||
- id: setup-cfg-fmt
|
||||
- repo: https://github.com/asottile/reorder_python_imports
|
||||
rev: v3.8.5
|
||||
- repo: https://github.com/asottile/reorder-python-imports
|
||||
rev: v3.12.0
|
||||
hooks:
|
||||
- id: reorder-python-imports
|
||||
args: [--py37-plus, --add-import, 'from __future__ import annotations']
|
||||
args: [--py38-plus, --add-import, 'from __future__ import annotations']
|
||||
- repo: https://github.com/asottile/add-trailing-comma
|
||||
rev: v2.3.0
|
||||
hooks:
|
||||
- id: add-trailing-comma
|
||||
args: [--py36-plus]
|
||||
- repo: https://github.com/asottile/pyupgrade
|
||||
rev: v3.1.0
|
||||
hooks:
|
||||
- id: add-trailing-comma
|
||||
- repo: https://github.com/asottile/pyupgrade
|
||||
rev: v3.15.0
|
||||
hooks:
|
||||
- id: pyupgrade
|
||||
args: [--py37-plus]
|
||||
- repo: https://github.com/pre-commit/mirrors-autopep8
|
||||
rev: v1.7.0
|
||||
args: [--py38-plus]
|
||||
- repo: https://github.com/hhatto/autopep8
|
||||
rev: v2.0.4
|
||||
hooks:
|
||||
- id: autopep8
|
||||
- repo: https://github.com/PyCQA/flake8
|
||||
rev: 5.0.4
|
||||
rev: 6.1.0
|
||||
hooks:
|
||||
- id: flake8
|
||||
- repo: https://github.com/pre-commit/mirrors-mypy
|
||||
rev: v0.982
|
||||
rev: v1.7.1
|
||||
hooks:
|
||||
- id: mypy
|
||||
additional_dependencies: [types-all]
|
||||
|
|
|
|||
|
|
@ -185,7 +185,7 @@
|
|||
description: sorts entries in requirements.txt.
|
||||
entry: requirements-txt-fixer
|
||||
language: python
|
||||
files: requirements.*\.txt$
|
||||
files: (requirements|constraints).*\.txt$
|
||||
- id: sort-simple-yaml
|
||||
name: sort simple yaml files
|
||||
description: sorts simple yaml files which consist only of top-level keys, preserving comments and blocks.
|
||||
|
|
|
|||
32
CHANGELOG.md
32
CHANGELOG.md
|
|
@ -1,3 +1,35 @@
|
|||
4.5.0 - 2023-10-07
|
||||
==================
|
||||
|
||||
### Features
|
||||
- `requirements-txt-fixer`: also sort `constraints.txt` by default.
|
||||
- #857 PR by @lev-blit.
|
||||
- #830 issue by @PLPeeters.
|
||||
- `debug-statements`: add `bpdb` debugger.
|
||||
- #942 PR by @mwip.
|
||||
- #941 issue by @mwip.
|
||||
|
||||
### Fixes
|
||||
- `file-contents-sorter`: fix sorting an empty file.
|
||||
- #944 PR by @RoelAdriaans.
|
||||
- #935 issue by @paduszyk.
|
||||
- `double-quote-string-fixer`: don't rewrite inside f-strings in 3.12+.
|
||||
- #973 PR by @asottile.
|
||||
- #971 issue by @XuehaiPan.
|
||||
|
||||
## Migrating
|
||||
- now requires python >= 3.8.
|
||||
- #926 PR by @asottile.
|
||||
- #927 PR by @asottile.
|
||||
|
||||
4.4.0 - 2022-11-23
|
||||
==================
|
||||
|
||||
### Features
|
||||
- `forbid-submodules`: new hook which outright bans submodules.
|
||||
- #815 PR by @asottile.
|
||||
- #707 issue by @ChiefGokhlayeh.
|
||||
|
||||
4.3.0 - 2022-06-07
|
||||
==================
|
||||
|
||||
|
|
|
|||
16
README.md
16
README.md
|
|
@ -1,5 +1,4 @@
|
|||
[](https://asottile.visualstudio.com/asottile/_build/latest?definitionId=17&branchName=main)
|
||||
[](https://dev.azure.com/asottile/asottile/_build/latest?definitionId=17&branchName=main)
|
||||
[](https://github.com/pre-commit/pre-commit-hooks/actions/workflows/main.yml)
|
||||
[](https://results.pre-commit.ci/latest/github/pre-commit/pre-commit-hooks/main)
|
||||
|
||||
pre-commit-hooks
|
||||
|
|
@ -16,7 +15,7 @@ Add this to your `.pre-commit-config.yaml`
|
|||
|
||||
```yaml
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.3.0 # Use the ref you want to point at
|
||||
rev: v4.5.0 # Use the ref you want to point at
|
||||
hooks:
|
||||
- id: trailing-whitespace
|
||||
# - id: ...
|
||||
|
|
@ -118,6 +117,11 @@ Makes sure files end in a newline and only a newline.
|
|||
Sort the lines in specified files (defaults to alphabetical).
|
||||
You must provide the target [`files`](https://pre-commit.com/#config-files) as input.
|
||||
Note that this hook WILL remove blank lines and does NOT respect any comments.
|
||||
All newlines will be converted to line feeds (`\n`).
|
||||
|
||||
The following arguments are available:
|
||||
- `--ignore-case` - fold lower case to upper case characters.
|
||||
- `--unique` - ensure each line is unique.
|
||||
|
||||
#### `fix-byte-order-marker`
|
||||
removes UTF-8 byte order marker
|
||||
|
|
@ -126,10 +130,6 @@ removes UTF-8 byte order marker
|
|||
Add `# -*- coding: utf-8 -*-` to the top of python files.
|
||||
- To remove the coding pragma pass `--remove` (useful in a python3-only codebase)
|
||||
|
||||
The following arguments are available:
|
||||
- `--ignore-case` - fold lower case to upper case characters.
|
||||
- `--unique` - ensure each line is unique.
|
||||
|
||||
#### `forbid-new-submodules`
|
||||
Prevent addition of new git submodules.
|
||||
|
||||
|
|
@ -180,7 +180,7 @@ the following commandline options:
|
|||
- `--top-keys comma,separated,keys` - Keys to keep at the top of mappings.
|
||||
|
||||
#### `requirements-txt-fixer`
|
||||
Sorts entries in requirements.txt and removes incorrect entry for `pkg-resources==0.0.0`
|
||||
Sorts entries in requirements.txt and constraints.txt and removes incorrect entry for `pkg-resources==0.0.0`
|
||||
|
||||
#### `sort-simple-yaml`
|
||||
Sorts simple YAML files which consist only of top-level
|
||||
|
|
|
|||
|
|
@ -1,23 +0,0 @@
|
|||
trigger:
|
||||
branches:
|
||||
include: [main, test-me-*]
|
||||
tags:
|
||||
include: ['*']
|
||||
|
||||
resources:
|
||||
repositories:
|
||||
- repository: asottile
|
||||
type: github
|
||||
endpoint: github
|
||||
name: asottile/azure-pipeline-templates
|
||||
ref: refs/tags/v2.4.0
|
||||
|
||||
jobs:
|
||||
- template: job--python-tox.yml@asottile
|
||||
parameters:
|
||||
toxenvs: [py38]
|
||||
os: windows
|
||||
- template: job--python-tox.yml@asottile
|
||||
parameters:
|
||||
toxenvs: [py37, py38, py39, py310]
|
||||
os: linux
|
||||
|
|
@ -46,7 +46,7 @@ def find_large_added_files(
|
|||
filenames_filtered &= added_files()
|
||||
|
||||
for filename in filenames_filtered:
|
||||
kb = int(math.ceil(os.stat(filename).st_size / 1024))
|
||||
kb = math.ceil(os.stat(filename).st_size / 1024)
|
||||
if kb > maxkb:
|
||||
print(f'{filename} ({kb} KB) exceeds {maxkb} KB.')
|
||||
retv = 1
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ def main(argv: Sequence[str] | None = None) -> int:
|
|||
'--unsafe', action='store_true',
|
||||
help=(
|
||||
'Instead of loading the files, simply parse them for syntax. '
|
||||
'A syntax-only check enables extensions and unsafe contstructs '
|
||||
'A syntax-only check enables extensions and unsafe constructs '
|
||||
'which would otherwise be forbidden. Using this option removes '
|
||||
'all guarantees of portability to other yaml implementations. '
|
||||
'Implies --allow-multiple-documents'
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ from typing import Sequence
|
|||
|
||||
|
||||
DEBUG_STATEMENTS = {
|
||||
'bpdb',
|
||||
'ipdb',
|
||||
'pdb',
|
||||
'pdbr',
|
||||
|
|
|
|||
|
|
@ -76,11 +76,7 @@ def main(argv: Sequence[str] | None = None) -> int:
|
|||
for destroyed_link in destroyed_links:
|
||||
print(f'- {destroyed_link}')
|
||||
print('You should unstage affected files:')
|
||||
print(
|
||||
'\tgit reset HEAD -- {}'.format(
|
||||
' '.join(shlex.quote(link) for link in destroyed_links),
|
||||
),
|
||||
)
|
||||
print(f'\tgit reset HEAD -- {shlex.join(destroyed_links)}')
|
||||
print(
|
||||
'And retry commit. As a long term solution '
|
||||
'you may try to explicitly tell git that your '
|
||||
|
|
|
|||
|
|
@ -37,7 +37,10 @@ def sort_file_contents(
|
|||
after = sorted(lines, key=key)
|
||||
|
||||
before_string = b''.join(before)
|
||||
after_string = b'\n'.join(after) + b'\n'
|
||||
after_string = b'\n'.join(after)
|
||||
|
||||
if after_string:
|
||||
after_string += b'\n'
|
||||
|
||||
if before_string == after_string:
|
||||
return PASS
|
||||
|
|
|
|||
|
|
@ -3,9 +3,16 @@ from __future__ import annotations
|
|||
import argparse
|
||||
import io
|
||||
import re
|
||||
import sys
|
||||
import tokenize
|
||||
from typing import Sequence
|
||||
|
||||
if sys.version_info >= (3, 12): # pragma: >=3.12 cover
|
||||
FSTRING_START = tokenize.FSTRING_START
|
||||
FSTRING_END = tokenize.FSTRING_END
|
||||
else: # pragma: <3.12 cover
|
||||
FSTRING_START = FSTRING_END = -1
|
||||
|
||||
START_QUOTE_RE = re.compile('^[a-zA-Z]*"')
|
||||
|
||||
|
||||
|
|
@ -40,11 +47,17 @@ def fix_strings(filename: str) -> int:
|
|||
# Basically a mutable string
|
||||
splitcontents = list(contents)
|
||||
|
||||
fstring_depth = 0
|
||||
|
||||
# Iterate in reverse so the offsets are always correct
|
||||
tokens_l = list(tokenize.generate_tokens(io.StringIO(contents).readline))
|
||||
tokens = reversed(tokens_l)
|
||||
for token_type, token_text, (srow, scol), (erow, ecol), _ in tokens:
|
||||
if token_type == tokenize.STRING:
|
||||
if token_type == FSTRING_START: # pragma: >=3.12 cover
|
||||
fstring_depth += 1
|
||||
elif token_type == FSTRING_END: # pragma: >=3.12 cover
|
||||
fstring_depth -= 1
|
||||
elif fstring_depth == 0 and token_type == tokenize.STRING:
|
||||
new_text = handle_match(token_text)
|
||||
splitcontents[
|
||||
line_offsets[srow] + scol:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[metadata]
|
||||
name = pre_commit_hooks
|
||||
version = 4.3.0
|
||||
version = 4.5.0
|
||||
description = Some out-of-the-box hooks for pre-commit.
|
||||
long_description = file: README.md
|
||||
long_description_content_type = text/markdown
|
||||
|
|
@ -8,7 +8,7 @@ url = https://github.com/pre-commit/pre-commit-hooks
|
|||
author = Anthony Sottile
|
||||
author_email = asottile@umich.edu
|
||||
license = MIT
|
||||
license_file = LICENSE
|
||||
license_files = LICENSE
|
||||
classifiers =
|
||||
License :: OSI Approved :: MIT License
|
||||
Programming Language :: Python :: 3
|
||||
|
|
@ -21,7 +21,7 @@ packages = find:
|
|||
install_requires =
|
||||
ruamel.yaml>=0.15
|
||||
tomli>=1.1.0;python_version<"3.11"
|
||||
python_requires = >=3.7
|
||||
python_requires = >=3.8
|
||||
|
||||
[options.packages.find]
|
||||
exclude =
|
||||
|
|
@ -75,7 +75,6 @@ check_untyped_defs = true
|
|||
disallow_any_generics = true
|
||||
disallow_incomplete_defs = true
|
||||
disallow_untyped_defs = true
|
||||
no_implicit_optional = true
|
||||
warn_redundant_casts = true
|
||||
warn_unused_ignores = true
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,9 @@ from pre_commit_hooks.file_contents_sorter import PASS
|
|||
@pytest.mark.parametrize(
|
||||
('input_s', 'argv', 'expected_retval', 'output'),
|
||||
(
|
||||
(b'', [], FAIL, b'\n'),
|
||||
(b'', [], PASS, b''),
|
||||
(b'\n', [], FAIL, b''),
|
||||
(b'\n\n', [], FAIL, b''),
|
||||
(b'lonesome\n', [], PASS, b'lonesome\n'),
|
||||
(b'missing_newline', [], FAIL, b'missing_newline\n'),
|
||||
(b'newline\nmissing', [], FAIL, b'missing\nnewline\n'),
|
||||
|
|
|
|||
|
|
@ -37,6 +37,12 @@ TESTS = (
|
|||
1,
|
||||
),
|
||||
('"foo""bar"', "'foo''bar'", 1),
|
||||
pytest.param(
|
||||
"f'hello{\"world\"}'",
|
||||
"f'hello{\"world\"}'",
|
||||
0,
|
||||
id='ignore nested fstrings',
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
|
|
|
|||
2
tox.ini
2
tox.ini
|
|
@ -1,5 +1,5 @@
|
|||
[tox]
|
||||
envlist = py37,py38,pypy3,pre-commit
|
||||
envlist = py,pre-commit
|
||||
|
||||
[testenv]
|
||||
deps = -rrequirements-dev.txt
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue