Skip to content
Snippets Groups Projects
pyproject.toml 2.24 KiB
Newer Older
[tool.poetry]
name = "AlekSIS-App-Matrix"
version = "3.0.0.dev0"
packages = [
    { include = "aleksis" }
]
readme = "README.rst"
Jonathan Weth's avatar
Jonathan Weth committed
include = ["CHANGELOG.rst", "LICENCE.rst", "aleksis/**/*.mo"]

description = "AlekSIS (School Information System) — App Matrix (Integration with Matrix/Element)"
authors = ["Jonathan Weth <dev@jonathanweth.de>"]
Aleksolotl's avatar
Aleksolotl committed
maintainers = ["Jonathan Weth <jonathan.weth@teckids.org>", "Dominik George <dominik.george@teckids.org>"]
Jonathan Weth's avatar
Jonathan Weth committed
license = "EUPL-1.2-or-later"
homepage = "https://aleksis.org"
Tom Teichler's avatar
Tom Teichler committed
repository = "https://edugit.org/AlekSIS/official/AlekSIS-App-Matrix"
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Environment :: Web Environment",
Jonathan Weth's avatar
Jonathan Weth committed
    "Framework :: Django :: 3.0",
    "Intended Audience :: Education",
Jonathan Weth's avatar
Jonathan Weth committed
    "Topic :: Education",
    "Typing :: Typed",
 ]
Aleksolotl's avatar
Aleksolotl committed
[[tool.poetry.source]]
name = "PyPI"
priority = "primary"

[[tool.poetry.source]]
name = "gitlab"
url = "https://edugit.org/api/v4/projects/461/packages/pypi/simple"
Aleksolotl's avatar
Aleksolotl committed
priority = "supplemental"
[tool.poetry.dependencies]
Aleksolotl's avatar
Aleksolotl committed
python = "^3.10"
Jonathan Weth's avatar
Jonathan Weth committed
aleksis-core = "^4.0.0.dev3"

[tool.poetry.plugins."aleksis.app"]
matrix = "aleksis.apps.matrix.apps:DefaultConfig"

Aleksolotl's avatar
Aleksolotl committed
[tool.poetry.group.dev.dependencies]
django-stubs = "^4.2"
safety = "^2.3.5"

Aleksolotl's avatar
Aleksolotl committed
ruff = "^0.8.2"
Aleksolotl's avatar
Aleksolotl committed

[tool.poetry.group.test.dependencies]
Aleksolotl's avatar
Aleksolotl committed
pytest = "^8.3"
pytest-django = "^4.9"
Aleksolotl's avatar
Aleksolotl committed
pytest-django-testing-postgresql = "^0.2"
Aleksolotl's avatar
Aleksolotl committed
pytest-cov = "^6.0.0"
pytest-sugar = "^1.0.0"
selenium = "^4.27.0"
freezegun = "^1.5.0"
Aleksolotl's avatar
Aleksolotl committed

[tool.poetry.group.docs]
optional = true

[tool.poetry.group.docs.dependencies]
sphinx = "^7.0"
sphinxcontrib-django = "^2.3.0"
sphinxcontrib-svg2pdfconverter = "^1.1.1"
sphinx-autodoc-typehints = "^1.7"
sphinx_material = "^0.0.35"
Aleksolotl's avatar
Aleksolotl committed
[tool.ruff]
Aleksolotl's avatar
Aleksolotl committed
exclude = ["migrations"]
Aleksolotl's avatar
Aleksolotl committed
line-length = 100
Aleksolotl's avatar
Aleksolotl committed

[tool.ruff.lint]
select = ["E", "F", "UP", "B", "SIM", "I", "DJ", "A", "S"]
ignore = ["UP034", "UP015", "B028"]
Aleksolotl's avatar
Aleksolotl committed
[tool.ruff.lint.extend-per-file-ignores]
"**/*/tests/**/*.py" = ["S101", "ARG", "FBT", "PLR2004", "S311", "S105"]
[tool.ruff.lint.isort]
Aleksolotl's avatar
Aleksolotl committed
known-first-party = ["aleksis"]
section-order = ["future", "standard-library", "django", "third-party", "first-party", "local-folder"]

Aleksolotl's avatar
Aleksolotl committed
[tool.ruff.lint.isort.sections]
Aleksolotl's avatar
Aleksolotl committed
django = ["django"]
[build-system]
Aleksolotl's avatar
Aleksolotl committed
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"