[build-system] requires = ["setuptools>=68"] build-backend = "setuptools.build_meta" [project] name = "updater" version = "0.1.0" description = "A pretty Arch Linux update orchestrator" requires-python = ">=3.11" dependencies = ["rich>=13"] [project.optional-dependencies] # pyalpm is provided by the arch package `python-pyalpm` / `pyalpm` alpm = ["pyalpm"] [project.scripts] updater = "updater.cli:main" [tool.setuptools.packages.find] include = ["updater*"] [tool.ruff] line-length = 100 target-version = "py311" [tool.ruff.lint] # RUF100 asks for noqa comments ruff does not need. Ours are `# noqa: E402` on # the imports that follow a sys.path insert in the tests, which ruff's default # rule set does not cover and flake8 does. They are deliberate; keep them. ignore = ["RUF100"] [tool.ruff.lint.per-file-ignores] # Test doubles carry mutable class attributes on purpose, and a fixture may # build a naive datetime: neither is a defect in the code under test. "tests/*" = ["RUF012", "DTZ007"]