1+ [build-system ]
2+ requires = [" setuptools" , " wheel" ]
3+ build-backend = " setuptools.build_meta"
4+
5+ [project ]
6+ name = " Starlette-Plus"
7+ authors = [{ name = " PythonistaGuild" }]
8+ dynamic = [" dependencies" , " version" ]
9+ description = " Additional features, utilities and helpers for Starlette."
10+ readme = " README.md"
11+ requires-python = " >=3.11"
12+ classifiers = [
13+ " License :: OSI Approved :: MIT License" ,
14+ " Intended Audience :: Developers" ,
15+ " Natural Language :: English" ,
16+ " Operating System :: OS Independent" ,
17+ " Programming Language :: Python :: 3.11" ,
18+ " Programming Language :: Python :: 3.12" ,
19+ " Topic :: Internet" ,
20+ " Topic :: Software Development :: Libraries" ,
21+ " Topic :: Software Development :: Libraries :: Python Modules" ,
22+ " Topic :: Utilities" ,
23+ ]
24+
25+ [project .urls ]
26+ "Homepage" = " https://github.com/PythonistaGuild/StarlettePlus"
27+
28+ [tool .setuptools ]
29+ packages = [" starlette_plus" , " starlette_plus.types_" ]
30+
31+ [tool .setuptools .package-data ]
32+ starlette_plus = [" py.typed" ]
33+
34+ [tool .setuptools .dynamic ]
35+ dependencies = { file = [" requirements.txt" ] }
36+
37+ [project .optional-dependencies ]
38+ docs = [" mkdocs-material" , " mkdocstrings-python" , " mkdocstrings" ]
39+ dev = [" ruff" , " pyright" , " isort" ]
40+
41+ [tool .ruff ]
42+ line-length = 120
43+ indent-width = 4
44+ exclude = [" venv" ]
45+
46+
47+ [tool .ruff .lint ]
48+ select = [
49+ " C4" ,
50+ " E" ,
51+ " F" ,
52+ " G" ,
53+ " I" ,
54+ " PTH" ,
55+ " RUF" ,
56+ " SIM" ,
57+ " TCH" ,
58+ " UP" ,
59+ " W" ,
60+ " PERF" ,
61+ " ANN" ,
62+ ]
63+ ignore = [
64+ " F402" ,
65+ " F403" ,
66+ " F405" ,
67+ " PERF203" ,
68+ " RUF001" ,
69+ " RUF009" ,
70+ " SIM105" ,
71+ " UP034" ,
72+ " UP038" ,
73+ " ANN101" ,
74+ " ANN102" ,
75+ " ANN401" ,
76+ " UP031" ,
77+ " PTH123" ,
78+ " E203" ,
79+ " E501" ,
80+ ]
81+
82+ [tool .ruff .lint .isort ]
83+ split-on-trailing-comma = true
84+ combine-as-imports = true
85+ lines-after-imports = 2
86+
87+ [tool .ruff .lint .flake8-annotations ]
88+ allow-star-arg-any = true
89+
90+ [tool .ruff .lint .flake8-quotes ]
91+ inline-quotes = " double"
92+
93+ [tool .ruff .format ]
94+ quote-style = " double"
95+ indent-style = " space"
96+ skip-magic-trailing-comma = false
97+ line-ending = " auto"
98+
99+ [tool .pyright ]
100+ exclude = [" venv" ]
101+ useLibraryCodeForTypes = true
102+ typeCheckingMode = " strict"
103+ reportImportCycles = false
104+ reportPrivateUsage = false
105+ pythonVersion = " 3.11"
0 commit comments