Skip to content
Snippets Groups Projects
pyproject.toml 2.59 KiB
Newer Older
Jonathan Weth's avatar
Jonathan Weth committed
[tool.poetry]
name = "AlekSIS-App-Kolego"
version = "0.1.0.dev4"
Jonathan Weth's avatar
Jonathan Weth committed
packages = [
    { include = "aleksis" }
]
readme = "README.rst"
include = [
    { path = "aleksis/**/*.mo", format = ["sdist", "wheel"] },
    { path = "*.rst", format = "sdist" },
    { path = "tox.ini", format = "sdist" }
]

description = "AlekSIS (School Information System) — App Kolego (Staff and Absence Management)"
authors = [
    "Michael Bauer <michael-bauer@posteo.de>",
    "Julian Leucker <julian.leucker@teckids.org>",
    "magicfelix <felix@felix-zauberer.de>",
    "Jonathan Weth <dev@jonathanweth.de>",
    "Hangzhi Yu <hangzhi.yu@teckids.org>",
]
Jonathan Weth's avatar
Jonathan Weth committed
license = "EUPL-1.2-or-later"
homepage = "https://aleksis.org"
repository = "https://edugit.org/AlekSIS/onboarding/AlekSIS-App-Kolego"
Jonathan Weth's avatar
Jonathan Weth committed
documentation = "https://aleksis.org/official/AlekSIS/docs/html/"
classifiers = [
    "Environment :: Web Environment",
    "Intended Audience :: Education",
    "Topic :: Education"
]
maintainers = ["Jonathan Weth <jonathan.weth@teckids.org>", "Dominik George <dominik.george@teckids.org>"]
Aleksolotl's avatar
Aleksolotl committed

[[tool.poetry.source]]
name = "PyPI"
priority = "primary"
Jonathan Weth's avatar
Jonathan Weth committed

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

[tool.poetry.plugins."aleksis.app"]
kolego = "aleksis.apps.kolego.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.1.5"
Aleksolotl's avatar
Aleksolotl committed

curlylint = "^0.13.0"

[tool.poetry.group.test.dependencies]
pytest = "^7.2"
pytest-django = "^4.1"
pytest-django-testing-postgresql = "^0.2"
pytest-cov = "^4.0.0"
pytest-sugar = "^0.9.2"
selenium = "<4.10.0"
freezegun = "^1.1.0"

[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"

Jonathan Weth's avatar
Jonathan Weth committed
[tool.curlylint]
include = '\.html'

[tool.curlylint.rules]
aria_role = true
django_forms_rendering = true
image_alt = true
indent = 2
meta_viewport = true
no_autofocus = true
tabindex_no_positive = true

Aleksolotl's avatar
Aleksolotl committed

[tool.ruff]
exclude = ["migrations", "tests"]
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"]

[tool.ruff.isort]
known-first-party = ["aleksis"]
section-order = ["future", "standard-library", "django", "third-party", "first-party", "local-folder"]

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