[tool.poetry] name = "fastapi-sqlalchemy-asyncpg" version = "0.0.11" description = "" authors = ["Jakub Miazek "] packages = [] license = "MIT" [tool.poetry.dependencies] python = "^3.12" fastapi = "0.110.2" pydantic = {version = "2.7.1", extras = ["email"]} pydantic-settings = "2.2.1" sqlalchemy = "2.0.29" uvicorn = { version = "0.29.0", extras = ["standard"]} asyncpg = "0.29.0" alembic = "1.13.1" httpx = "0.27.0" pytest = "^8.1.1" 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.4" passlib = {version = "^1.7.4", extras = ["bcrypt"]} polars = "^0.20.22" 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.8.1" dirty-equals = "^0.7.1.post0" polyfactory = "^2.15.0" [tool.poetry.dev-dependencies] devtools = { extras = ["pygments"], version = "*" } safety = "*" pyupgrade = "*" ipython = "8.23.0" ruff = "0.3.5" psycopg2-binary = "*" sqlacodegen = "3.0.0rc5" [tool.poetry.group.dev.dependencies] tryceratops = "^2.3.2" [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"