[tool.poetry] name = "batch-downloader" version = "0.1.0" description = "" authors = ["Bulat Kurbanov "] readme = "README.md" packages = [{include = "src"}] [tool.poetry.dependencies] python = "^3.11" pydantic = "^2.0.3" fastapi = "^0.100.0" orjson = "^3.9.2" redis = {extras = ["hiredis"], version = "^4.6.0"} taskiq = "^0.8.5" taskiq-redis = "^0.4.0" sentry-sdk = "^1.28.1" httpx = "^0.24.1" minio = "^7.1.15" uvicorn = {extras = ["standard"], version = "^0.23.1"} transliterate = "^1.10.2" pydantic-settings = "^2.0.2" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.black] include = '\.pyi?$' exclude = ''' /( \.git | \.vscode | \venv | alembic )/ ''' [tool.ruff] fix = true target-version = "py311" src = ["src"] 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 "src/app/alembic", ] [tool.ruff.flake8-bugbear] extend-immutable-calls = ["fastapi.File", "fastapi.Form", "fastapi.Security", "taskiq.TaskiqDepends"] [tool.ruff.mccabe] max-complexity = 15 [tool.ruff.isort] known-first-party = ["core", "app"] force-sort-within-sections = true force-wrap-aliases = true section-order = ["future", "standard-library", "base_framework", "framework_ext", "third-party", "first-party", "local-folder"] lines-after-imports = 2 [tool.ruff.isort.sections] base_framework = ["fastapi",] framework_ext = ["starlette"] [tool.ruff.pyupgrade] keep-runtime-typing = true