Skip to content

chore(deps): bump torch from 2.10.0 to 2.13.0 in /envs/finrl_env#992

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/envs/finrl_env/torch-2.13.0
Open

chore(deps): bump torch from 2.10.0 to 2.13.0 in /envs/finrl_env#992
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/envs/finrl_env/torch-2.13.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 17, 2026

Copy link
Copy Markdown
Contributor

Bumps torch from 2.10.0 to 2.13.0.

Release notes

Sourced from torch's releases.

PyTorch 2.13.0 Release Notes

Highlights

For more details about these highlighted features, you can look at the release blogpost. Below are the full release notes for this release.

Tracked Regressions

ROCm wheels break torch.compile on CPU in environments without a GPU

Running a torch==2.13.0+rocm7.2 wheel in an environment where no GPU is available (torch.cuda.is_available() is False) breaks torch.compile on the CPU path: the first compile raises RuntimeError: Can't detect vectorized ISA for CPU (#189194). This is a regression from torch==2.12.1+rocm7.2, which compiles CPU code fine (detecting e.g. VecAVX2) in the same setup. The 2.13 ROCm wheel appears to rely on something present in the ROCm builder image to detect the CPU vectorized ISA, so it works when run on a ROCm image but fails on a plain CPU-only image.

Workaround: run the +rocm wheel on a ROCm image, or install a standard CPU/CUDA build for GPU-less environments.

