1
+ [tool.poetry]
2
+ name = "fastapi-sqlalchemy-asyncpg"
3
+ version = "0.0.17"
4
+ description = ""
5
+ authors = ["Jakub Miazek <
[email protected] >"]
6
+ packages = []
7
+ license = "MIT"
8
+ package-mode = false
9
+
10
+ [tool.poetry.dependencies]
11
+ python = "^3.13"
12
+ fastapi = {version = "^0.115.6", extras = ["all"]}
13
+ pydantic = {version = "^2.10.3", extras = ["email"]}
14
+ pydantic-settings = "^2.7.0"
15
+ sqlalchemy = "^2.0.36"
16
+ uvicorn = { version = "^0.34.0", extras = ["standard"]}
17
+ asyncpg = "^0.30.0"
18
+ alembic = "^1.14.0"
19
+ httpx = "^0.28.1"
20
+ pytest = "^8.3.4"
21
+ pytest-cov = "^6.0.0"
22
+ uvloop = "^0.21.0"
23
+ httptools = "^0.6.4"
24
+ rich = "^13.9.4"
25
+ pyjwt = {version = "^2.10.1", extras = ["cryptography"]}
26
+ redis = "^5.2.1"
27
+ bcrypt = "^4.2.1"
28
+ polars = "^1.17.1"
29
+ python-multipart = "^0.0.20"
30
+ fastexcel = "^0.12.0"
31
+ fastapi-cache2 = "^0.2.1"
32
+ inline-snapshot = "^0.17.0"
33
+ dirty-equals = "^0.8.0"
34
+ polyfactory = "^2.18.1"
35
+ granian = "^1.7.0"
36
+ apscheduler = {version = "^4.0.0a5", extras = ["redis,sqlalchemy"]}
37
+ pendulum = {git = "https://github.com/sdispater/pendulum.git", rev="develop"}
38
+
39
+ [tool.poetry.group.dev.dependencies]
40
+ devtools = { extras = ["pygments"], version = "^0.12.2" }
41
+ safety = "*"
42
+ pyupgrade = "*"
43
+ ipython = "^8.26.0"
44
+ ruff = "^0.6.1"
45
+ sqlacodegen = "^3.0.0rc5"
46
+ tryceratops = "^2.3.3"
47
+ locust = "^2.31.3"
48
+
49
+ [build-system]
50
+ requires = ["poetry-core>=1.0.0"]
51
+ build-backend = "poetry.core.masonry.api"
52
+
53
+ [tool.ruff]
54
+ line-length = 120
55
+ indent-width = 4
56
+
57
+ lint.select = ["E", "F", "UP", "N", "C", "B"]
58
+ lint.ignore = ["E501"]
59
+
60
+ # Exclude a variety of commonly ignored directories.
61
+ exclude = ["alembic",]
62
+ # Assume Python 3.13
63
+ target-version = "py313"
64
+
65
+ [tool.ruff.lint.flake8-quotes]
66
+ docstring-quotes = "double"
67
+
68
+ [tool.ruff.lint.flake8-bugbear]
69
+ extend-immutable-calls = ["fastapi.Depends",]
70
+
71
+ [tool.pytest.ini_options]
72
+ addopts = "-v --doctest-modules --doctest-glob=*.md --ignore=alembic"
73
+ asyncio_mode = "strict"
74
+ env_files = [".env"]
75
+
76
+ [tool.tryceratops]
77
+ exclude = ["alembic",]
78
+
79
+ [tool.ruff.format]
80
+ # Like Black, use double quotes for strings.
81
+ quote-style = "double"
82
+
83
+ # Like Black, indent with spaces, rather than tabs.
84
+ indent-style = "space"
85
+
86
+ # Like Black, respect magic trailing commas.
87
+ skip-magic-trailing-comma = false
88
+
89
+ # Like Black, automatically detect the appropriate line ending.
90
+ line-ending = "auto"
0 commit comments