[tool.poetry] name = "fastapi-sqlalchemy-asyncpg" version = "0.0.14" description = "" authors = ["Jakub Miazek "] packages = [] license = "MIT" [tool.poetry.dependencies] python = "^3.12" fastapi = "^0.111.0" pydantic = {version = "^2.8.2", extras = ["email"]} pydantic-settings = "^2.3.4" sqlalchemy = "^2.0.31" uvicorn = { version = "^0.30.1", extras = ["standard"]} asyncpg = "^0.29.0" alembic = "^1.13.2" httpx = "^0.27.0" pytest = "^8.2.2" pytest-cov = "^5.0.0" uvloop = "^0.19.0" httptools = "^0.6.1" rich = "^13.7.1" pyjwt = {version = "^2.8.0", extras = ["cryptography"]} redis = "^5.0.7" passlib = {version = "^1.7.4", extras = ["bcrypt"]} polars = "^1.1.0" python-multipart = "^0.0.9" fastexcel = "^0.10.2" fastapi-cache2 = {git = "https://github.com/yoco-tech/fastapi-cache.git", rev = "main"} inline-snapshot = "^0.11.0" dirty-equals = "^0.7.1.post0" polyfactory = "^2.16.2" granian = "^1.5.1" transformers = "^4.42.4" [tool.poetry.group.dev.dependencies] devtools = { extras = ["pygments"], version = "*" } safety = "*" pyupgrade = "*" ipython = "^8.24.0" ruff = "^0.4.3" sqlacodegen = "^3.0.0rc5" tryceratops = "^2.3.2" locust = "^2.27.0" [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.ruff] line-length = 120 indent-width = 4 lint.select = ["E", "F", "UP", "N", "C", "B"] lint.ignore = ["E501"] # Exclude a variety of commonly ignored directories. exclude = ["alembic",] # Assume Python 3.12 target-version = "py312" [tool.ruff.lint.flake8-quotes] docstring-quotes = "double" [tool.ruff.lint.flake8-bugbear] extend-immutable-calls = ["fastapi.Depends",] [tool.pytest.ini_options] addopts = "-v --doctest-modules --doctest-glob=*.md --ignore=alembic" asyncio_mode = "strict" env_files = [".env"] [tool.tryceratops] exclude = ["alembic",] [tool.ruff.format] # Like Black, use double quotes for strings. quote-style = "double" # Like Black, indent with spaces, rather than tabs. indent-style = "space" # Like Black, respect magic trailing commas. skip-magic-trailing-comma = false # Like Black, automatically detect the appropriate line ending. line-ending = "auto"