mirror of
https://github.com/rommapp/romm.git
synced 2026-10-12 02:21:58 +00:00
150 lines
3.7 KiB
TOML
150 lines
3.7 KiB
TOML
[project]
|
|
name = "romm"
|
|
version = "0.0.1"
|
|
description = "A beautiful, powerful, self-hosted rom manager"
|
|
authors = [
|
|
{ name = "Zurdi", email = "[email protected]" },
|
|
{ name = "Arcane", email = "[email protected]" },
|
|
{ name = "Adamantike", email = "[email protected]" },
|
|
]
|
|
requires-python = ">=3.14"
|
|
readme = "README.md"
|
|
license = "AGPL-3.0-only"
|
|
dependencies = [
|
|
"PyYAML ~= 6.0",
|
|
"SQLAlchemy[mariadb-connector,mysql-connector,postgresql-psycopg] ~= 2.0",
|
|
"Unidecode ~= 1.3",
|
|
"aiohttp ~= 3.14",
|
|
"asyncssh ~= 2.24",
|
|
"alembic ~= 1.16",
|
|
"anyio ~= 4.4",
|
|
"apprise ~= 1.13",
|
|
"authlib ~= 1.8.0",
|
|
"certifi >= 2024.7.4",
|
|
"colorama ~= 0.4",
|
|
"cryptography>=49,<51",
|
|
"defusedxml ~= 0.7",
|
|
"fastapi[standard-no-fastapi-cloud-cli] ~= 0.141.1",
|
|
"gunicorn ~= 26.0",
|
|
"httpx2 ~= 2.13",
|
|
"itsdangerous ~= 2.2",
|
|
"joserfc ~= 1.7.5",
|
|
"mutagen ~= 1.47",
|
|
"opentelemetry-distro ~= 0.56",
|
|
"opentelemetry-exporter-otlp ~= 1.36",
|
|
"opentelemetry-instrumentation-aiohttp-client ~= 0.56",
|
|
"opentelemetry-instrumentation-fastapi ~= 0.56",
|
|
"opentelemetry-instrumentation-httpx ~= 0.56",
|
|
"opentelemetry-instrumentation-redis ~= 0.56",
|
|
"opentelemetry-instrumentation-sqlalchemy ~= 0.56",
|
|
"passlib[bcrypt] ~= 1.7",
|
|
# passlib 1.7 self-checks bcrypt with a >72-byte secret; bcrypt 5+ rejects that.
|
|
"bcrypt < 5",
|
|
"pillow~=12.3",
|
|
"psycopg[c] ~= 3.2",
|
|
"pydantic ~= 2.11",
|
|
"pydash ~= 8.0",
|
|
"python-dotenv ~= 1.2",
|
|
"python-magic ~= 0.4",
|
|
"python-socketio ~= 5.16",
|
|
"redis ~= 8.1",
|
|
"rq ~= 2.12",
|
|
"sentry-sdk ~= 2.32",
|
|
"starlette ~= 1.6.0",
|
|
"streaming-form-data ~=2.1",
|
|
"ua-parser ~= 1.0",
|
|
"strsimpy ~= 0.2",
|
|
"uvicorn ~= 0.53",
|
|
"uvicorn-worker ~= 0.4",
|
|
"watchfiles ~= 1.1",
|
|
"yarl ~= 1.14",
|
|
"zipfile-inflate64 ~= 0.1",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"ipdb ~= 0.13",
|
|
"ipykernel ~=7.3",
|
|
"memray ~= 1.15",
|
|
"mypy ~= 2.3.0",
|
|
"pyinstrument ~= 5.0",
|
|
"types-authlib ~= 1.8.0",
|
|
"types-colorama ~= 0.4",
|
|
"types-defusedxml ~= 0.7",
|
|
"types-passlib ~= 1.7",
|
|
"types-pyyaml ~= 6.0",
|
|
]
|
|
test = [
|
|
"fakeredis ~= 2.38",
|
|
"hypothesis ~= 6.0",
|
|
"pytest ~= 9.0",
|
|
"pytest-asyncio ~= 1.1",
|
|
"pytest-cov ~=7.1",
|
|
"pytest-env ~= 1.1",
|
|
"pytest-mock ~= 3.12",
|
|
"pytest-recording ~= 0.13",
|
|
"pytest-xdist ~= 3.6",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://romm.app/"
|
|
Source = "https://github.com/rommapp/romm"
|
|
|
|
[tool.deptry]
|
|
known_first_party = [
|
|
"__version__",
|
|
"adapters",
|
|
"config",
|
|
"decorators",
|
|
"endpoints",
|
|
"exceptions",
|
|
"handler",
|
|
"logger",
|
|
"main",
|
|
"models",
|
|
"startup",
|
|
"tasks",
|
|
"utils",
|
|
]
|
|
pep621_dev_dependency_groups = ["dev"]
|
|
|
|
[tool.deptry.package_module_name_map]
|
|
PyYAML = "yaml"
|
|
opentelemetry-distro = "opentelemetry"
|
|
pillow = "PIL"
|
|
python-dotenv = "dotenv"
|
|
python-magic = "magic"
|
|
python-socketio = "socketio"
|
|
|
|
[tool.deptry.per_rule_ignores]
|
|
DEP002 = [ # DEP002 rule: Project should not contain unused dependencies
|
|
# Packages used within the server initialization script.
|
|
"gunicorn",
|
|
"uvicorn-worker",
|
|
"watchfiles",
|
|
# OpenTelemetry packages are used via auto-instrumentation.
|
|
"opentelemetry-exporter-otlp",
|
|
"opentelemetry-instrumentation-aiohttp-client",
|
|
"opentelemetry-instrumentation-fastapi",
|
|
"opentelemetry-instrumentation-httpx",
|
|
"opentelemetry-instrumentation-redis",
|
|
"opentelemetry-instrumentation-sqlalchemy",
|
|
# Database drivers are used via SQLAlchemy.
|
|
"psycopg",
|
|
# Pytest plugins are used via pytest only.
|
|
"pytest-cov",
|
|
"pytest-env",
|
|
"pytest-mock",
|
|
"pytest-recording",
|
|
"pytest-xdist",
|
|
]
|
|
|
|
[tool.uv]
|
|
package = false
|
|
# A range, so Dependabot's bundled uv passes; docker/Dockerfile and ./Dockerfile pin the exact version.
|
|
required-version = ">=0.12.15,<0.13"
|
|
exclude-newer = "7 days"
|
|
|
|
[tool.ty.environment]
|
|
root = ["./backend"]
|