https://github.com/praw-dev/praw
Tip revision: f9bc8044e07cf651e12de8509fc6c7d57da1b7dc authored by Joel Payne on 29 January 2024, 15:51:21 UTC
Merge pull request #2013 from praw-dev/update/pre-commit-hooks
Merge pull request #2013 from praw-dev/update/pre-commit-hooks
Tip revision: f9bc804
pyproject.toml
[build-system]
build-backend = "flit_core.buildapi"
requires = ["flit_core >=3.4,<4"]
[project]
authors = [{name = "Bryce Boe", email = "bbzbryce@gmail.com"}]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Utilities"
]
dependencies = [
"prawcore >=2.1, <3",
"update_checker >=0.18",
"websocket-client >=0.54.0"
]
dynamic = ["version", "description"]
keywords = ["reddit", "api", "wrapper"]
license = {file = "LICENSE.txt"}
maintainers = [
{name = "Bryce Boe", email = "bbzbryce@gmail.com"},
{name = "Joe RH", email = "jarhill0@gmail.com"},
{name = "Joel Payne", email = "lilspazjoekp@gmail.com"}
]
name = "praw"
readme = "README.rst"
requires-python = "~=3.8"
[project.optional-dependencies]
ci = ["coveralls"]
dev = [
"packaging",
"praw[lint]",
"praw[test]"
]
lint = [
"praw[readthedocs]",
"pre-commit",
"ruff >=0.0.291"
]
readthedocs = [
"furo",
"sphinx"
]
test = [
"betamax >=0.8, <0.9",
"betamax-matchers >=0.3.0, <0.5",
"pytest >=2.7.3",
"requests >=2.20.1, <3",
"urllib3 ==1.26.*, <2"
]
[project.urls]
"Change Log" = "https://praw.readthedocs.io/en/latest/package_info/change_log.html"
"Documentation" = "https://praw.readthedocs.io/"
"Issue Tracker" = "https://github.com/praw-dev/praw/issues"
"Source Code" = "https://github.com/praw-dev/praw"
[tool.black]
extend_exclude = '/(\.venv.*)/'
line-length = 88
[tool.docstrfmt]
extend_exclude = ['./docs/examples/']
[tool.isort]
profile = 'black'
skip_glob = '.venv*'
[tool.ruff]
target-version = "py38"
include = [
"praw/**/*.py"
]
ignore = [
"A002", # shadowing built-in
"ANN101", # missing type annotation for self in method
"ANN102", # missing type annotation for cls in classmethod
"ANN202", # missing return type for private method
"ANN401", # typing.Any usage
"D203", # 1 blank line required before class docstring
"D213", # Multi-line docstring summary should start at the second line
"E501", # line-length
"N818", # exception name should be named with an Error suffix
"PLR0913", # too many arguments
"PLR2004", # Magic value used in comparison,
"S101" # use of assert
]
select = [
"A", # flake8-builtins
"ANN", # flake8-annotations
"ARG", # flake8-unused-arguments
"B", # flake8-bugbear
"BLE", # flake8-blind-except
"C4", # flake8-comprehensions
"D", # pydocstyle
"DTZ", # flake8-datetimez
"E", # pycodestyle errors
"EM", # flake8-errmsg
"ERA", # eradicate
"EXE", # flake8-executable
"F", # pyflakes
"FA", # flake8-future-annotations
"FIX", # flake8-fix me
"FLY", # flynt
"G", # flake8-logging-format
"I", # isort
"INP", # flake8-no-pep420
"ISC", # flake8-implicit-str-concat
"N", # pep8-naming
"PIE", # flake8-pie
"PGH", # pygrep-hooks
"PL", # Pylint
"PT", # flake8-pytest-style
"PTH", # flake8-use-pathlib
"PYI", # flake8-pyi
"Q", # flake8-quotes
"RET", # flake8-return
"RSE", # flake8-raise
"S", # bandit
"SIM", # flake8-simplify
"T10", # flake8-debugger
"T20", # flake8-print
"TCH", # flake8-type-checking
"TD", # flake8-todos
"W", # pycodestyle warnings
"UP" # pyupgrade
]
ignore-init-module-imports = true
[tool.ruff.flake8-annotations]
allow-star-arg-any = true
mypy-init-return = true
suppress-dummy-args = true
suppress-none-returning = true
[tool.ruff.per-file-ignores]
"__init__.py" = ["F401"]
"praw/models/mod_notes.py" = ["FA100"]