| [build-system] |
| requires = ["setuptools>=61.0"] |
| build-backend = "setuptools.build_meta" |
| |
| [project] |
| name = "requests" |
| description = "Python HTTP for Humans." |
| readme = "README.md" |
| license = {text = "Apache-2.0"} |
| authors = [ |
| { name = "Kenneth Reitz", email = "me@kennethreitz.org" }, |
| ] |
| maintainers = [ |
| {name = "Ian Stapleton Cordasco", email="graffatcolmingov@gmail.com"}, |
| {name = "Nate Prewitt", email="nate.prewitt@gmail.com"} |
| ] |
| requires-python = ">=3.10" |
| dependencies = [ |
| "charset_normalizer>=2,<4", |
| "idna>=2.5,<4", |
| "urllib3>=1.26,<3", |
| "certifi>=2023.5.7" |
| ] |
| dynamic = ["version"] |
| |
| classifiers = [ |
| "Development Status :: 5 - Production/Stable", |
| "Environment :: Web Environment", |
| "Intended Audience :: Developers", |
| "License :: OSI Approved :: Apache Software License", |
| "Natural Language :: English", |
| "Operating System :: OS Independent", |
| "Programming Language :: Python", |
| "Programming Language :: Python :: 3", |
| "Programming Language :: Python :: 3.10", |
| "Programming Language :: Python :: 3.11", |
| "Programming Language :: Python :: 3.12", |
| "Programming Language :: Python :: 3.13", |
| "Programming Language :: Python :: 3.14", |
| "Programming Language :: Python :: 3 :: Only", |
| "Programming Language :: Python :: Implementation :: CPython", |
| "Programming Language :: Python :: Implementation :: PyPy", |
| "Topic :: Internet :: WWW/HTTP", |
| "Topic :: Software Development :: Libraries" |
| ] |
| |
| [project.urls] |
| Documentation = "https://requests.readthedocs.io" |
| Source = "https://github.com/psf/requests" |
| |
| [project.optional-dependencies] |
| security = [] |
| socks = ["PySocks>=1.5.6, !=1.5.7"] |
| use_chardet_on_py3 = ["chardet>=3.0.2,<8"] |
| test = [ |
| "pytest-httpbin==2.1.0", |
| "pytest-cov", |
| "pytest-mock", |
| "pytest-xdist", |
| "PySocks>=1.5.6, !=1.5.7", |
| "pytest>=3" |
| ] |
| |
| [tool.setuptools] |
| license-files = ["LICENSE", "NOTICE"] |
| |
| [tool.setuptools.dynamic] |
| version = {attr = "requests.__version__.__version__"} |
| |
| [tool.setuptools.packages.find] |
| where = ["src"] |
| |
| [tool.ruff] |
| target-version = "py310" |
| src = ["src/requests", "tests"] |
| exclude = ["docs/", "ext/"] |
| |
| [tool.ruff.lint] |
| select = [ |
| "E", # pycodestyle errors |
| "W", # pycodestyle warnings |
| "F", # pyflakes |
| "I", # isort |
| "UP", # pyupgrade |
| "T10", # flake8-debugger (replaces debug-statements hook) |
| ] |
| ignore = ["E203", "E501", "UP038", "UP031"] |
| per-file-ignores = {"src/requests/__init__.py" = ["E402", "F401"], "src/requests/compat.py" = ["E402", "F401"], "tests/compat.py" = ["F401"]} |
| |
| [tool.ruff.lint.isort] |
| known-first-party = ["requests"] |
| |
| [tool.ruff.format] |
| # Use black-compatible formatting |
| quote-style = "double" |
| indent-style = "space" |
| |
| [tool.pytest.ini_options] |
| addopts = "--doctest-modules" |
| doctest_optionflags = "NORMALIZE_WHITESPACE ELLIPSIS" |
| minversion = "6.2" |
| testpaths = ["tests"] |