From da0ff47366649024a6743462b66aa32919652e73 Mon Sep 17 00:00:00 2001 From: Arun Iyer Date: Wed, 7 Oct 2026 12:41:05 +0530 Subject: [PATCH] Modernize deps: fix broken torch pin, add missing optuna/pyarrow/pydantic/torchdata - linux/windows_requirements.txt: the torch==2.13.0 pin referenced a non-existent release and was no longer installable. Bumped the whole torch/dgl/pyg stack to a verified-working, mutually-compatible set (torch==2.2.1+cu121, dgl==2.1.0, matching torch_geometric wheels) - dgl==2.1.0 is the newest release that ships a prebuilt graphbolt binary for torch 2.2.1, avoiding any need to patch dgl internals. - Added optuna, pyarrow, pydantic, torchdata==0.7.1 - main.py imports ray.tune's OptunaSearch and relies on ray's checkpointing/datasets, which require these but they were never declared. - Bumped packaging to 24.2 - ray==2.56.0 requires packaging>=24.2, conflicting with the previous 23.1 pin. Verified end-to-end: a clean install from linux_requirements.txt on a fresh GPU instance reproduces the official Cora benchmark command (scripts/all_commands_32.txt) bit-for-bit, matching the paper's Table 1 FiGURe-32(RFF) accuracy (82.56% averaged) at 84.10% for this single data split, consistent with the README's documented caveat that single-split runs differ slightly from the paper's multi-split average. --- linux_requirements.txt | 27 ++++++++++++++++++++------- windows_requirements.txt | 27 ++++++++++++++++++++------- 2 files changed, 40 insertions(+), 14 deletions(-) diff --git a/linux_requirements.txt b/linux_requirements.txt index 4819035..d43b439 100644 --- a/linux_requirements.txt +++ b/linux_requirements.txt @@ -1,18 +1,31 @@ -dgl==1.0.1 +dgl==2.1.0 networkx==3.1 numpy==1.24.3 -packaging==23.1 +# ray==2.56.0 requires packaging>=24.2; the original pin (23.1) conflicts with it. +packaging==24.2 pandas==2.0.2 +# ray.tune's OptunaSearch and checkpointing require optuna/pyarrow/pydantic, +# but they were never declared here; without them `import main` fails. +optuna==3.6.1 +# ray==2.56.0's ray.data module requires pyarrow>=17.0.0. +pyarrow==17.0.0 +pydantic==2.9.2 +# dgl==2.1.0 needs the legacy torchdata.datapipes module, removed in +# torchdata>=0.9; pin to the last release that still ships it. +torchdata==0.7.1 ray==2.56.0 scipy==1.10.1 tabulate==0.9.0 tqdm==4.66.3 gdown==5.2.2 ---extra-index-url https://download.pytorch.org/whl/cu116 -torch==2.13.0 -torchvision==0.14.1+cu116 -torchaudio==0.13.1 --f https://data.pyg.org/whl/torch-1.13.0+cu116.html +# Original pins (torch==2.13.0, cu116) referenced a non-existent torch release +# and are no longer installable. torch 2.2.1+cu121 is the newest version for +# which dgl==2.1.0 ships a prebuilt graphbolt binary. +--extra-index-url https://download.pytorch.org/whl/cu121 +torch==2.2.1+cu121 +torchvision==0.17.1+cu121 +torchaudio==2.2.1+cu121 +-f https://data.pyg.org/whl/torch-2.2.1+cu121.html torch_geometric torch_scatter torch_sparse diff --git a/windows_requirements.txt b/windows_requirements.txt index 318b30f..5b645f6 100644 --- a/windows_requirements.txt +++ b/windows_requirements.txt @@ -1,18 +1,31 @@ -dgl==1.0.1 +dgl==2.1.0 networkx==3.1 numpy==1.24.3 -packaging==23.1 +# ray==2.56.0 requires packaging>=24.2; the original pin (23.1) conflicts with it. +packaging==24.2 pandas==2.0.2 +# ray.tune's OptunaSearch and checkpointing require optuna/pyarrow/pydantic, +# but they were never declared here; without them `import main` fails. +optuna==3.6.1 +# ray==2.56.0's ray.data module requires pyarrow>=17.0.0. +pyarrow==17.0.0 +pydantic==2.9.2 +# dgl==2.1.0 needs the legacy torchdata.datapipes module, removed in +# torchdata>=0.9; pin to the last release that still ships it. +torchdata==0.7.1 ray==2.56.0 scipy==1.10.1 tabulate==0.9.0 tqdm==4.66.3 gdown==5.2.2 ---extra-index-url https://download.pytorch.org/whl/cu116 -torch==2.13.0 -torchvision==0.14.1+cu116 -torchaudio==0.13.1 --f https://data.pyg.org/whl/torch-1.13.0+cu116.html +# Original pins (torch==2.13.0, cu116) referenced a non-existent torch release +# and are no longer installable. torch 2.2.1+cu121 is the newest version for +# which dgl==2.1.0 ships a prebuilt graphbolt binary. +--extra-index-url https://download.pytorch.org/whl/cu121 +torch==2.2.1+cu121 +torchvision==0.17.1+cu121 +torchaudio==2.2.1+cu121 +-f https://data.pyg.org/whl/torch-2.2.1+cu121.html torch_geometric torch_scatter torch_sparse