From 4ca1443927f0e20056418637be27e5c5f0da5019 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Nov 2026 01:43:19 +0000 Subject: [PATCH 1/2] Bump the github-actions group with 3 updates Updates the requirements on [actions-ext/python/setup](https://github.com/actions-ext/python), [EnricoMi/publish-unit-test-result-action](https://github.com/enricomi/publish-unit-test-result-action) and [actions/download-artifact](https://github.com/actions/download-artifact) to permit the latest version. Updates `actions-ext/python/setup` to c8228d827a81b9f8c808825328af361c45461ba3 - [Commits](https://github.com/actions-ext/python/commits/c8228d827a81b9f8c808825328af361c45461ba3) Updates `EnricoMi/publish-unit-test-result-action` from 2.24.0 to 2.25.0 - [Release notes](https://github.com/enricomi/publish-unit-test-result-action/releases) - [Commits](https://github.com/enricomi/publish-unit-test-result-action/compare/d0a4676d0e0b938bc201470d88276b7c74c712b3...7622c5bf3d112a72ab4fa3951c2aa5723d8ab92d) Updates `actions/download-artifact` from 8.0.1 to 8.0.2 - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c...9000827ccba6bdab643e8b6fd33ac0654aef8333) --- updated-dependencies: - dependency-name: actions-ext/python/setup dependency-version: c8228d827a81b9f8c808825328af361c45461ba3 dependency-type: direct:production dependency-group: github-actions - dependency-name: EnricoMi/publish-unit-test-result-action dependency-version: 2.25.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: actions/download-artifact dependency-version: 8.0.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] --- .github/workflows/build.yaml | 4 ++-- .github/workflows/docs.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 15e097e..8b4f558 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -87,7 +87,7 @@ jobs: if: always() - name: Publish test results - uses: EnricoMi/publish-unit-test-result-action@d0a4676d0e0b938bc201470d88276b7c74c712b3 # v2.24.0 + uses: EnricoMi/publish-unit-test-result-action@7622c5bf3d112a72ab4fa3951c2aa5723d8ab92d # v2.25.0 with: files: '**/junit.xml' @@ -129,7 +129,7 @@ jobs: persist-credentials: false - name: Setup Python - uses: actions-ext/python/setup@ec67f82b3bd863948308a41ecb9e70547cbb19c7 + uses: actions-ext/python/setup@c8228d827a81b9f8c808825328af361c45461ba3 with: version: "3.11" diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 21d5c73..5972380 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -27,7 +27,7 @@ jobs: version: "3.11" - name: Download distributions - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8 + uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8 with: pattern: dist merge-multiple: true From 82dfad91793581e8bcaa3df30a1081ce639edf1f Mon Sep 17 00:00:00 2001 From: Tim Paine <3105306+timkpaine@users.noreply.github.com> Date: Sun, 1 Nov 2026 13:12:55 -0500 Subject: [PATCH 2/2] Fix model ownership check for pydantic 2.14 generics Pydantic 2.14 sets a parametrized generic's __module__ to the module that parametrized it, so the guard counted ccflow's GenericContext[str] as a dau-core model. Compare the generic origin's module instead. Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com> --- dau_core/tests/test_validation_at_use.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dau_core/tests/test_validation_at_use.py b/dau_core/tests/test_validation_at_use.py index 4d2dc15..7153b85 100644 --- a/dau_core/tests/test_validation_at_use.py +++ b/dau_core/tests/test_validation_at_use.py @@ -157,7 +157,11 @@ def test_every_model_validates_at_use() -> None: continue loaded = importlib.import_module(module.name) for _name, cls in inspect.getmembers(loaded, inspect.isclass): - if not issubclass(cls, BaseModel) or cls is BaseModel or cls.__module__ != module.name or cls in seen: + if not issubclass(cls, BaseModel) or cls is BaseModel or cls in seen: + continue + # a parametrized generic belongs to its origin: from pydantic 2.14 + # its own __module__ is wherever it happened to be parametrized + if (cls.__pydantic_generic_metadata__["origin"] or cls).__module__ != module.name: continue seen.add(cls) if not hasattr(cls, "check") or not cls.model_config.get("frozen"):