Files
mediahive/pyproject.toml
T
2026-05-25 01:55:51 +00:00

70 lines
1.6 KiB
TOML

[project]
name = "mediahive"
dynamic = ["version"]
description = "MediaHive - Media scanning, indexing, and Netflix-style streaming"
readme = "README.md"
requires-python = ">=3.14"
dependencies = [
"aiofiles>=25.1.0",
"aiopathlib>=0.6.0",
"bencodepy>=0.9.5",
"fastapi-vue>=0.5.2",
"fastapi[standard]>=0.128.0",
"httpx[http2]>=0.28.1",
"msgspec>=0.19",
"parse-torrent-title>=2.8.1",
"tomli-w>=1.2.0",
"uvicorn[standard]>=0.40.0",
]
[project.scripts]
mediahive = "mediahive.__main__:main"
[project.urls]
Repository = "https://git.zi.fi/LeoVasanko/mediahive"
[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"
[tool.hatch.version]
source = "vcs"
[tool.hatch.build]
packages = ["mediahive"]
artifacts = ["mediahive/frontend-build"]
only-packages = true
[tool.hatch.build.targets.sdist.hooks.custom]
path = "scripts/fastapi-vue/build-frontend.py"
[tool.uv]
package = true
[tool.uv.sources]
parse-torrent-title = { git = "https://github.com/platelminto/parse-torrent-title.git" }
[project.optional-dependencies]
gui = [
"pywebview>=6.2.1; platform_system != 'Darwin'",
"pywebview[qt5]>=6.2.1; platform_system == 'Darwin'",
"qtpy>=2.4.1; platform_system == 'Darwin'",
"PyQt5>=5.15.11; platform_system == 'Darwin'",
"pythonnet>=3.1.0rc0; platform_system == 'Windows' and python_version >= '3.14'",
"pyinstaller>=6.0",
]
[dependency-groups]
dev = [
"httpx>=0.28.1",
"ruff>=0.15.14",
"setuptools-scm>=8",
]
[tool.ruff]
preview = true
[tool.ruff.lint]
select = ["ALL"]
ignore = ["D203", "D213", "DOC201", "COM812", "T201"]