Initial commit
Some checks failed
Run linters on applied template / Python 3.13 lint and build (push) Failing after 42s
Some checks failed
Run linters on applied template / Python 3.13 lint and build (push) Failing after 42s
This is a FastAPI backend microservice template used with `copier` utility. Features of applied template are: - Configuration file processing logic - Metrics and tracing (both optional) configuration available - Debug endpoints - Database migration commands, prepared Alembic environment - Database usage example in ping_db endpoint - gitea sanity check pipeline
This commit is contained in:
64
pyproject.toml.jinja
Normal file
64
pyproject.toml.jinja
Normal file
@@ -0,0 +1,64 @@
|
||||
[project]
|
||||
name = "{{project_name}}"
|
||||
version = "0.1.0"
|
||||
description = "{{project_description}}"
|
||||
authors = [{ name = "IDU lab team", email = "idu@itmo.ru" }]
|
||||
license = { text = "Apache 2.0" }
|
||||
readme = "README.md"
|
||||
requires-python = ">= 3.11"
|
||||
dependencies = [
|
||||
"fastapi (>=0.117.1,<0.118.0)",
|
||||
"structlog (>=25.4.0,<26.0.0)",
|
||||
"sqlalchemy (>=2.0.43,<3.0.0)",
|
||||
"alembic (>=1.16.5,<2.0.0)",
|
||||
"dotenv (>=0.9.9,<0.10.0)",
|
||||
"pyyaml (>=6.0.3,<7.0.0)",
|
||||
"uvicorn (>=0.38.0,<0.39.0)",
|
||||
"asyncpg (>=0.30.0,<0.31.0)",
|
||||
"opentelemetry-exporter-prometheus (>=0.59b0,<0.60)",
|
||||
"opentelemetry-exporter-otlp-proto-http (>=1.38.0,<2.0.0)",
|
||||
"opentelemetry-semantic-conventions (>=0.59b0,<0.60)",
|
||||
"aiohttp (>=3.13.2,<4.0.0)",
|
||||
"email-validator (>=2.3.0,<3.0.0)",
|
||||
]
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
|
||||
[dependency-groups]
|
||||
dev = [
|
||||
"black (>=25.9.0,<26.0.0)",
|
||||
"isort (>=6.0.1,<7.0.0)",
|
||||
"pylint (>=3.3.8,<4.0.0)",
|
||||
]
|
||||
|
||||
[tool.poetry.scripts]
|
||||
{{project_name}} = "{{project_slug}}.__main__:main"
|
||||
|
||||
|
||||
[tool.black]
|
||||
line-length = 120
|
||||
target-version = ['py311']
|
||||
|
||||
[tool.pylint.format]
|
||||
max-line-length = 120
|
||||
expected-line-ending-format = "LF"
|
||||
extension-pkg-allow-list = []
|
||||
ignored-modules = ["alembic.context"]
|
||||
disable = [
|
||||
"duplicate-code",
|
||||
"missing-module-docstring",
|
||||
"missing-class-docstring",
|
||||
"missing-function-docstring",
|
||||
]
|
||||
|
||||
[tool.isort]
|
||||
multi_line_output = 3
|
||||
include_trailing_comma = true
|
||||
force_grid_wrap = 0
|
||||
use_parentheses = true
|
||||
ensure_newline_before_comments = true
|
||||
line_length = 120
|
||||
split_on_trailing_comma = true
|
||||
profile = "black"
|
||||
Reference in New Issue
Block a user