[build-system] requires = ["hatchling", "hatch-vcs"] build-backend = "hatchling.build" [project] name = "cista" dynamic = ["version"] description = "Dropbox-like file server with modern web interface" readme = "README.md" authors = [ { name = "Vasanko" }, ] classifiers = [ ] requires-python = ">=3.11" dependencies = [ "argon2-cffi", "blake3", "brotli", "docopt", "inotify", "msgspec", "natsort", "pathvalidate", "pillow", "pyav", "pyjwt", "pymupdf", "sanic", "setproctitle", "stream-zip", "tomli_w", ] [project.urls] Homepage = "https://git.zi.fi/Vasanko/cista-storage" [project.scripts] cista = "cista.__main__:main" [project.optional-dependencies] dev = [ "pytest", "ruff", ] [tool.hatch.version] source = "vcs" [tool.hatch.build] artifacts = ["cista/wwwroot"] targets.sdist.hooks.custom.path = "scripts/build-frontend.py" hooks.vcs.version-file = "cista/_version.py" hooks.vcs.template = """ # This file is automatically generated by hatch build. __version__ = {version!r} """ only-packages = true targets.sdist.include = [ "/cista", ] [tool.pytest.ini_options] addopts = [ "--import-mode=importlib", "--verbosity=-1", "-p no:warnings", ] testpaths = [ "tests", ] [tool.ruff] select = ["ALL"] ignore = [ "A0", "ARG001", "ANN", "B018", "BLE001", "C901", "COM812", # conflicts with ruff format "D", "E501", "EM1", "FIX002", "ISC001", # conflicts with ruff format "PGH003", "PLR0912", "PLR2004", "PLW0603", "S101", "SLF001", "T201", "TD0", "TRY", ] show-source = true show-fixes = true [tool.ruff.isort] known-first-party = ["cista"] [tool.ruff.per-file-ignores] "tests/*" = ["S", "ANN", "D", "INP"]