From 751c74e7de1c78a151fdd8b76f220d8411a2108a Mon Sep 17 00:00:00 2001 From: Simeon Simeonov Date: Tue, 28 Apr 2026 14:27:05 +0200 Subject: Restructure the entire project, enforce linting and add support for type checkers --- pyproject.toml | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 59 insertions(+), 5 deletions(-) (limited to 'pyproject.toml') diff --git a/pyproject.toml b/pyproject.toml index 272c00f..0c7cc65 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,17 +1,71 @@ [build-system] requires = [ - "setuptools>=51", + "setuptools >= 77.0.3", "wheel" ] build-backend = "setuptools.build_meta" +[project] +name = "pyotp2289" +description = "A pure Python implementation of 'A One-Time Password System'" +dynamic = ["version"] +license = "BSD-2-Clause" +authors = [{name = "Simeon Simeonov"}] +readme = "README.md" +requires-python = ">= 3.10" + +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "Intended Audience :: System Administrators", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: 3.15", + "Operating System :: OS Independent", + "Topic :: Security :: Cryptography", +] + + +[dependency-groups] +dev = [ + "pytest>=7", + "ruff>=0.15.0", + "ty>=0.0.31", +] + + +[project.scripts] +otp2289 = "otp2289.__main__:main" + + +[project.urls] +Homepage = "https://codeberg.org/sgs/pyotp2289" +Repository = "https://codeberg.org/sgs/pyotp2289" +Issues = "https://codeberg.org/sgs/pyotp2289/issues" +Changelog = "https://codeberg.org/sgs/pyotp2289/src/branch/master/CHANGELOG.md" + + [tool.pytest.ini_options] minversion = "7.0" -testpaths = [ - "test" -] +cache_dir = "~/.cache/pytest_cache" pythonpath = [ - "src" + "src" +] +testpaths = [ + "tests" ] + + +[tool.setuptools.dynamic] +version = {attr = "otp2289.__version__"} + + +[tool.ty.environment] +python-version = "3.10" +root = ["./src"] -- cgit v1.3