From 7d030e5d38e70afa2ec6f6a6e72da642efc07f57 Mon Sep 17 00:00:00 2001 From: sobolevn Date: Tue, 28 Jul 2026 23:42:32 +0300 Subject: [PATCH 1/5] [tqdm] Add `tensorflow` to `stubtest-dependencies` --- stubs/tqdm/@tests/stubtest_allowlist.txt | 4 ---- stubs/tqdm/METADATA.toml | 5 +---- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/stubs/tqdm/@tests/stubtest_allowlist.txt b/stubs/tqdm/@tests/stubtest_allowlist.txt index 6eb696d3f060..8887707780b2 100644 --- a/stubs/tqdm/@tests/stubtest_allowlist.txt +++ b/stubs/tqdm/@tests/stubtest_allowlist.txt @@ -1,10 +1,6 @@ # Cannot import in stubtest tqdm.__main__ -# TODO: Reenable when tensorflow supports Python 3.13 and is added to the -# stubtest dependencies in METADATA.toml. -tqdm.keras - # Fails to import as of v4.68.0 since it attempts to re-export functions that were # removed from 'tqdm.utils' (e.g. _screen_shape_linux). tqdm._utils diff --git a/stubs/tqdm/METADATA.toml b/stubs/tqdm/METADATA.toml index 34b93715c101..11c699c59d49 100644 --- a/stubs/tqdm/METADATA.toml +++ b/stubs/tqdm/METADATA.toml @@ -4,7 +4,4 @@ optional-dependencies = ["types-requests"] [tool.stubtest] extras = ["slack", "telegram"] -# Add `"tensorflow"` to this list when there's a tensorflow release supporting -# Python 3.13: https://github.com/tensorflow/tensorflow/issues/78774. -# Also remove tqdm.keras from @tests/stubtest_allowlist.txt. -stubtest-dependencies = ["dask", "pandas", "rich"] +stubtest-dependencies = ["dask", "pandas", "rich", "tensorflow"] From 83a4150f9e90a4c2c1a95cd61cfde3888d9cc762 Mon Sep 17 00:00:00 2001 From: sobolevn Date: Tue, 28 Jul 2026 23:48:17 +0300 Subject: [PATCH 2/5] Remove `_Callback` --- stubs/tqdm/tqdm/keras.pyi | 29 +++-------------------------- 1 file changed, 3 insertions(+), 26 deletions(-) diff --git a/stubs/tqdm/tqdm/keras.pyi b/stubs/tqdm/tqdm/keras.pyi index 7548952fb794..b23ef91c7c95 100644 --- a/stubs/tqdm/tqdm/keras.pyi +++ b/stubs/tqdm/tqdm/keras.pyi @@ -1,33 +1,10 @@ from _typeshed import Incomplete -__all__ = ["TqdmCallback"] +from tensorflow import keras -# keras.callbacks.Callback -class _Callback: - validation_data: Incomplete | None - model: Incomplete | None - params: Incomplete - def __init__(self) -> None: ... - def set_params(self, params) -> None: ... - def set_model(self, model) -> None: ... - def on_batch_begin(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_batch_end(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_epoch_begin(self, epoch, logs: Incomplete | None = ...) -> None: ... - def on_epoch_end(self, epoch, logs: Incomplete | None = ...) -> None: ... - def on_train_batch_begin(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_train_batch_end(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_test_batch_begin(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_test_batch_end(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_predict_batch_begin(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_predict_batch_end(self, batch, logs: Incomplete | None = ...) -> None: ... - def on_train_begin(self, logs: Incomplete | None = ...) -> None: ... - def on_train_end(self, logs: Incomplete | None = ...) -> None: ... - def on_test_begin(self, logs: Incomplete | None = ...) -> None: ... - def on_test_end(self, logs: Incomplete | None = ...) -> None: ... - def on_predict_begin(self, logs: Incomplete | None = ...) -> None: ... - def on_predict_end(self, logs: Incomplete | None = ...) -> None: ... +__all__ = ["TqdmCallback"] -class TqdmCallback(_Callback): +class TqdmCallback(keras.callbacks.Callback): @staticmethod def bar2callback(bar, pop=None, delta=...): ... tqdm_class: Incomplete From 0bc728743ac35e849c14be1cf1ce4d5d6284195e Mon Sep 17 00:00:00 2001 From: sobolevn Date: Tue, 28 Jul 2026 23:53:51 +0300 Subject: [PATCH 3/5] Add `types-tensorflow` --- stubs/tqdm/METADATA.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stubs/tqdm/METADATA.toml b/stubs/tqdm/METADATA.toml index 11c699c59d49..8b46cd5d48e9 100644 --- a/stubs/tqdm/METADATA.toml +++ b/stubs/tqdm/METADATA.toml @@ -1,6 +1,6 @@ version = "4.69.*" upstream-repository = "https://github.com/tqdm/tqdm" -optional-dependencies = ["types-requests"] +optional-dependencies = ["types-requests", "types-tensorflow"] [tool.stubtest] extras = ["slack", "telegram"] From 7d2d9afe2b61281239b384ea2c332c0a16f12d5c Mon Sep 17 00:00:00 2001 From: sobolevn Date: Wed, 29 Jul 2026 11:21:09 +0300 Subject: [PATCH 4/5] Try without `tensorflow` --- stubs/tqdm/METADATA.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stubs/tqdm/METADATA.toml b/stubs/tqdm/METADATA.toml index 8b46cd5d48e9..a12ef707d77e 100644 --- a/stubs/tqdm/METADATA.toml +++ b/stubs/tqdm/METADATA.toml @@ -4,4 +4,4 @@ optional-dependencies = ["types-requests", "types-tensorflow"] [tool.stubtest] extras = ["slack", "telegram"] -stubtest-dependencies = ["dask", "pandas", "rich", "tensorflow"] +stubtest-dependencies = ["dask", "pandas", "rich"] From 562adaee7e57831fe0f41c562f9e4ee895223c4c Mon Sep 17 00:00:00 2001 From: sobolevn Date: Wed, 29 Jul 2026 11:43:25 +0300 Subject: [PATCH 5/5] Revert: Try without `tensorflow` --- stubs/tqdm/METADATA.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stubs/tqdm/METADATA.toml b/stubs/tqdm/METADATA.toml index a12ef707d77e..8b46cd5d48e9 100644 --- a/stubs/tqdm/METADATA.toml +++ b/stubs/tqdm/METADATA.toml @@ -4,4 +4,4 @@ optional-dependencies = ["types-requests", "types-tensorflow"] [tool.stubtest] extras = ["slack", "telegram"] -stubtest-dependencies = ["dask", "pandas", "rich"] +stubtest-dependencies = ["dask", "pandas", "rich", "tensorflow"]