diff --git a/.gitea/workflows/test.yaml b/.gitea/workflows/test.yaml index 20b037f..d7f081f 100644 --- a/.gitea/workflows/test.yaml +++ b/.gitea/workflows/test.yaml @@ -18,7 +18,7 @@ jobs: uses: astral-sh/setup-uv@v7 - name: Install dependencies - run: uv sync --locked + run: uv sync --locked --group test - name: Run tests run: | @@ -40,7 +40,7 @@ jobs: uv run -- pytest "${PYTEST_ARGS[@]}" - name: Generate badge - run: uvx coverage-badge -o htmlcov/badge.svg + run: uv run -- coverage-badge -o htmlcov/badge.svg - name: Upload coverage report uses: https://git.pvv.ntnu.no/Projects/rsync-action@v1 diff --git a/pyproject.toml b/pyproject.toml index 2c62681..3f8f0dc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,10 +20,11 @@ dependencies = [ ] dynamic = ["version"] -[project.optional-dependencies] -dev = [ +[dependency-groups] +test = [ "pytest", "pytest-cov", + "coverage-badge>=1.1.2", ] [tool.setuptools.packages.find] diff --git a/uv.lock b/uv.lock index 26babb6..53c5af7 100644 --- a/uv.lock +++ b/uv.lock @@ -223,6 +223,19 @@ toml = [ { name = "tomli", marker = "python_full_version <= '3.11'" }, ] +[[package]] +name = "coverage-badge" +version = "1.1.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "coverage" }, + { name = "setuptools" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/be/8f/e92b0a010c76b0da82709838b3f3ae9aec638d0c44dbfb1186a5751f5d2e/coverage_badge-1.1.2.tar.gz", hash = "sha256:fe7ed58a3b72dad85a553b64a99e963dea3847dcd0b8ddd2b38a00333618642c", size = 6335, upload-time = "2024-08-02T23:34:08.58Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/90/3d/5642a1a06191b2e1e0f87a2e824e6d3eb7c32c589a68ed4d1dcbd3324d63/coverage_badge-1.1.2-py2.py3-none-any.whl", hash = "sha256:d8413ce51c91043a1692b943616b450868cbeeb0ea6a0c54a32f8318c9c96ff7", size = 6493, upload-time = "2024-08-02T23:34:07.063Z" }, +] + [[package]] name = "cycler" version = "0.12.1" @@ -243,8 +256,9 @@ dependencies = [ { name = "sqlalchemy" }, ] -[package.optional-dependencies] -dev = [ +[package.dev-dependencies] +test = [ + { name = "coverage-badge" }, { name = "pytest" }, { name = "pytest-cov" }, ] @@ -254,12 +268,16 @@ requires-dist = [ { name = "brother-ql" }, { name = "matplotlib" }, { name = "psycopg2-binary", specifier = ">=2.8,<2.10" }, - { name = "pytest", marker = "extra == 'dev'" }, - { name = "pytest-cov", marker = "extra == 'dev'" }, { name = "python-barcode" }, { name = "sqlalchemy", specifier = ">=2.0,<2.1" }, ] -provides-extras = ["dev"] + +[package.metadata.requires-dev] +test = [ + { name = "coverage-badge", specifier = ">=1.1.2" }, + { name = "pytest" }, + { name = "pytest-cov" }, +] [[package]] name = "fonttools" @@ -851,6 +869,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl", hash = "sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430", size = 58465, upload-time = "2025-01-08T23:45:00.029Z" }, ] +[[package]] +name = "setuptools" +version = "80.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/5d/3bf57dcd21979b887f014ea83c24ae194cfcd12b9e0fda66b957c69d1fca/setuptools-80.9.0.tar.gz", hash = "sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c", size = 1319958, upload-time = "2025-05-27T00:56:51.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl", hash = "sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922", size = 1201486, upload-time = "2025-05-27T00:56:49.664Z" }, +] + [[package]] name = "six" version = "1.17.0"