Cleanup for release 1.0.0.

This commit is contained in:
Leo Vasanko 2025-08-15 11:11:57 -06:00
parent 073f1a8707
commit ce6d60e588
2 changed files with 96 additions and 25 deletions

View File

@ -1,7 +1,6 @@
import os import os
import re import re
import signal import signal
import sys
from pathlib import Path from pathlib import Path
from sanic import Sanic from sanic import Sanic

View File

@ -10,28 +10,38 @@ readme = "README.md"
authors = [ authors = [
{ name = "Vasanko" }, { name = "Vasanko" },
] ]
maintainers = [
{ name = "Vasanko" },
]
keywords = ["file-server", "web-interface", "dropbox", "storage"]
classifiers = [ classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Web Environment",
"Intended Audience :: End Users/Desktop",
"Intended Audience :: System Administrators",
"License :: Public Domain",
"License :: OSI Approved :: MIT License",
] ]
requires-python = ">=3.11" requires-python = ">=3.11"
dependencies = [ dependencies = [
"argon2-cffi", "argon2-cffi>=25.1.0",
"av", "av>=15.0.0",
"blake3", "blake3>=1.0.5",
"brotli", "brotli>=1.1.0",
"docopt", "docopt>=0.6.2",
"inotify", "inotify>=0.2.12",
"msgspec", "msgspec>=0.19.0",
"natsort", "natsort>=8.4.0",
"numpy>=2.3.2", "numpy>=2.3.2",
"pathvalidate", "pathvalidate>=3.3.1",
"pillow", "pillow>=11.3.0",
"pillow-heif>=1.1.0", "pillow-heif>=1.1.0",
"pyjwt", "pyjwt>=2.10.1",
"pymupdf", "pymupdf>=1.26.3",
"sanic", "sanic>=25.3.0",
"setproctitle", "setproctitle>=1.3.6",
"stream-zip", "stream-zip>=0.0.83",
"tomli_w", "tomli_w>=1.2.0",
] ]
[project.urls] [project.urls]
@ -42,8 +52,19 @@ cista = "cista.__main__:main"
[project.optional-dependencies] [project.optional-dependencies]
dev = [ dev = [
"pytest", "pytest>=8.4.1",
"ruff", "ruff>=0.8.0",
"mypy>=1.13.0",
"pre-commit>=4.0.0",
]
test = [
"pytest>=8.4.1",
"pytest-cov>=6.0.0",
"pytest-asyncio>=0.25.0",
]
docs = [
"sphinx>=8.0.0",
"sphinx-rtd-theme>=3.0.0",
] ]
[tool.hatch.version] [tool.hatch.version]
@ -65,18 +86,69 @@ only-packages = true
[tool.pytest.ini_options] [tool.pytest.ini_options]
addopts = [ addopts = [
"--import-mode=importlib", "--import-mode=importlib",
"--verbosity=-1", "--verbosity=2",
"-p no:warnings", "--strict-markers",
"--strict-config",
"--cov=cista",
"--cov-report=term-missing",
"--cov-report=html",
"--cov-branch",
] ]
testpaths = [ testpaths = ["tests"]
"tests", python_files = ["test_*.py", "*_test.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
markers = [
"slow: marks tests as slow (deselect with '-m \"not slow\"')",
"integration: marks tests as integration tests",
]
filterwarnings = [
"error",
"ignore::UserWarning",
"ignore::DeprecationWarning",
] ]
[tool.ruff.lint] [tool.ruff.lint]
isort.known-first-party = ["cista"] isort.known-first-party = ["cista"]
per-file-ignores."tests/*" = ["S", "ANN", "D", "INP"] per-file-ignores."tests/*" = ["S", "ANN", "D", "INP", "PLR2004"]
per-file-ignores."scripts/*" = ["T20"]
[dependency-groups] [dependency-groups]
dev = [ dev = [
"pytest>=8.4.1", "pytest>=8.4.1",
"ruff>=0.8.0",
"mypy>=1.13.0",
"pre-commit>=4.0.0",
] ]
test = [
"pytest>=8.4.1",
"pytest-cov>=6.0.0",
"pytest-asyncio>=0.25.0",
]
[tool.coverage.run]
source = ["cista"]
branch = true
omit = [
"*/tests/*",
"*/test_*",
"*/__pycache__/*",
"cista/_version.py",
]
[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"if self.debug:",
"if settings.DEBUG",
"raise AssertionError",
"raise NotImplementedError",
"if 0:",
"if __name__ == .__main__.:",
"class .*\\bProtocol\\):",
"@(abc\\.)?abstractmethod",
]
show_missing = true
skip_covered = false
precision = 2