[tool.poetry] name = "Sith" version = "3" description = "Le web Sith de l'AE" authors = [ "Skia ", "klmp200 ", "Krophil ", "Maréchal ", "Och ", "tleb ", "Soldat ", "Nabos ", "Terre ", "Lo-J ", "Vial " ] documentation = "https://sith-ae.readthedocs.io/" homepage = "https://ae.utbm.fr/" license = "GPL-3.0-only" [tool.poetry.dependencies] python = "^3.10" Django = "^4.2.13" Pillow = "^10.4.0" mistune = "^3.0.2" django-jinja = "^2.11" cryptography = "^42.0.8" pytz = "^2021.1" djangorestframework = "^3.13" django-phonenumber-field = "^6.3" phonenumbers = "^8.12" django-ajax-selects = "^2.1.0" reportlab = "^4.2" django-haystack = "^3.2.1" xapian-haystack = "^3.0.1" libsass = "^0.22" django-ordered-model = "^3.7" django-simple-captcha = "^0.5.17" python-dateutil = "^2.8.2" psycopg2-binary = "^2.9" sentry-sdk = "^1.21.0" pygraphviz = "^1.1" Jinja2 = "^3.1" django-countries = "^7.5.1" dict2xml = "^1.7.3" Sphinx = "^5" # Needed for building xapian tomli = "^2.0.1" [tool.poetry.group.dev.dependencies] django-debug-toolbar = "^4.0.0" ipython = "^8.26.0" pre-commit = "^3.7.1" ruff = "^0.5.1" # Version used in pipeline is controlled by pre-commit hooks in .pre-commit.config.yaml [tool.poetry.group.tests.dependencies] freezegun = "^1.2.2" # used to test time-dependent code pytest = "^8.2.2" pytest-cov = "^5.0.0" pytest-django = "^4.8.0" [tool.poetry.group.docs.dependencies] sphinx-rtd-theme = "^1.0.0" sphinx-copybutton = "^0.4.0" [tool.poetry.group.docs] optional = true [tool.xapian] version = "1.4.25" [tool.ruff] output-format = "concise" # makes ruff error logs easier to read [tool.ruff.lint] select = [ "A", # shadowing of Python builtins "B", "C4", # use comprehensions when possible "I", # isort "DJ", # django-specific rules, "F401", # unused import "FBT", # boolean trap "UP008", # Use super() instead of super(__class__, self) "UP009", # utf-8 encoding declaration is unnecessary ] ignore = [ "DJ001", # null=True in CharField/TextField. this one would require a migration ] [tool.pytest.ini_options] DJANGO_SETTINGS_MODULE = "sith.settings" python_files = ["tests.py", "test_*.py", "*_tests.py"] markers = ["slow"] [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api"