Files
sshecret/pyproject.toml
2025-05-10 08:44:13 +02:00

68 lines
1.6 KiB
TOML

[tool.poe.tasks]
fmt = "ruff format ${PWD}"
lint = "ruff check --fix ${PWD}"
check = "basedpyright ${PWD}"
test = "pytest ${PWD}"
all = [ {ref="fmt"}, {ref="lint"}, {ref="check"}, {ref="test"} ]
"ci:fmt" = "ruff format --check ${PWD}" # fail if not formatted
"ci:lint" = "ruff check ${PWD}"
[project]
name = "sshecret"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
authors = [
{ name = "Allan Eising", email = "allan@eising.dk" }
]
requires-python = ">=3.13"
dependencies = [
"asyncssh>=2.20.0",
"click>=8.1.8",
"cryptography>=44.0.2",
"fastapi[standard]>=0.115.12",
"httpx>=0.28.1",
"jinja2>=3.1.6",
"pydantic>=2.10.6",
"pydantic-settings>=2.8.1",
"pykeepass>=4.1.1.post1",
"pytest-asyncio>=0.26.0",
"python-dotenv>=1.0.1",
"python-json-logger>=3.3.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.basedpyright]
venvPath = "."
venv = ".venv"
include = ["src"]
exclude = ["**/migrations"]
reportUnusedCallResult = false
reportExplicitAny = false
reportIncompatibleVariableOverride = false
executionEnvironments = [
{ root = "packages/sshecret-backend" },
{ root = "packages/sshecret-sshd" },
{ root = "packages/sshecret-admin" },
]
[tool.uv.workspace]
members = ["packages/sshecret-backend", "packages/sshecret-sshd", "packages/sshecret-admin"]
[dependency-groups]
dev = [
"construct-typing>=0.6.2",
"mypy>=1.15.0",
"poethepoet>=0.34.0",
"python-dotenv>=1.0.1",
]
test = [
"pytest>=8.3.5",
"pytest-asyncio>=0.26.0",
"robotframework>=7.2.2",
]