pyproject.toml (94 lines of code) (raw):

[tool.ruff] extend-exclude = [ "__pycache__", ] [tool.ruff.lint] select = [ # pycodestyle "E", "W", # flake8 "F", # isort "I", # pytest style "PT", # eradicate commented code "ERA", # ruff lint "RUF", ] ignore = [ # `format` will wrap lines. "E501", ] [tool.ruff.lint.isort] lines-after-imports = 2 [tool.pytest.ini_options] # https://docs.pytest.org/en/6.2.x/usage.html # -ra: shows test summary for all EXCEPT passed and passed with output # --showlocals: show local variables in tracebacks # --tb=native: traceback printing with Python standard library formatting addopts = "-ra --showlocals --tb=native" sensitive_url = ".mozaws.net" asyncio_mode = "strict" [tool.coverage] # https://github.com/nedbat/coveragepy [tool.coverage.run] omit = [ '*/.local/*', '/usr/*', '*/.venv/*', '*/.tox/*', '*/virtualenvs/*', ] [tool.coverage.report] exclude_lines = [ "# noqa", "raise NotImplementedError", "pragma: no cover", "def __repr__", "if .debug:", "raise NotImplementedError", "if __name__ == .__main__.:", "logger.", "from", "import" ] [tool.poetry] name = "remote-settings" version = "0" description = "Easily manage evergreen settings data in Firefox" authors = ["Contactless <postmaster@localhost>"] license = "MPL" readme = "README.rst" [tool.poetry.dependencies] python = ">=3.11, <3.14" canonicaljson-rs = "0.7.1" cryptography = "44.0.3" ecdsa = "0.19.1" kinto = {version = "^23.0.0", extras = ["postgresql","memcached","monitoring"]} kinto-attachment = "7.0.0" kinto-emailer = "3.0.4" requests-hawk = "1.2.1" uwsgi = "2.0.29" [tool.poetry.group.kinto-remote-settings.dependencies] kinto-remote-settings = {path = "./kinto-remote-settings", develop = true} [tool.poetry.group.cronjobs] optional = true [tool.poetry.group.cronjobs.dependencies] cronjobs = {path = "./cronjobs", develop = true} [tool.poetry.group.dev.dependencies] pytest = "8.3.5" webtest = "3.0.4" coverage = "7.8.0" detect-secrets = "^1.5.0" ruff = "^0.11.8" responses = "^0.25.7" [tool.poetry.group.docs] optional = true [tool.poetry.group.docs.dependencies] docutils = "0.21.2" sphinx = "8.2.3" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"