*** Wartungsfenster jeden ersten Mittwoch vormittag im Monat ***

Skip to content
Snippets Groups Projects
pyproject.toml 2.82 KiB
Newer Older
# -*- coding: utf-8 -*-
#
# Copyright (C) 2024 TU Wien.
#
# Invenio-Theme-TUW is free software; you can redistribute it and/or modify
# it under the terms of the MIT License; see LICENSE file for more details.

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.hatch.version]
path = "invenio_theme_tuw/__init__.py"

[tool.hatch.build.targets.sdist]
exclude = [
    "sonar-project.properties",
    ".gitlab-ci.yml",
]

[project]
name = "invenio-theme-tuw"
dynamic = ["version"]
description = "TU Wien corporate design for InvenioRDM."
keywords = ["invenio", "theme", "corporate design", "tu wien"]
requires-python = ">=3.9"
readme = "README.rst"
license = "MIT"
authors = [
    {name = "Team of the Center for Research Data Management (TU Wien)", email = "tudata@tuwien.ac.at"},
]
classifiers = [
    "Environment :: Web Environment",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent",
    "Topic :: Internet :: WWW/HTTP :: Dynamic Content",
    "Topic :: Software Development :: Libraries :: Python Modules",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Development Status :: 5 - Production/Stable",
]
dependencies = [
    "Flask-WebpackExt>=1.0.0",
    "Invenio-App-RDM>=12.0.0,<13.0.0",
    "Invenio-Search>=2.0.0",
    "Flask>=2.0.2",
    "Flask-Session-Captcha>=1.3.0,<1.4",
]

[project.optional-dependencies]
tests = [
    "pytest-ruff>=0.4.1",
    "pytest-black>=0.3.0",
    "pytest-invenio>=1.4.0,<3",
    "opensearch-dsl>=2.1.0",
]

[project.urls]
Repository = "https://gitlab.tuwien.ac.at/crdm/invenio-theme-tuw"

# entrypoints
[project.entry-points."invenio_base.apps"]
invenio_theme_tuw = "invenio_theme_tuw:InvenioThemeTUW"

[project.entry-points."invenio_base.blueprints"]
invenio_theme_tuw_blueprint = "invenio_theme_tuw.views:create_blueprint"

[project.entry-points."invenio_base.finalize_app"]
invenio_theme_tuw_bp_order = "invenio_theme_tuw.startup:override_bp_order"
invenio_theme_tuw_deposit_pages = "invenio_theme_tuw.startup:override_view_functions"
invenio_theme_tuw_users_admin = "invenio_theme_tuw.startup:register_menu_entries"

[project.entry-points."invenio_assets.webpack"]
invenio_theme_tuw_theme = "invenio_theme_tuw.webpack:theme"

[project.entry-points."invenio_config.module"]
invenio_theme_tuw = "invenio_theme_tuw.config"

[project.entry-points."invenio_i18n.translations"]
messages = "invenio_theme_tuw"

# configuration for tools
[tool.isort]
profile = "black"

[tool.pytest.ini_options]
addopts = '--ruff --black --isort --pydocstyle --doctest-glob="*.rst" --doctest-modules --cov=invenio_theme_tuw --cov-report=term-missing'
testpaths = "tests invenio_theme_tuw"
[tool.pydocstyle]
add_ignore = "D401"