From c831d111d368c8866661f10b7f2c0daf2819ca55 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Thu, 13 Nov 2025 08:49:17 -0500 Subject: [PATCH 01/16] add 3.13 and 3.14 tests --- .github/workflows/ci-tests-fabric.yml | 2 ++ .github/workflows/ci-tests-pytorch.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/ci-tests-fabric.yml b/.github/workflows/ci-tests-fabric.yml index adf6ae5af1d80..eb9d06479d771 100644 --- a/.github/workflows/ci-tests-fabric.yml +++ b/.github/workflows/ci-tests-fabric.yml @@ -55,6 +55,8 @@ jobs: # adding recently cut Torch 2.7 - FUTURE - { pkg-name: "fabric", python-version: "3.12", pytorch-version: "2.8" } + - { pkg-name: "fabric", python-version: "3.13", pytorch-version: "2.8" } + - { pkg-name: "fabric", python-version: "3.14", pytorch-version: "2.8" } # "oldest" versions tests, only on minimum Python - { pkg-name: "fabric", pytorch-version: "2.1", requires: "oldest" } diff --git a/.github/workflows/ci-tests-pytorch.yml b/.github/workflows/ci-tests-pytorch.yml index 49071f32757ec..3224d55bae8b3 100644 --- a/.github/workflows/ci-tests-pytorch.yml +++ b/.github/workflows/ci-tests-pytorch.yml @@ -59,6 +59,8 @@ jobs: # adding recently cut Torch 2.7 - FUTURE - { pkg-name: "pytorch", python-version: "3.12", pytorch-version: "2.8" } + - { pkg-name: "pytorch", python-version: "3.13", pytorch-version: "2.8" } + - { pkg-name: "pytorch", python-version: "3.14", pytorch-version: "2.8" } # "oldest" versions tests, only on minimum Python - { pkg-name: "pytorch", pytorch-version: "2.1", requires: "oldest" } From 8a056db2d54e787ca24f570d4d0fad566fc2dc8c Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Fri, 14 Nov 2025 16:25:25 -0500 Subject: [PATCH 02/16] filter numpy warnings --- requirements/pytorch/check-avail-extras.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/requirements/pytorch/check-avail-extras.py b/requirements/pytorch/check-avail-extras.py index 3ab8d2848c3f0..a49feb8e8b097 100644 --- a/requirements/pytorch/check-avail-extras.py +++ b/requirements/pytorch/check-avail-extras.py @@ -1,4 +1,22 @@ +import sys +import warnings + if __name__ == "__main__": + if sys.platform == "win32": + # ignore warnings related to Python 3.13 and Numpy incompatibility on Windows + numpy_warnings = [ + r"invalid value encountered in exp2.*", + r"invalid value encountered in nextafter.*", + r"invalid value encountered in log10.*", + ] + + for w in numpy_warnings: + warnings.filterwarnings( + action="ignore", + message=w, + category=RuntimeWarning, + ) + import hydra # noqa: F401 import jsonargparse # noqa: F401 import matplotlib # noqa: F401 From 9c91d4a3900fb12f0cb0621ec7f09f612bd94661 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Fri, 14 Nov 2025 17:46:55 -0500 Subject: [PATCH 03/16] stick to py313 for now --- .github/workflows/ci-tests-fabric.yml | 1 - .github/workflows/ci-tests-pytorch.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/ci-tests-fabric.yml b/.github/workflows/ci-tests-fabric.yml index eb9d06479d771..5958e2e63746f 100644 --- a/.github/workflows/ci-tests-fabric.yml +++ b/.github/workflows/ci-tests-fabric.yml @@ -56,7 +56,6 @@ jobs: # adding recently cut Torch 2.7 - FUTURE - { pkg-name: "fabric", python-version: "3.12", pytorch-version: "2.8" } - { pkg-name: "fabric", python-version: "3.13", pytorch-version: "2.8" } - - { pkg-name: "fabric", python-version: "3.14", pytorch-version: "2.8" } # "oldest" versions tests, only on minimum Python - { pkg-name: "fabric", pytorch-version: "2.1", requires: "oldest" } diff --git a/.github/workflows/ci-tests-pytorch.yml b/.github/workflows/ci-tests-pytorch.yml index 3224d55bae8b3..f29cf743ad28d 100644 --- a/.github/workflows/ci-tests-pytorch.yml +++ b/.github/workflows/ci-tests-pytorch.yml @@ -60,7 +60,6 @@ jobs: # adding recently cut Torch 2.7 - FUTURE - { pkg-name: "pytorch", python-version: "3.12", pytorch-version: "2.8" } - { pkg-name: "pytorch", python-version: "3.13", pytorch-version: "2.8" } - - { pkg-name: "pytorch", python-version: "3.14", pytorch-version: "2.8" } # "oldest" versions tests, only on minimum Python - { pkg-name: "pytorch", pytorch-version: "2.1", requires: "oldest" } From 674f45709062a58ed5aec21246c3189baa673fe1 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Fri, 14 Nov 2025 17:55:17 -0500 Subject: [PATCH 04/16] wrap in enum.member --- .../strategies/test_ddp_integration_comm_hook.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py index c4d40e1dfa7d2..53a24019814e1 100644 --- a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py +++ b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py @@ -11,6 +11,8 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +import sys +from enum import member from unittest import mock import pytest @@ -23,6 +25,9 @@ if torch.distributed.is_available(): import torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook as post_localSGD + + if sys.version_info >= (3, 13): + post_localSGD = member(post_localSGD) from torch.distributed.algorithms.ddp_comm_hooks import default_hooks as default from torch.distributed.algorithms.ddp_comm_hooks import powerSGD_hook as powerSGD From d97530522a8d96a4789409d795e11e440e7e489e Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Fri, 14 Nov 2025 17:58:17 -0500 Subject: [PATCH 05/16] conditionally import enum.member --- .../tests_pytorch/strategies/test_ddp_integration_comm_hook.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py index 53a24019814e1..84acffc1a4c17 100644 --- a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py +++ b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. import sys -from enum import member from unittest import mock import pytest @@ -27,6 +26,8 @@ import torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook as post_localSGD if sys.version_info >= (3, 13): + from enum import member + post_localSGD = member(post_localSGD) from torch.distributed.algorithms.ddp_comm_hooks import default_hooks as default from torch.distributed.algorithms.ddp_comm_hooks import powerSGD_hook as powerSGD From d63299552703a373480e813f3a3fe7802a6d6ae4 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Fri, 14 Nov 2025 18:04:04 -0500 Subject: [PATCH 06/16] not it --- .../strategies/test_ddp_integration_comm_hook.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py index 84acffc1a4c17..c4d40e1dfa7d2 100644 --- a/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py +++ b/tests/tests_pytorch/strategies/test_ddp_integration_comm_hook.py @@ -11,7 +11,6 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -import sys from unittest import mock import pytest @@ -24,11 +23,6 @@ if torch.distributed.is_available(): import torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook as post_localSGD - - if sys.version_info >= (3, 13): - from enum import member - - post_localSGD = member(post_localSGD) from torch.distributed.algorithms.ddp_comm_hooks import default_hooks as default from torch.distributed.algorithms.ddp_comm_hooks import powerSGD_hook as powerSGD From 9f49346164b252558ccf5661ca3398ef16dfc539 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Sat, 15 Nov 2025 15:02:39 -0500 Subject: [PATCH 07/16] conditional numpy version --- requirements/fabric/test.txt | 3 ++- requirements/pytorch/test.txt | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index ed72f25dd3257..04d78e143f5d4 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,6 +1,7 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy >=1.21.0, <1.27.0 +numpy >=1.21.0, <1.27.0; python_version < "3.13" +numpy >=2.1.0, <2.3.0; python_version >= "3.13" pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index 9a315c25bfa21..8bba2c0400c47 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,7 +10,8 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy >1.20.0, <1.27.0 +numpy >=1.21.0, <1.27.0; python_version < "3.13" +numpy >=2.1.0, <2.3.0; python_version >= "3.13" onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From 65cbebfed931971756e79aca43b4ea545b87e6b9 Mon Sep 17 00:00:00 2001 From: Shion Matsumoto Date: Sat, 15 Nov 2025 15:02:49 -0500 Subject: [PATCH 08/16] undo --- requirements/pytorch/check-avail-extras.py | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/requirements/pytorch/check-avail-extras.py b/requirements/pytorch/check-avail-extras.py index a49feb8e8b097..3ab8d2848c3f0 100644 --- a/requirements/pytorch/check-avail-extras.py +++ b/requirements/pytorch/check-avail-extras.py @@ -1,22 +1,4 @@ -import sys -import warnings - if __name__ == "__main__": - if sys.platform == "win32": - # ignore warnings related to Python 3.13 and Numpy incompatibility on Windows - numpy_warnings = [ - r"invalid value encountered in exp2.*", - r"invalid value encountered in nextafter.*", - r"invalid value encountered in log10.*", - ] - - for w in numpy_warnings: - warnings.filterwarnings( - action="ignore", - message=w, - category=RuntimeWarning, - ) - import hydra # noqa: F401 import jsonargparse # noqa: F401 import matplotlib # noqa: F401 From 13c2c64c44d62c0e150a6ca17f3d86178cada85e Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Fri, 21 Nov 2025 22:54:13 +0545 Subject: [PATCH 09/16] add igonore for future warning --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 078738d21111d..fffcca54dcf41 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -173,6 +173,7 @@ filterwarnings = [ "error::FutureWarning", "ignore::FutureWarning:onnxscript", # Temporary ignore until onnxscript is updated "ignore:You are using `torch.load` with `weights_only=False`.*:FutureWarning", + "ignore::FutureWarning:torch.distributed.algorithms.ddp_comm_hooks", ] xfail_strict = true junit_duration_report = "call" From e4634c3cf19ced6ed689cb4dcab6e49a5e73e216 Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Fri, 21 Nov 2025 23:07:22 +0545 Subject: [PATCH 10/16] drop pin for numpy --- requirements/fabric/test.txt | 3 +-- requirements/pytorch/test.txt | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index 04d78e143f5d4..e4518618b10d2 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,7 +1,6 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy >=1.21.0, <1.27.0; python_version < "3.13" -numpy >=2.1.0, <2.3.0; python_version >= "3.13" +numpy pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index 8bba2c0400c47..704a4893a047f 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,8 +10,7 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy >=1.21.0, <1.27.0; python_version < "3.13" -numpy >=2.1.0, <2.3.0; python_version >= "3.13" +numpy onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From da923b2290d3ec60800698d8627dbcd6fba9f7ee Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Fri, 21 Nov 2025 23:29:32 +0545 Subject: [PATCH 11/16] update numpy version --- requirements/fabric/test.txt | 3 ++- requirements/pytorch/test.txt | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index e4518618b10d2..bbb803e5ed973 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,6 +1,7 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy +numpy >=1.21.0, <1.27.0; python_version < "3.10" +numpy >=2.1.0, <2.3.0; python_version >= "3.10" pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index 704a4893a047f..c6d563e18180c 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,7 +10,8 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy +numpy >=1.21.0, <1.27.0; python_version < "3.10" +numpy >=2.1.0, <2.3.0; python_version >= "3.10" onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From 0d9ec6c94900dbdeead4762bf724ba6b7fd0e9b1 Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Fri, 21 Nov 2025 23:37:47 +0545 Subject: [PATCH 12/16] update numpy version --- requirements/fabric/test.txt | 4 ++-- requirements/pytorch/test.txt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index bbb803e5ed973..4b6c32cf791b3 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,7 +1,7 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy >=1.21.0, <1.27.0; python_version < "3.10" -numpy >=2.1.0, <2.3.0; python_version >= "3.10" +numpy >=1.21.0, <1.27.0; python_version < "3.12" +numpy >=2.1.0, <2.3.0; python_version >= "3.12" pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index c6d563e18180c..0fff89e7b9779 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,8 +10,8 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy >=1.21.0, <1.27.0; python_version < "3.10" -numpy >=2.1.0, <2.3.0; python_version >= "3.10" +numpy >=1.21.0, <1.27.0; python_version < "3.12" +numpy >=2.1.0, <2.3.0; python_version >= "3.12" onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From d444bbda98e6d0cb13cd45023dab3c662daff3f7 Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Sat, 22 Nov 2025 00:08:22 +0545 Subject: [PATCH 13/16] update numpy pin --- requirements/fabric/test.txt | 4 ++-- requirements/pytorch/test.txt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index 4b6c32cf791b3..44fd6da472a5e 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,7 +1,7 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy >=1.21.0, <1.27.0; python_version < "3.12" -numpy >=2.1.0, <2.3.0; python_version >= "3.12" +numpy >=1.21.0, <1.27.0; python_version < "3.10" +numpy >=2.1.0, <2.3.5; python_version >= "3.10" pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index 0fff89e7b9779..4507c7e6599ee 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,8 +10,8 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy >=1.21.0, <1.27.0; python_version < "3.12" -numpy >=2.1.0, <2.3.0; python_version >= "3.12" +numpy >=1.21.0, <1.27.0; python_version < "3.10" +numpy >=2.1.0, <2.3.5; python_version >= "3.10" onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From 13ba5b0b42128f708ae09d6d2d3deef850f5e53b Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Sat, 22 Nov 2025 01:01:17 +0545 Subject: [PATCH 14/16] update --- requirements/fabric/test.txt | 4 ++-- requirements/pytorch/test.txt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements/fabric/test.txt b/requirements/fabric/test.txt index 44fd6da472a5e..7ac245798d345 100644 --- a/requirements/fabric/test.txt +++ b/requirements/fabric/test.txt @@ -1,7 +1,7 @@ coverage ==7.11.0; python_version >= "3.10" coverage ==7.10.7; python_version < "3.10" -numpy >=1.21.0, <1.27.0; python_version < "3.10" -numpy >=2.1.0, <2.3.5; python_version >= "3.10" +numpy >1.21.0, <1.27.0; python_version < "3.12" +numpy >2.1.0, <2.3.5; python_version >= "3.12" pytest ==8.4.2 pytest-cov ==7.0.0 pytest-timeout ==2.4.0 diff --git a/requirements/pytorch/test.txt b/requirements/pytorch/test.txt index 4507c7e6599ee..431f830e4e4f1 100644 --- a/requirements/pytorch/test.txt +++ b/requirements/pytorch/test.txt @@ -10,8 +10,8 @@ pytest-random-order ==1.2.0 # needed in tests cloudpickle >=1.3, <3.2.0 scikit-learn >0.22.1, <1.8.0 -numpy >=1.21.0, <1.27.0; python_version < "3.10" -numpy >=2.1.0, <2.3.5; python_version >= "3.10" +numpy >1.21.0, <1.27.0; python_version < "3.12" +numpy >2.1.0, <2.3.5; python_version >= "3.12" onnx >1.12.0, <1.20.0 onnxruntime >=1.12.0, <1.24.0 onnxscript >= 0.1.0, < 0.6.0 From bbda0447d67edb8fd619e1fbb2a8f9c5ff725862 Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Sat, 22 Nov 2025 14:02:58 +0545 Subject: [PATCH 15/16] re-trigger ci From f43ebd683fe46c65e0d48fb1675049cc94d5d17c Mon Sep 17 00:00:00 2001 From: bhimrazy Date: Wed, 3 Dec 2025 15:18:38 +0545 Subject: [PATCH 16/16] re-run to run al missing actions