Repository navigation
[release/2.15] Add related_commits for dependencies - #3816
Merged
jithunnair-amd merged 2 commits intoOct 16, 2026
Merged
Conversation
Signed-off-by: pablo-garay <pgarayfe@amd.com>
…ROCm support Also use LF line endings, matching release/2.14. Signed-off-by: pablo-garay <pgarayfe@amd.com>
This was referenced Oct 15, 2026
jithunnair-amd
pushed a commit
that referenced
this pull request
Oct 16, 2026
## Summary Pin Python dependencies for the `release/2.15` bringup so CI and builds are reproducible, and make everything resolve cleanly on Python **3.10 / 3.11 / 3.12 / 3.13 / 3.14 / 3.15**. Mirrors the 2.14 bringup (#3574), plus the 3.15 handling that is new in this release. Three commits, one per file: - `requirements.txt`: pin all direct dev/install deps (with `python_version` splits for `filelock`, `hypothesis` and `networkx`). - `requirements-build.txt`: pin all build-system deps (with a `python_version` split for `numpy`). - `.ci/docker/requirements-ci.txt`: pin the previously-loose entries (`click`, `psutil`, `pytest-rerunfailures`, `unittest-xml-reporting`, `redis`, `pyzstd` split, `six`, `cuda-bindings`, `cupti-python`, `tqdm`, `uv`, `librosa`) and add `python_version` conditionals for 3.14/3.15. ## Per-version splits (dev/build) - **numpy** (build): `2.2.6` (<3.11), `2.4.6` (==3.11), `2.5.4` (>=3.12). - **networkx** (dev): `3.4.2` (<3.11), `3.6.1` (==3.11), `3.7` (>=3.12). - **filelock** (dev): `4.1.0` (<3.11), `4.2.0` (>=3.11). - **hypothesis** (dev): `6.168.5` (<3.11), `6.169.2` (>=3.11). Every other dev/build dep resolved identically across 3.10-3.15, so those are flat-pinned. ## 3.14 / 3.15 conditionals in requirements-ci.txt Restored from 2.14 (lost in the 2.15 branch): - **pywavelets**: `1.9.0` for 3.14 (1.7.0 has no cp314 wheel). - **fbscribelogger**: guarded to `< 3.14` (its `thriftpy2` dep has no cp314/cp315 wheel and would source-build in the compiler-less test image). New for 3.15 (earliest release with a cp315 wheel): - **numpy** `2.5.2` (the existing `2.4.6` pin for 3.15 has no cp315 wheel), **pandas** `3.0.6`, **optree** `0.20.0`, **pywavelets** `1.10.0`, **aiohttp** `3.14.4`. - **scikit-image**: skipped on 3.15 (no release ships a cp315 wheel yet). ## How versions were resolved Per the documented process: installed each requirements file in a fresh venv inside an `ubuntu:24.04` container with no C compiler (deadsnakes for the non-native Python versions) and pinned the `pip freeze` output. All three files install on **3.10-3.15** with `pip check` clean and no new compiler-dependent source builds (only the pre-existing pure-Python `pwlf` and `coremltools` sdists, plus `pyyaml` on 3.15, which builds without its optional C extension). ## Test plan TheRock CI `multi_arch_build_portable_linux_pytorch_wheels.yml` (gfx94X-dcgpu, ROCm 10.2.0a20261013, `pytorch_git_ref` = `pablo-garay/release-2.15-integration`, which is this PR plus the related_commits from #3816): - [x] Python 3.11: build passed, [run 38705512288](https://github.com/ROCm/TheRock/actions/runs/38705512288) - [x] Python 3.12: build passed, [run 38705525582](https://github.com/ROCm/TheRock/actions/runs/38705525582) - [x] Python 3.13: build passed, [run 38705535781](https://github.com/ROCm/TheRock/actions/runs/38705535781) - [x] Python 3.14: build passed, [run 38705545732](https://github.com/ROCm/TheRock/actions/runs/38705545732) - Python 3.10: n/a. Triton 3.9 requires Python >=3.11, and TheRock dropped 3.10 release builds in ROCm/TheRock#8396 ([run 38705500960](https://github.com/ROCm/TheRock/actions/runs/38705500960) fails installing the triton wheel). - Python 3.15: n/a until ROCm/TheRock#8394 adds 3.15 to the build image ([run 38705556076](https://github.com/ROCm/TheRock/actions/runs/38705556076) fails at setup: `Could not find python: /opt/python/cp315-cp315`). The 3.15 pins were validated by the container install above. --------- Signed-off-by: pablo-garay <pgarayfe@amd.com>
ethanwee1
pushed a commit
to ROCm/TheRock
that referenced
this pull request
Oct 16, 2026
JIRA ID: AIPYTORCH-1326 ## Motivation PyTorch `release/2.15` exists in ROCm/pytorch but is absent from TheRock's release matrices and source manifests, so nightly, prerelease and dev release builds never pick it up. This follows the 2.14 enablement in #7525. ## Technical Details - Add `release/2.15` to the Linux and Windows release matrices (`RELEASE_STABLE_PYTORCH_REFS`), the unsupported AMDGPU family filters (`gfx90c`, same as 2.13/2.14), `PYTORCH_PRIMARY_TEST_PYTHON_VERSIONS` (`3.11`), the source manifest defaults, and the support table in `external-builds/pytorch/README.md`. The README row points torchaudio at ROCm/audio, since 2.15's `related_commits` pins ROCm/audio `release/2.11.1`. - CI defaults (`CI_PYTORCH_REFS`) are unchanged. - Python 3.15 for 2.15 is left to #8394. Merge order: these ROCm/pytorch `release/2.15` PRs should land first, so scheduled builds of the branch pick them up: - ROCm/pytorch#3816 (`related_commits`: apex `release/1.15.0`, vision `release/0.29`, ROCm/audio `release/2.11.1`) - ROCm/pytorch#3818 (requirements pins) - ROCm/pytorch#3832 (Windows hipify fix for subst drives, backport of ROCm/pytorch#3561 from `release/2.14`) ## Test Plan - `python build_tools/github_actions/tests/configure_pytorch_release_matrix_test.py` - `python build_tools/github_actions/tests/configure_multi_arch_ci_test.py` - `python build_tools/github_actions/tests/generate_pytorch_source_manifest_test.py` - `git diff --check` - Wheel builds of `pablo-garay/release-2.15-integration` (`release/2.15` + ROCm/pytorch#3816 + ROCm/pytorch#3818 + ROCm/pytorch#3832), gfx94X-dcgpu on Linux, gfx1151 on Windows, ROCm 10.2.0a20261013. ## Test Result - Unit tests: 10 passed; 152 passed, 1 skipped; 13 passed, 1 skipped. `git diff --check` clean. - Linux builds passed on Python [3.11](https://github.com/ROCm/TheRock/actions/runs/38705512288), [3.12](https://github.com/ROCm/TheRock/actions/runs/38705525582), [3.13](https://github.com/ROCm/TheRock/actions/runs/38705535781) and [3.14](https://github.com/ROCm/TheRock/actions/runs/38705545732). - Windows Python 3.12 build passed: [run 38848244359](https://github.com/ROCm/TheRock/actions/runs/38848244359). The earlier [run 38716492477](https://github.com/ROCm/TheRock/actions/runs/38716492477), without ROCm/pytorch#3832, failed building torchaudio. ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/CONTRIBUTING.md. --------- Signed-off-by: pablo-garay <pgarayfe@amd.com>
jeffdaily
pushed a commit
that referenced
this pull request
Oct 20, 2026
… libomp140 (#3836) Cherry-picks the two upstream Windows ROCm wheel DLL install fixes onto `release/2.15` (scikit-build-core backend): `aotriton_v2.dll` + `liblzma.dll` (pytorch#200931) and `libomp140.x86_64.dll` (pytorch#191629). Without them, once TheRock's temporary force-includes are removed the DLLs drop out of the wheel and `import torch` fails with WinError 126. The aotriton/liblzma install uses `OPTIONAL` so the existence check runs at install time, because aotriton's ExternalProject only generates those DLLs during the build. ### Validation Branch merged with current `release/2.15` (now includes `related_commits` from #3816). Windows ROCm wheel build (gfx1100, py3.12) on this head (`a119523c5bc`) with ROCm/TheRock#9360, which passes no force-include flags, so every DLL can only ship via CMake install: https://github.com/ROCm/TheRock/actions/runs/39287495719. Build and the `import torch` sanity check passed. Related PR: - pytorch#191629: install `libomp140.x86_64.dll` via CMake - pytorch#200931: install `aotriton_v2.dll` + `liblzma.dll` via CMake - ROCm/TheRock#9055: drop the `_rocm_init.py` wheel force-include - ROCm/TheRock#9058: drop the `aotriton_v2.dll` + `liblzma.dll` wheel force-includes - ROCm/TheRock#9360: drop the `libomp140.x86_64.dll` wheel force-include - #3835: release/2.14 cherry-pick of pytorch#191629 + pytorch#200931 - #3836: release/2.15 cherry-pick of pytorch#191629 + pytorch#200931 (this PR) - Issue: ROCm/TheRock#6965 Tracked in AIPYTORCH-1516.
jithunnair-amd
pushed a commit
that referenced
this pull request
Nov 4, 2026
## Summary Bringup step for `release/2.15`: add `related_commits` pinning the ROCm dependency builds. - apex: new `ROCm/apex` `release/1.15.0` (cut from master, version 1.15.0) - torchvision: upstream `pytorch/vision` `release/0.29` - torchaudio: new `ROCm/audio` `release/2.11.1`: upstream `pytorch/audio` `release/2.11.1` plus the ROCm build support from `release/2.11.0.3` and the ROCm version check (ROCm/audio#21) Same layout as the `release/2.14` `related_commits` (#3573). Tracking: AIPYTORCH-1326 --------- Signed-off-by: pablo-garay <pgarayfe@amd.com>
jithunnair-amd
pushed a commit
that referenced
this pull request
Nov 4, 2026
## Summary Pin Python dependencies for the `release/2.15` bringup so CI and builds are reproducible, and make everything resolve cleanly on Python **3.10 / 3.11 / 3.12 / 3.13 / 3.14 / 3.15**. Mirrors the 2.14 bringup (#3574), plus the 3.15 handling that is new in this release. Three commits, one per file: - `requirements.txt`: pin all direct dev/install deps (with `python_version` splits for `filelock`, `hypothesis` and `networkx`). - `requirements-build.txt`: pin all build-system deps (with a `python_version` split for `numpy`). - `.ci/docker/requirements-ci.txt`: pin the previously-loose entries (`click`, `psutil`, `pytest-rerunfailures`, `unittest-xml-reporting`, `redis`, `pyzstd` split, `six`, `cuda-bindings`, `cupti-python`, `tqdm`, `uv`, `librosa`) and add `python_version` conditionals for 3.14/3.15. ## Per-version splits (dev/build) - **numpy** (build): `2.2.6` (<3.11), `2.4.6` (==3.11), `2.5.4` (>=3.12). - **networkx** (dev): `3.4.2` (<3.11), `3.6.1` (==3.11), `3.7` (>=3.12). - **filelock** (dev): `4.1.0` (<3.11), `4.2.0` (>=3.11). - **hypothesis** (dev): `6.168.5` (<3.11), `6.169.2` (>=3.11). Every other dev/build dep resolved identically across 3.10-3.15, so those are flat-pinned. ## 3.14 / 3.15 conditionals in requirements-ci.txt Restored from 2.14 (lost in the 2.15 branch): - **pywavelets**: `1.9.0` for 3.14 (1.7.0 has no cp314 wheel). - **fbscribelogger**: guarded to `< 3.14` (its `thriftpy2` dep has no cp314/cp315 wheel and would source-build in the compiler-less test image). New for 3.15 (earliest release with a cp315 wheel): - **numpy** `2.5.2` (the existing `2.4.6` pin for 3.15 has no cp315 wheel), **pandas** `3.0.6`, **optree** `0.20.0`, **pywavelets** `1.10.0`, **aiohttp** `3.14.4`. - **scikit-image**: skipped on 3.15 (no release ships a cp315 wheel yet). ## How versions were resolved Per the documented process: installed each requirements file in a fresh venv inside an `ubuntu:24.04` container with no C compiler (deadsnakes for the non-native Python versions) and pinned the `pip freeze` output. All three files install on **3.10-3.15** with `pip check` clean and no new compiler-dependent source builds (only the pre-existing pure-Python `pwlf` and `coremltools` sdists, plus `pyyaml` on 3.15, which builds without its optional C extension). ## Test plan TheRock CI `multi_arch_build_portable_linux_pytorch_wheels.yml` (gfx94X-dcgpu, ROCm 10.2.0a20261013, `pytorch_git_ref` = `pablo-garay/release-2.15-integration`, which is this PR plus the related_commits from #3816): - [x] Python 3.11: build passed, [run 38705512288](https://github.com/ROCm/TheRock/actions/runs/38705512288) - [x] Python 3.12: build passed, [run 38705525582](https://github.com/ROCm/TheRock/actions/runs/38705525582) - [x] Python 3.13: build passed, [run 38705535781](https://github.com/ROCm/TheRock/actions/runs/38705535781) - [x] Python 3.14: build passed, [run 38705545732](https://github.com/ROCm/TheRock/actions/runs/38705545732) - Python 3.10: n/a. Triton 3.9 requires Python >=3.11, and TheRock dropped 3.10 release builds in ROCm/TheRock#8396 ([run 38705500960](https://github.com/ROCm/TheRock/actions/runs/38705500960) fails installing the triton wheel). - Python 3.15: n/a until ROCm/TheRock#8394 adds 3.15 to the build image ([run 38705556076](https://github.com/ROCm/TheRock/actions/runs/38705556076) fails at setup: `Could not find python: /opt/python/cp315-cp315`). The 3.15 pins were validated by the container install above. --------- Signed-off-by: pablo-garay <pgarayfe@amd.com>
jithunnair-amd
pushed a commit
that referenced
this pull request
Nov 4, 2026
… libomp140 (#3836) Cherry-picks the two upstream Windows ROCm wheel DLL install fixes onto `release/2.15` (scikit-build-core backend): `aotriton_v2.dll` + `liblzma.dll` (pytorch#200931) and `libomp140.x86_64.dll` (pytorch#191629). Without them, once TheRock's temporary force-includes are removed the DLLs drop out of the wheel and `import torch` fails with WinError 126. The aotriton/liblzma install uses `OPTIONAL` so the existence check runs at install time, because aotriton's ExternalProject only generates those DLLs during the build. ### Validation Branch merged with current `release/2.15` (now includes `related_commits` from #3816). Windows ROCm wheel build (gfx1100, py3.12) on this head (`a119523c5bc`) with ROCm/TheRock#9360, which passes no force-include flags, so every DLL can only ship via CMake install: https://github.com/ROCm/TheRock/actions/runs/39287495719. Build and the `import torch` sanity check passed. Related PR: - pytorch#191629: install `libomp140.x86_64.dll` via CMake - pytorch#200931: install `aotriton_v2.dll` + `liblzma.dll` via CMake - ROCm/TheRock#9055: drop the `_rocm_init.py` wheel force-include - ROCm/TheRock#9058: drop the `aotriton_v2.dll` + `liblzma.dll` wheel force-includes - ROCm/TheRock#9360: drop the `libomp140.x86_64.dll` wheel force-include - #3835: release/2.14 cherry-pick of pytorch#191629 + pytorch#200931 - #3836: release/2.15 cherry-pick of pytorch#191629 + pytorch#200931 (this PR) - Issue: ROCm/TheRock#6965 Tracked in AIPYTORCH-1516.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bringup step for
release/2.15: addrelated_commitspinning the ROCm dependency builds.ROCm/apexrelease/1.15.0(cut from master, version 1.15.0)pytorch/visionrelease/0.29ROCm/audiorelease/2.11.1: upstreampytorch/audiorelease/2.11.1plus the ROCm build support fromrelease/2.11.0.3and the ROCm version check ([release/2.11.0.3] Implement ROCm version check (installed vs torch) audio#21)Same layout as the
release/2.14related_commits(#3573). Tracking: AIPYTORCH-1326Validation
https://github.com/ROCm/TheRock/actions/runs/38658613201