[build-system] requires = ["setuptools>=64.0"] build-backend = "setuptools.build_meta" [project] name = "vacuum-wall" version = "0.0.1" description = "SSL proxy / firewall appliance with zone-based policies" requires-python = ">=3.13" dependencies = [ "Flask>=3.0,<4.0", "aiohttp>=3.9,<4.0", "requests-unixsocket>=0.2,<1.0", ] [project.scripts] vacuum-walld = "daemon.server:main" [project.optional-dependencies] dev = [ "ruff>=0.4.0", "pytest>=8.0", "pytest-cov>=4.1", ] [tool.setuptools.packages.find] include = ["lib*", "webui*", "daemon*"] [tool.ruff] target-version = "py313" src = ["."] exclude = [".venv"] [tool.ruff.lint] select = [ "E", # pycodestyle errors "W", # pycodestyle warnings "F", # pyflakes "I", # isort "UP", # pyupgrade "B", # flake8-bugbear "SIM", # flake8-simplify "RUF", # ruff-specific ] ignore = [ "E501", # line too long – handled by formatter ] [tool.ruff.lint.per-file-ignores] "__init__.py" = ["F401"] [tool.ruff.format] quote-style = "double" indent-style = "space" skip-magic-trailing-comma = false [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["."]