[build-system] requires = ["flit"] build-backend = "flit.buildapi" [project] name = "superx_budget" readme = "README.md" description = "Creating a budget overview from a SuperX export." license = { file = "LICENSE" } requires-python = ">=3.10" dynamic = ["version"] authors = [ {name = "Holger Frey", email = "frey@imtek.de"}, ] # see https://pypi.org/classifiers/ classifiers = [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3 :: Only", "License :: Freely Distributable", ] dependencies = [ "openpyxl >= 3.0.0", "pyramid >= 2.0", "pyramid_jinja2", "pyramid_mailer", "waitress", "passlib[argon2]", ] [project.entry-points."paste.app_factory"] main = "superx_budget:main" [project.urls] Source = "https://git.cpi.imtek.uni-freiburg.de/CPI/superx-budget-overview.git" [project.scripts] superx_test = "superx_budget:cli_parse_exported_file" [project.optional-dependencies] test = [ "pytest >=4.0.0", "pytest-cov", "pytest-icdiff", "pytest-mock", "pytest-randomly", "tox", ] dev = [ "flit", "keyring", "pre-commit", "ruff", ] [tool.pytest.ini_options] markers = [ "functional: marks tests as functional (deselect with '-m \"not functional\"')", ] addopts = [ "--strict-markers", "--strict-config", "--showlocals", "-ra", ] [tool.ruff] # see https://docs.astral.sh/ruff/configuration/ line-length = 80 indent-width = 4 fix = true [tool.ruff.lint] # Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`) codes by default. # Unlike Flake8, Ruff doesn't enable pycodestyle warnings (`W`) or # McCabe complexity (`C901`) by default. fixable = ["ALL"] select = ["ALL"] ignore = [ # ignored for now, should be activated in the future # docstrings "D", # don't complain about not annotating self or cls "ANN101", "ANN102", # ignored, "ruff format" will handle this "COM812", "ISC001", # ignored, due to Windows / WSL2 setup # flake8-executable "EXE", # ignored, not really working with datetimes # just retrieving the year "DTZ", # TODO # checkis for moving project to rust "ANN", "TID252", "PYI024", ] [tool.ruff.lint.pydocstyle] convention = "pep257" # Accepts: "google", "numpy", or "pep257". [tool.ruff.lint.per-file-ignores] # see https://github.com/charliermarsh/ruff "tests/*" = ["FBT003", "INP001", "PLR2004", "S101", "SLF001", "ANN"] "noxfile.py" = ["ANN"] [tool.ruff.format] indent-style = "space"