From 1b855a65e4490aff3d7d69cb1855a199ea1a25d3 Mon Sep 17 00:00:00 2001 From: Chris Sewell Date: Thu, 1 Oct 2026 09:35:10 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Release=20ub-test-reports=201.0.?= =?UTF-8?q?0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `poe bump ub-test-reports --to 1.0.0`: the manifest, `__version__`, the changelog entry (summary paragraph by hand) and, through `propagate_floors`, the extension's two `ub-test-reports` specifiers to `>=1.0.0,<2`. The lock carries the one version line rather than the relock (224 lines of marker churn; `uv lock --check` passes on 0.12.15 and 0.12.9). The README row links PyPI; two comments that named the dev version updated. --- README.md | 2 +- packages/sphinx-test-reports/.readthedocs.yaml | 2 +- packages/sphinx-test-reports/pyproject.toml | 10 +++++----- packages/ub-test-reports/docs/changelog.rst | 12 ++++++++++-- packages/ub-test-reports/pyproject.toml | 2 +- .../ub-test-reports/src/ub_test_reports/__init__.py | 2 +- uv.lock | 2 +- 7 files changed, 20 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 75ba10b73..8cf40ae62 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ definitions and the CI workflows. | [`packages/sphinx-mounts`](packages/sphinx-mounts) | [`sphinx-mounts`](https://pypi.org/project/sphinx-mounts/) | the Sphinx extension that mounts external source trees into a build without copying or symlinking — [documentation](https://sphinx-mounts.useblocks.com), [README](packages/sphinx-mounts/README.md) | | [`packages/sphinx-codelinks`](packages/sphinx-codelinks) | [`sphinx-codelinks`](https://pypi.org/project/sphinx-codelinks/) | fast source-code traceability for sphinx-needs — it scans source files for comment markers, turns them into needs, and links documentation to exact source lines — [documentation](https://codelinks.useblocks.com), [README](packages/sphinx-codelinks/README.md) | | [`packages/sphinx-test-reports`](packages/sphinx-test-reports) | [`sphinx-test-reports`](https://pypi.org/project/sphinx-test-reports/) | test results as needs: the Sphinx extension in which JUnit/ctest/googletest XML and tox-envreport JSON become needs in a build — [documentation](https://sphinx-test-reports.readthedocs.io), [README](packages/sphinx-test-reports/README.rst) | -| [`packages/ub-test-reports`](packages/ub-test-reports) | `ub-test-reports` (not yet on PyPI) | the Sphinx-free half of test reports, which sphinx-test-reports depends on: the `test-reports` command that turns reports into a `needs.json` without running Sphinx, the pytest plugin, the parsers — documented on sphinx-test-reports' site, [README](packages/ub-test-reports/README.rst) | +| [`packages/ub-test-reports`](packages/ub-test-reports) | [`ub-test-reports`](https://pypi.org/project/ub-test-reports/) | the Sphinx-free half of test reports, which sphinx-test-reports depends on: the `test-reports` command that turns reports into a `needs.json` without running Sphinx, the pytest plugin, the parsers — documented on sphinx-test-reports' site, [README](packages/ub-test-reports/README.rst) | | [`packages/ub-project`](packages/ub-project) | [`ub-project`](https://pypi.org/project/ub-project/) | the shared reader for `ubproject.toml` and its variant data, which the other packages depend on — no documentation site, [README](packages/ub-project/README.rst) | ## Why one repository, and why still several packages diff --git a/packages/sphinx-test-reports/.readthedocs.yaml b/packages/sphinx-test-reports/.readthedocs.yaml index 2ce96e3b8..3293245fc 100644 --- a/packages/sphinx-test-reports/.readthedocs.yaml +++ b/packages/sphinx-test-reports/.readthedocs.yaml @@ -78,7 +78,7 @@ python: # `ub-test-reports` from PyPI -- the released versions, not the ones beside it -- so a # docs build here could pass or fail on code the workspace does not have, and between a # core change and its release pip finds no matching `ub-test-reports` at all (measured: - # "Could not find a version that satisfies the requirement ub-test-reports<2,>=1.0.0.dev0"). + # "Could not find a version that satisfies the requirement ub-test-reports<2,>=1.0.0"). # With the siblings already installed the member's requirements are satisfied and pip # fetches neither (tight tracking keeps the checkout's versions inside the member's floors # and caps). diff --git a/packages/sphinx-test-reports/pyproject.toml b/packages/sphinx-test-reports/pyproject.toml index d87babd51..9a0e6797d 100644 --- a/packages/sphinx-test-reports/pyproject.toml +++ b/packages/sphinx-test-reports/pyproject.toml @@ -36,14 +36,14 @@ requires-python = ">=3.11,<4" # requires `>=,<` on every intra-workspace # edge. uv never validates a specifier it resolves through `workspace = true` (uv#9811), so # the floor is the only statement of what was actually tested, and `propagate_floors.py` -# moves it at each sibling release -- ub-test-reports' `1.0.0.dev0` becomes `1.0.0` in the -# core's own release pull request. The published 2.0.0 said `sphinx-needs>=6.0.1`; -# narrowing it is what the import costs, and the changelog says so. +# moves it at each sibling release (it moved ub-test-reports' from the `1.0.0.dev0` the split +# PR declared to `1.0.0` in the core's release pull request). The published 2.0.0 said +# `sphinx-needs>=6.0.1`; narrowing it is what the import costs, and the changelog says so. dependencies = [ "sphinx>=7.4", "docutils>=0.21", "sphinx-needs>=8.5.0,<9", - "ub-test-reports>=1.0.0.dev0,<2", + "ub-test-reports>=1.0.0,<2", ] [project.optional-dependencies] @@ -54,7 +54,7 @@ sphinx = [] # A pass-through until 4.0: 2.0.0 documented `pip install "sphinx-test-reports[pytest]"` for # the plugin, which is `ub-test-reports[pytest]` now. Kept so that line still installs # pytest; check (4) wants the extra's specifier spelled with the same tight floor -pytest = ["ub-test-reports[pytest]>=1.0.0.dev0,<2"] +pytest = ["ub-test-reports[pytest]>=1.0.0,<2"] # There is no `test` extra any more: the workspace's test tooling is the ROOT's shared # `test` dependency group, which every cell and the release compat cell install, and # `check_workspace.py` check (7) refuses a `[dependency-groups]` table here. `nox` and diff --git a/packages/ub-test-reports/docs/changelog.rst b/packages/ub-test-reports/docs/changelog.rst index a0ec36852..1a17b95dd 100644 --- a/packages/ub-test-reports/docs/changelog.rst +++ b/packages/ub-test-reports/docs/changelog.rst @@ -3,8 +3,16 @@ Changelog ========= -Unreleased ----------- +.. _`release:1.0.0`: + +1.0.0 +----- + +:Released: 2026-10-01 + +The first release of ub-test-reports: the Sphinx-free half of sphinx-test-reports as a distribution +of its own, so that a build action or a test run can install the ``test-reports`` converter and the +pytest plugin without the documentation toolchain. sphinx-test-reports 3.0.0 depends on it. - 1.0.0 is the first release: the converter, the pytest plugin, the parsers, the result vocabulary, the deterministic IDs and the ``[test_reports]`` model, moved out of diff --git a/packages/ub-test-reports/pyproject.toml b/packages/ub-test-reports/pyproject.toml index 10f7a8fb4..470fce533 100644 --- a/packages/ub-test-reports/pyproject.toml +++ b/packages/ub-test-reports/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "ub-test-reports" -version = "1.0.0.dev0" +version = "1.0.0" description = "Test results as needs without Sphinx: report parsers, the needs.json converter and the pytest plugin" authors = [{ name = "team useblocks", email = "info@useblocks.com" }] license = { file = "LICENSE" } diff --git a/packages/ub-test-reports/src/ub_test_reports/__init__.py b/packages/ub-test-reports/src/ub_test_reports/__init__.py index 252e7bdaa..ce80296a9 100644 --- a/packages/ub-test-reports/src/ub_test_reports/__init__.py +++ b/packages/ub-test-reports/src/ub_test_reports/__init__.py @@ -14,4 +14,4 @@ #: Checked against ``[project] version`` by ``check_workspace.py`` and stamped by #: ``poe bump``. -__version__ = "1.0.0.dev0" +__version__ = "1.0.0" diff --git a/uv.lock b/uv.lock index 17fcb2f15..73aebc3df 100644 --- a/uv.lock +++ b/uv.lock @@ -3855,7 +3855,7 @@ source = { editable = "packages/ub-project" } [[package]] name = "ub-test-reports" -version = "1.0.0.dev0" +version = "1.0.0" source = { editable = "packages/ub-test-reports" } dependencies = [ { name = "lxml" },