Backwards Incompatible Changes

  • Stop building CPython 3.13t (free-threaded) binaries (#182951)

    Upstream pypa/manylinux removed CPython 3.13t (free-threaded) on 2026-05-07, because 3.13t was experimental and has been superseded by the now-non-experimental CPython 3.14t. As a result, PyTorch 2.13 no longer ships cp313t wheels (Linux, Triton, and related artifacts). Users on the free-threaded interpreter should move to Python 3.14t.

    PyTorch 2.12:

    # cp313t (free-threaded 3.13) wheels were available
    python3.13t -m pip install torch

    PyTorch 2.13:

... (truncated)

Commits
  • cf30153 [release/2.13] Strip +PTX from CUDA arch list on release/RC builds (#188914) ...
  • 3e3e24b [release/2.13] Restrict cuda-bindings to Python < 3.15 for CUDA 12.9 builds (...
  • 7986b06 [release/2.13] Bump binary build timeout 280 -> 400 minutes (#188551)
  • 0bdbc26 [release/2.13] Add CUDA 12.9 to TORCH_CUDA_ARCH_LIST tables (#188443)
  • 9cabb45 [release/2.13] Update manywheel docker image pin to 78e737ad (#188409)
  • 78e737a [release/2.13] Revert "Tighten generalized scatter graph target (#184075)" (#...
  • 0bb9b5b [release/2.13] Revert "dynamo: round-trip torch.cuda.stream ctx mgr across gr...
  • aaac2bf [release/2.13] Revert "[Reland] Port D104346887/PR 182675 for index_add fast ...
  • 9330813 Fix build_with_debinfo.py broken by CONFIGURE_DEPENDS globbing (#188192)
  • 4e077a7 Remove setuptools upper bound (#188190)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Note

Medium Risk
A three-minor PyTorch upgrade can affect stable-baselines3 behavior and CUDA/wheel compatibility; FinRL training paths should be validated after lock refresh.

Overview
Bumps the PyTorch version locked for the FinRL environment from 2.10.0 to 2.13.0, via the existing uv.lock resolution (torch is pulled in by stable-baselines3, not a direct pyproject.toml pin).

This is a dependency-only update: expect refreshed wheel URLs, hashes, and any transitive CUDA/Triton-related entries tied to the new torch release. Application code in finrl_env is unchanged.

Reviewers should treat this as a minor-version stack jump for RL workloads—worth a quick smoke test of training/inference paths that use SB3/torch after uv sync.

Reviewed by Cursor Bugbot for commit 8fb21b1. Bugbot is set up for automated code reviews on this repo. Configure here.

Bumps [torch](https://github.com/pytorch/pytorch) from 2.10.0 to 2.13.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](pytorch/pytorch@v2.10.0...v2.13.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.13.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added Dependencies python:uv Pull requests that update python:uv code labels Jul 17, 2026
@bot-ci-comment

Copy link
Copy Markdown

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

@burtenshaw burtenshaw added environment size: small Small pull request labels Jul 17, 2026 — with Cursor

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alignment Review Report

Dependabot lock bump: torch 2.10.0 → 2.13.0 in envs/finrl_env (single file, uv.lock, +362/-316). Reviewed with the two-tier model.

Automated Checks

  • Lint: N/A (pre-existing failures only). bash .claude/hooks/lint.sh exits 1, but only on the same ~20 pre-existing envs/** files (agent_world_model_env, chat_env, coding_tools_env, jupyter_env, opencode_env ×8, repl_env, terminus_env, textarena_env). finrl_env is not among them, and this PR touches only uv.lock — TOML/lockfiles aren't linted by ruff/usort. Not introduced by this PR.
  • Debug code: CLEAN. bash .claude/hooks/check-debug.sh scans src/ only; zero finrl_env matches (this PR touches only envs/finrl_env/uv.lock).

Open RFCs Context

RFCs 000–005 + 010 unchanged. No RFC covers Python packaging / dependency management / index selection, so a dependency bump has no RFC surface. No RFC conflicts.

Verification (all ✅)

  • Transitive & lock-only correct — torch is pulled in only by stable-baselines3==2.1.0 (finrl_env's pyproject.toml has no torch pin), so a lock-only change with no pyproject.toml edit is exactly right.
  • Hashes real & complete — every lock hash matches PyPI: torch 24/24 wheels, triton 12/12, cuda-toolkit 1/1, cuda-bindings 12/12, nvidia-cublas 2/2, nvidia-nccl-cu13 2/2. None yanked; requires_python satisfied (torch >=3.10 vs env >=3.10).
  • uv lock --check --project envs/finrl_env passes (exit 0) — lock internally consistent with pyproject; no requires-dist re-sync.
  • Security-positive — torch 2.10.0 carries GHSA-rrmf-rvhw-rf47 (fixed_in 2.13.0) + PYSEC-2026-139; torch 2.13.0 has an empty vulnerability list.

Notable: CUDA 12 → 13 transition

torch 2.13.0 changes its bundled-CUDA packaging, which is why the diff is large (not just a version line):

  • Removes 15 nvidia-*-cu12 packages; adds 16 (cuda-toolkit + nvidia-* / nvidia-*-cu13).
  • triton 3.6.0 → 3.7.1, cuda-bindings 12.9.4 → 13.3.1. Net 183 → 184 packages, all inside torch's transitive tree; no other package's version changed.
  • These are Linux-GPU wheels (sys_platform == 'linux' markers); CPU/macOS wheels are unaffected. On a GPU deploy host this implies a CUDA-13-compatible NVIDIA driver / cuDNN 9.20 — worth a sanity check if finrl_env is ever run on GPU, but not a blocker.

Tier 1: Fixes Required

None.

Tier 2: Alignment Discussion

Principle Conflicts

ALIGNMENT FLAG: Lockfile index source flipped from the internal HF mirror to public PyPI

  • Principle at stake: PRINCIPLES.md “Container isolation for reproducibility and security” (declared provenance / reproducibility)
  • The concern: Beyond the torch bump, dependabot rewrote every source = { registry = ... } from https://pypi.registries.huggingface.tech/ (185 refs) to https://pypi.org/simple (0 mirror refs remain). Artifact URLs stay on files.pythonhosted.org and hashes are unchanged/verified, so it's most likely benign, but it silently changes the env's declared provenance and widens a cross-env split (some env locks are on the mirror, some on public PyPI). No committed config pins the mirror — it lives only inside uv.lock files. Registry choice is a team decision, not an auto-fix; the lock shouldn't be hand-edited.
  • Suggested reviewer: @Darktex, @burtenshaw

RFC Conflicts

None identified.

Process / informational notes (non-blocking)

  • Lock revision 2 → 3 (uv.lock:2). server/Dockerfile installs deps with uv sync --frozen and installs current uv on the fly, so revision 3 is handled — low-risk heads-up.
  • Native dependabot vs exclude-paths.github/dependabot.yml's uv updater sets exclude-paths: ["envs/**"], yet this native dependabot/uv/envs/finrl_env/… PR still edits envs/finrl_env/uv.lock. The uv ecosystem isn't honoring exclude-paths; the intended path for env locks is the aggregate codex/dependabot-envs-* roll-ups. Process note, cc @burtenshaw.

Summary

  • 0 mechanical issues to fix (Tier 1)
  • 1 alignment point for human review (index-source flip) + 2 non-blocking process/informational notes
  • 0 RFC conflicts
Open in Web View Automation 

Sent by Cursor Automation: Pre-review

Comment thread envs/finrl_env/uv.lock
@@ -1,5 +1,5 @@
version = 1
revision = 2
revision = 3

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lock revision 2 → 3. envs/finrl_env/server/Dockerfile installs deps via uv sync --frozen (and installs the current uv on the fly when the base image lacks it), so revision-3 locks are handled fine. Non-blocking heads-up.

Comment thread envs/finrl_env/uv.lock
@@ -14,7 +14,7 @@ overrides = [{ name = "websockets", specifier = ">=15.0.1" }]
[[package]]
name = "aiofile"
version = "3.9.0"
source = { registry = "https://pypi.registries.huggingface.tech/" }
source = { registry = "https://pypi.org/simple" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tier 2 — index-source flip (reproducibility). Dependabot rewrote all 185 registries.huggingface.tech source refs to pypi.org/simple (0 mirror refs remain). Artifacts stay on files.pythonhosted.org and every hash verified against PyPI, so it's most likely benign — but it changes the env's declared provenance and widens the cross-env mirror-vs-PyPI split. Registry choice is a team decision; please don't hand-edit the lock to revert it. cc @Darktex @burtenshaw

Comment thread envs/finrl_env/uv.lock
sdist = { url = "https://files.pythonhosted.org/packages/11/d6/114b492226588d6ff54579d95847662fc69196bdeec318eb45393b24c192/toolz-1.1.0.tar.gz", hash = "sha256:27a5c770d068c110d9ed9323f24f1543e83b2f300a687b7891c1a6d56b697b5b", size = 52613, upload-time = "2025-10-17T04:03:21.661Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/fb/12/5911ae3eeec47800503a238d971e51722ccea5feb8569b735184d5fcdbc0/toolz-1.1.0-py3-none-any.whl", hash = "sha256:15ccc861ac51c53696de0a5d6d4607f99c210739caf987b5d2054f3efed429d8", size = 58093, upload-time = "2025-10-17T04:03:20.435Z" },
]

[[package]]
name = "torch"
version = "2.10.0"
source = { registry = "https://pypi.registries.huggingface.tech/" }
version = "2.13.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

torch 2.10.0 → 2.13.0, transitive via stable-baselines3==2.1.0 (no torch pin in pyproject.toml → lock-only is correct). Verified: all 24 wheel hashes match PyPI, not yanked, requires_python >=3.10 OK, uv lock --check passes.

Security-positive: torch 2.10.0 carried GHSA-rrmf-rvhw-rf47 (fixed_in 2.13.0) + PYSEC-2026-139; 2.13.0 has no known vulns.

Heads-up: this pulls a CUDA 12→13 transition in torch's transitive tree (nvidia-*-cu12cuda-toolkit/nvidia-*-cu13, cuDNN 9.20, triton 3.7.1). Linux-GPU wheels only — check NVIDIA driver compatibility if finrl_env is ever run on GPU.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Dependencies environment python:uv Pull requests that update python:uv code size: small Small pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant