1# Build system requirements. 2[build-system] 3requires = ["flit_core >=3.4,<4"] 4build-backend = "flit_core.buildapi" 5 6# Project metadata 7[project] 8name = "typing_extensions" 9version = "4.12.2" 10description = "Backported and Experimental Type Hints for Python 3.8+" 11readme = "README.md" 12requires-python = ">=3.8" 13license = { file = "LICENSE" } 14keywords = [ 15 "annotations", 16 "backport", 17 "checker", 18 "checking", 19 "function", 20 "hinting", 21 "hints", 22 "type", 23 "typechecking", 24 "typehinting", 25 "typehints", 26 "typing", 27] 28# Classifiers list: https://pypi.org/classifiers/ 29classifiers = [ 30 "Development Status :: 5 - Production/Stable", 31 "Environment :: Console", 32 "Intended Audience :: Developers", 33 "License :: OSI Approved :: Python Software Foundation License", 34 "Operating System :: OS Independent", 35 "Programming Language :: Python :: 3", 36 "Programming Language :: Python :: 3 :: Only", 37 "Programming Language :: Python :: 3.8", 38 "Programming Language :: Python :: 3.9", 39 "Programming Language :: Python :: 3.10", 40 "Programming Language :: Python :: 3.11", 41 "Programming Language :: Python :: 3.12", 42 "Programming Language :: Python :: 3.13", 43 "Topic :: Software Development", 44] 45 46[project.urls] 47Home = "https://github.com/python/typing_extensions" 48Repository = "https://github.com/python/typing_extensions" 49Changes = "https://github.com/python/typing_extensions/blob/main/CHANGELOG.md" 50Documentation = "https://typing-extensions.readthedocs.io/" 51"Bug Tracker" = "https://github.com/python/typing_extensions/issues" 52"Q & A" = "https://github.com/python/typing/discussions" 53 54# Project metadata -- authors. Flit stores this as a list of dicts, so it can't 55# be inline above. 56[[project.authors]] 57name = "Guido van Rossum, Jukka Lehtosalo, Łukasz Langa, Michael Lee" 58email = "[email protected]" 59 60[tool.flit.sdist] 61include = ["CHANGELOG.md", "README.md", "tox.ini", "*/*test*.py"] 62exclude = [] 63 64[tool.ruff] 65line-length = 90 66target-version = "py38" 67 68[tool.ruff.lint] 69select = [ 70 "B", 71 "C4", 72 "E", 73 "F", 74 "I", 75 "ISC001", 76 "PGH004", 77 "RUF", 78 "SIM201", 79 "SIM202", 80 "UP", 81 "W", 82] 83 84# Ignore various "modernization" rules that tell you off for importing/using 85# deprecated things from the typing module, etc. 86ignore = ["UP006", "UP007", "UP013", "UP014", "UP019", "UP035", "UP038"] 87 88[tool.ruff.lint.per-file-ignores] 89"!src/typing_extensions.py" = [ 90 "B018", 91 "B024", 92 "C4", 93 "E302", 94 "E306", 95 "E501", 96 "E701", 97] 98 99[tool.ruff.lint.isort] 100extra-standard-library = ["tomllib"] 101known-first-party = ["typing_extensions", "_typed_dict_test_helper"] 102