[tool.poetry] name = "fastapi_book_server" version = "0.1.0" description = "" authors = ["Kurbanov Bulat "] [tool.poetry.dependencies] python = "^3.11" fastapi = "^0.89.1" pydantic = "^1.10.4" uvicorn = {extras = ["standard"], version = "^0.20.0"} ormar = {extras = ["postgresql"], version = "^0.12.1"} alembic = "^1.9.2" fastapi-pagination = {extras = ["ormar"], version = "^0.11.2"} orjson = "^3.8.5" httpx = "^0.23.3" meilisearch = "^0.23.0" prometheus-fastapi-instrumentator = "^5.9.1" uvloop = "^0.17.0" gunicorn = "^20.1.0" sentry-sdk = "^1.14.0" redis = {extras = ["hiredis"], version = "^4.4.2"} [tool.poetry.group.dev.dependencies] pre-commit = "^2.21.0" [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.black] include = '\.pyi?$' exclude = ''' /( \.git | \.vscode | \venv | alembic )/ ''' [tool.ruff] fix = true target-version = "py311" src = ["fastapi_book_server"] line-length=88 ignore = [] select = ["B", "C", "E", "F", "W", "B9", "I001"] exclude = [ # No need to traverse our git directory ".git", # There's no value in checking cache directories "__pycache__", # The conf file is mostly autogenerated, ignore it "fastapi_book_server/app/alembic", ] [tool.ruff.flake8-bugbear] extend-immutable-calls = ["fastapi.File", "fastapi.Form", "fastapi.Security", "fastapi.Query", "fastapi.Depends"] [tool.ruff.mccabe] max-complexity = 15 [tool.ruff.isort] known-first-party = ["core", "app"] force-sort-within-sections = true # only_sections = true # force_sort_within_sections = true # lines_after_imports = 2 # lexicographical = true # sections = ["FUTURE", "STDLIB", "BASEFRAMEWORK", "FRAMEWORKEXT", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"] # known_baseframework = ["fastapi",] # known_frameworkext = ["starlette",] [tool.ruff.pyupgrade] keep-runtime-typing = true