diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 7227991..a913888 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v4.6.0 hooks: - id: trailing-whitespace args: [--markdown-linebreak-ext=.gitignore] @@ -13,6 +13,30 @@ repos: - id: go-imports args: [-w] - repo: https://github.com/golangci/golangci-lint - rev: v1.53.3 + rev: v1.59.1 hooks: - id: golangci-lint +- repo: https://github.com/asottile/setup-cfg-fmt + rev: v2.5.0 + hooks: + - id: setup-cfg-fmt + +- repo: https://github.com/asottile/reorder-python-imports + rev: v3.13.0 + hooks: + - id: reorder-python-imports + args: [--py38-plus, --add-import, 'from __future__ import annotations'] +- repo: https://github.com/asottile/add-trailing-comma + rev: v3.1.0 + hooks: + - id: add-trailing-comma +- repo: https://github.com/asottile/pyupgrade + rev: v3.17.0 + hooks: + - id: pyupgrade + args: [--py38-plus] + exclude: tests +- repo: https://github.com/hhatto/autopep8 + rev: v2.3.1 + hooks: + - id: autopep8 diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..0ddbeb4 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,60 @@ +[metadata] +name = comic_hasher +description = python tools to support comic-hasher +long_description = file: README.md +long_description_content_type = text/markdown +url = https://gitea.narnian.us/lordwelch/comic-hasher +author = Timmy Welch +author_email = timmy@narnian.us +license = MIT +license_files = LICENSE +classifiers = + License :: OSI Approved :: MIT License + Programming Language :: Python :: 3 + Programming Language :: Python :: 3 :: Only + Programming Language :: Python :: Implementation :: CPython + Programming Language :: Python :: Implementation :: PyPy + +[options] +packages = find: +install_requires = + comictagger>=1.6.0a21 +python_requires = >=3.9 +include_package_data = True + +[options.package_data] +settngs = py.typed + +[pep8] +ignore = E265,E501 +max_line_length = 120 + +[flake8] +extend-ignore = E501, A003 +max_line_length = 120 +per-file-ignores = + *_test.py: LN001 + +[coverage:run] +plugins = covdefaults + +[coverage:report] +fail_under = 95 + +[mypy] +check_untyped_defs = true +disallow_any_generics = true +warn_return_any = true +disallow_incomplete_defs = true +disallow_untyped_defs = true +no_implicit_optional = true +warn_redundant_casts = true +warn_unused_ignores = true + +[mypy-testing.*] +warn_return_any = false +disallow_untyped_defs = false + +[mypy-tests.*] +warn_return_any = false +disallow_untyped_defs = false