From 26ebc9fae3e3fc441c50f90ba78c6a6e6c4f4a86 Mon Sep 17 00:00:00 2001 From: Lukas Juhrich Date: Sat, 15 Nov 2025 16:58:39 +0100 Subject: [PATCH 1/3] bump wtforms-widgets --- deps/wtforms-widgets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/wtforms-widgets b/deps/wtforms-widgets index bb423ae68..628c3e35c 160000 --- a/deps/wtforms-widgets +++ b/deps/wtforms-widgets @@ -1 +1 @@ -Subproject commit bb423ae68b5339c069c4fe615a961f947eccb917 +Subproject commit 628c3e35c516c0441f78b16733a80b8e03717d07 From f40e063991c746ef99d1bd437f3004e3ff11088d Mon Sep 17 00:00:00 2001 From: Lukas Juhrich Date: Sat, 15 Nov 2025 16:58:41 +0100 Subject: [PATCH 2/3] Use `sql` extra of wtforms-widgets and install types-wtforms --- pyproject.toml | 3 ++- uv.lock | 26 ++++++++++++++++++++++---- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 66c1fb891..7f517255f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,7 +62,7 @@ dependencies = [ "webargs ~= 8.3.0", "wrapt ~= 1.16.0", "WTForms ~= 2.3.3", - "wtforms-widgets", + "wtforms-widgets[sql]", "sepaxml ~= 2.6.2", ] @@ -101,6 +101,7 @@ dev = [ "types-passlib ~= 1.7.7", "watchdog ~= 2.3.1", "sepaxml ~= 2.6.2", + "types-wtforms>=3.2.1.20250809", ] [project.scripts] diff --git a/uv.lock b/uv.lock index 40962d762..f7e137c76 100644 --- a/uv.lock +++ b/uv.lock @@ -1553,7 +1553,7 @@ dependencies = [ { name = "webargs" }, { name = "wrapt" }, { name = "wtforms" }, - { name = "wtforms-widgets" }, + { name = "wtforms-widgets", extra = ["sql"] }, ] [package.dev-dependencies] @@ -1582,6 +1582,7 @@ dev = [ { name = "types-jsonschema" }, { name = "types-netaddr" }, { name = "types-passlib" }, + { name = "types-wtforms" }, { name = "watchdog" }, ] prod = [ @@ -1630,7 +1631,7 @@ requires-dist = [ { name = "webargs", specifier = "~=8.3.0" }, { name = "wrapt", specifier = "~=1.16.0" }, { name = "wtforms", specifier = "~=2.3.3" }, - { name = "wtforms-widgets", editable = "deps/wtforms-widgets" }, + { name = "wtforms-widgets", extras = ["sql"], editable = "deps/wtforms-widgets" }, ] [package.metadata.requires-dev] @@ -1659,6 +1660,7 @@ dev = [ { name = "types-jsonschema", specifier = "~=4.3.0" }, { name = "types-netaddr", specifier = "~=1.3.0" }, { name = "types-passlib", specifier = "~=1.7.7" }, + { name = "types-wtforms", specifier = ">=3.2.1.20250809" }, { name = "watchdog", specifier = "~=2.3.1" }, ] prod = [ @@ -2362,6 +2364,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/39/fc/530236c21f1a0be84c42b23c91c250ef96404c475b739ac4479430ebd7d4/types_passlib-1.7.7.20250602-py3-none-any.whl", hash = "sha256:ed73a91be9a22484ebd62cc0d127675ded542b892b99776db92dab760bbfe274", size = 40410, upload-time = "2025-06-02T03:14:54.834Z" }, ] +[[package]] +name = "types-wtforms" +version = "3.2.1.20250809" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markupsafe" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2e/f7/72ca8564a59f118dd5ce5b6afcdbb38c297d04950dcaf49873dae8c6ff45/types_wtforms-3.2.1.20250809.tar.gz", hash = "sha256:9108399333be3bde66179f69a610a5d05c25485024f698d5adc3f6a9df20d029", size = 17194, upload-time = "2025-08-09T03:17:24.73Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fe/5a/ecedecb8a1ccff7ea936fb77a359f8295da36fb7e7985cb4fc147110a091/types_wtforms-3.2.1.20250809-py3-none-any.whl", hash = "sha256:d254cf027c6725e21ad50044da692d57586dd29f38abd3a6b4ec10993f6741cc", size = 24294, upload-time = "2025-08-09T03:17:24.008Z" }, +] + [[package]] name = "typing-extensions" version = "4.15.0" @@ -2517,13 +2531,16 @@ wheels = [ [[package]] name = "wtforms-widgets" -version = "1.0.8" source = { editable = "deps/wtforms-widgets" } dependencies = [ { name = "flask" }, { name = "flask-wtf" }, { name = "markupsafe" }, { name = "wtforms" }, +] + +[package.optional-dependencies] +sql = [ { name = "wtforms-sqlalchemy" }, ] @@ -2533,8 +2550,9 @@ requires-dist = [ { name = "flask-wtf" }, { name = "markupsafe" }, { name = "wtforms" }, - { name = "wtforms-sqlalchemy" }, + { name = "wtforms-sqlalchemy", marker = "extra == 'sql'" }, ] +provides-extras = ["sql"] [[package]] name = "xmlschema" From 2359ef655c56d3780c769b225511016f4d090608 Mon Sep 17 00:00:00 2001 From: Lukas Juhrich Date: Sat, 29 Nov 2025 11:08:16 +0100 Subject: [PATCH 3/3] ci: fetch tags in submodules for versioningit --- .github/workflows/docker-image.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 16870a6b0..a5a07c6e6 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -17,6 +17,10 @@ jobs: # assuming no PR has more than 50 commits. fetch-depth: 50 submodules: recursive + - name: Fetch tags in submodules (for versioningit) + run: | + git submodule foreach --recursive 'git fetch --force --tags --prune' + git submodule foreach --recursive 'git fetch --force --tags --prune --unshallow || true' - uses: actions/setup-python@v5 with: python-version: '3.12' @@ -38,6 +42,10 @@ jobs: uses: actions/checkout@v4 with: submodules: recursive + - name: Fetch tags in submodules (for versioningit) + run: | + git submodule foreach --recursive 'git fetch --force --tags --prune' + git submodule foreach --recursive 'git fetch --force --tags --prune --unshallow || true' - uses: actions/setup-python@v5 with: python-version: '3.12' @@ -97,6 +105,10 @@ jobs: - uses: actions/checkout@v4 with: submodules: recursive + - name: Fetch tags in submodules (for versioningit) + run: | + git submodule foreach --recursive 'git fetch --force --tags --prune' + git submodule foreach --recursive 'git fetch --force --tags --prune --unshallow || true' - uses: oven-sh/setup-bun@v1 with: bun-version: 1.1.26 @@ -111,6 +123,10 @@ jobs: uses: actions/checkout@v4 with: submodules: 'true' + - name: Fetch tags in submodules (for versioningit) + run: | + git submodule foreach --recursive 'git fetch --force --tags --prune' + git submodule foreach --recursive 'git fetch --force --tags --prune --unshallow || true' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 with: @@ -140,6 +156,10 @@ jobs: uses: actions/checkout@v4 with: submodules: 'true' + - name: Fetch tags in submodules (for versioningit) + run: | + git submodule foreach --recursive 'git fetch --force --tags --prune' + git submodule foreach --recursive 'git fetch --force --tags --prune --unshallow || true' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 with: