diff --git a/pyproject.toml b/pyproject.toml index f00e77850c68796aadd5f1c8450816553222feea..3ae146d6de1acc11f05a6077e70a9c3735bea05a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,4 +1,74 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2024 TU Wien. +# +# Invenio-Utilities-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 = ["setuptools", "wheel", "babel>2.8"] -build-backend = "setuptools.build_meta" +requires = ["hatchling"] +build-backend = "hatchling.build" + +[tool.hatch.version] +path = "invenio_utilities_tuw/__init__.py" + +[project] +name = "invenio-utilities-tuw" +dynamic = ["version"] +description = "Some utilities for InvenioRDM." +keywords = ["invenio", "cli", "utilities", "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 = [ + "invenio-app-rdm>=12.0.0,<13.0.0" +] + +[project.optional-dependencies] +tests = [ + "invenio-search[opensearch2]>=2.0.0", + "pytest-black>=0.3.0,<0.3.10", + "pytest-invenio>=1.4.0", + "sphinx>=4.5", +] + +[project.urls] +Repository = "https://gitlab.tuwien.ac.at/fairdata/invenio-utilities-tuw" + +# entrypoints +[project.entry-points."flask.commands"] +tuw = "invenio_utilities_tuw.cli:utilities" + +[project.entry-points."invenio_base.apps"] +invenio_utilities_tuw = "invenio_utilities_tuw:InvenioUtilitiesTUW" + +[project.entry-points."invenio_i18n.translations"] +messages = "invenio_utilities_tuw" + +# configuration for tools +[tool.isort] +profile = "black" + +[tool.pytest.ini_optiions] +addopts = '--black --isort --pydocstyle --doctest-glob="*.rst" --doctest-modules --cov=invenio_utilities_tuw --cov-report=term-missing' +testpaths = "docs tests invenio_utilities_tuw" +[tool.pydocstyle] +add_ignore = "D401" diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index e1f9390698542b7d0f69e4ff6fc5597090841ee7..0000000000000000000000000000000000000000 --- a/setup.cfg +++ /dev/null @@ -1,102 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2020-2022 TU Wien. -# -# Invenio-Utilities-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. - -[metadata] -name = invenio-utilities-tuw -version = attr: invenio_utilities_tuw.__version__ -description = "Some utilities for InvenioRDM." -long_description = file: README.rst, CHANGES.rst -keywords = invenio utilities tu wien -license = MIT -author = TU Wien -author_email = tudata@tuwien.ac.at -platforms = any -url = https://gitlab.tuwien.ac.at/fairdata/invenio-utilities-tuw -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.7 - Programming Language :: Python :: 3.8 - Programming Language :: Python :: 3.9 - Development Status :: 5 - Production/Stable - -[options] -include_package_data = True -packages = find: -python_requires = >=3.7 -zip_safe = False -install_requires = - invenio-app-rdm>=12.0.0rc2,<13.0.0 - -[options.extras_require] -tests = - pytest-black>=0.3.0,<0.3.10 - pytest-invenio>=1.4.0 - sphinx>=4.5 -# Kept for backwards compatibility -docs = - -[options.entry_points] -flask.commands = - tuw = invenio_utilities_tuw.cli:utilities -invenio_base.apps = - invenio_utilities_tuw = invenio_utilities_tuw:InvenioUtilitiesTUW -invenio_i18n.translations = - messages = invenio_utilities_tuw - -[build_sphinx] -source-dir = docs/ -build-dir = docs/_build -all_files = 1 - -[bdist_wheel] -universal = 1 - -[pydocstyle] -add_ignore = D401 - -[pycodestyle] -exclude = docs/conf.py -ignore = E203,E501,W503 - -[compile_catalog] -directory = invenio_utilities_tuw/translations/ - -[extract_messages] -copyright_holder = TU Wien -msgid_bugs_address = tudata@tuwien.ac.at -mapping-file = babel.ini -output-file = invenio_utilities_tuw/translations/messages.pot -add-comments = NOTE - -[init_catalog] -input-file = invenio_utilities_tuw/translations/messages.pot -output-dir = invenio_utilities_tuw/translations/ - -[update_catalog] -input-file = invenio_utilities_tuw/translations/messages.pot -output-dir = invenio_utilities_tuw/translations/ - -[flake8] -max-line-length = 88 -extend-ignore = E203,E731 - -[isort] -profile=black - -[check-manifest] -ignore = - *-requirements.txt - -[tool:pytest] -addopts = --black --isort --pydocstyle --doctest-glob="*.rst" --doctest-modules --cov=invenio_utilities_tuw --cov-report=term-missing -testpaths = docs tests invenio_utilities_tuw diff --git a/setup.py b/setup.py deleted file mode 100644 index cc2a7c68650d4fff3786c420c7a628640e430cb4..0000000000000000000000000000000000000000 --- a/setup.py +++ /dev/null @@ -1,13 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright (C) 2020-2022 TU Wien. -# -# Invenio-Utilities-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. - -"""Some utilities for InvenioRDM.""" - -from setuptools import setup - -setup()