-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpyproject.toml
106 lines (94 loc) · 3.04 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
[project]
name = "FastSQLA"
version = "0.3.0"
description = "SQLAlchemy extension for FastAPI that supports asynchronous sessions and includes built-in pagination."
readme = "README.md"
requires-python = ">=3.12"
authors = [{ name = "Hadrien David", email = "[email protected]" }]
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Web Environment",
"Framework :: AsyncIO",
"Framework :: FastAPI",
"Framework :: Pydantic :: 2",
"Framework :: Pydantic",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3",
"Programming Language :: Python",
"Programming Language :: SQL",
"Topic :: Internet :: WWW/HTTP :: HTTP Servers",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Internet",
"Topic :: Software Development :: Libraries :: Application Frameworks",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development",
"Typing :: Typed",
]
keywords = ["FastAPI", "SQLAlchemy", "AsyncIO"]
license = { text = "MIT License" }
dependencies = ["fastapi>=0.115.6", "sqlalchemy[asyncio]>=2.0.37", "structlog>=24.4.0"]
[project.urls]
Homepage = "https://github.com/hadrien/fastsqla"
Documentation = "https://github.com/hadrien/fastsqla"
Repository = "https://github.com/hadrien/fastsqla"
Issues = "https://github.com/hadrien/fastsqla/issues"
Changelog = "https://github.com/hadrien/fastsqla/releases"
[project.optional-dependencies]
docs = [
"mkdocs-glightbox>=0.4.0",
"mkdocs-material>=9.5.50",
"mkdocstrings[python]>=0.27.0",
]
sqlmodel = ["sqlmodel>=0.0.22"]
[tool.uv]
package = true
dev-dependencies = [
"asgi-lifespan>=2.1.0",
"coverage>=7.6.1",
"faker>=28.4.1",
"httpx>=0.27.2",
"pytest>=8.3.2",
"pytest-asyncio>=0.24.0",
"pytest-cov>=5.0.0",
"pytest-watch",
"ruff>=0.6.4",
"toml>=0.10.2",
"aiosqlite>=0.20.0",
"python-semantic-release>=9.8.8",
"twine>=5.1.1",
]
[tool.uv.sources]
pytest-watch = { git = "https://github.com/styleseat/pytest-watch", rev = "0342193" }
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
filterwarnings = ["ignore::DeprecationWarning:"]
[tool.coverage.run]
branch = true
omit = ["tests/*", ".venv/*"]
concurrency = ["thread", "greenlet"]
[tool.semantic_release.remote.token]
env = "GH_TOKEN"
[tool.semantic_release]
version_toml = ["pyproject.toml:project.version"]
[tool.semantic_release.changelog.default_templates]
changelog_file = "./docs/changelog.md"
[tool.tox]
legacy_tox_ini = """
[tox]
envlist = { default, sqlmodel }
[testenv]
passenv = CI
runner = uv-venv-lock-runner
commands =
pytest --cov fastsqla --cov-report=term-missing --cov-report=xml
extras:
sqlmodel: sqlmodel
"""