From 624f3096ca75118b6580561094f8d1c8144eb3b1 Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Tue, 16 Dec 2025 10:11:49 -0800 Subject: [PATCH 01/13] first attempt -- hard code nightly version for monarch Summary: Test Plan: Reviewers: Subscribers: Tasks: Tags: --- assets/versions.sh | 4 ++-- pyproject.toml | 5 +++-- scripts/install.sh | 5 +++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/assets/versions.sh b/assets/versions.sh index 333fb9116..350bb9171 100644 --- a/assets/versions.sh +++ b/assets/versions.sh @@ -10,9 +10,9 @@ # Stable versions of upstream libraries for OSS repo PYTORCH_VERSION="2.9.0" VLLM_VERSION="v0.10.0" -MONARCH_VERSION="0.1.2" +MONARCH_VERSION="2025.12.16" TORCHTITAN_VERSION="0.2.0" -TORCHSTORE_VERSION="0.1.2" +TORCHSTORE_COMMIT="c4ca18d36518b6003ab1f0639d1c44fe07d88255" # Torchtitan commit hash for launching on MAST TORCHTITAN_COMMIT_MAST="d0e25450bcac2332359b13fbda430dc701f073d4" diff --git a/pyproject.toml b/pyproject.toml index 48bd8c238..d282fd335 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,8 +14,9 @@ dependencies = [ "torch==2.9.0", "torchdata>=0.8.0", "torchtitan==0.2.0", - "torchmonarch==0.1.2", - "torchstore==0.1.2", + "torchmonarch-nightly==2025.12.16", + # torchstore installed from git in install.sh with --no-deps to avoid monarch conflict + "pygtrie", # torchstore dependency # vLLM "vllm", # Hugging Face integrations diff --git a/scripts/install.sh b/scripts/install.sh index ba15699cf..609ab59ef 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -199,11 +199,12 @@ main() { python -m pip install vllm --no-cache-dir --index-url https://download.pytorch.org/whl/preview/forge # Install monarch - pip install torchmonarch==$MONARCH_VERSION + pip install torchmonarch-nightly==$MONARCH_VERSION # Install torchtitan and torchstore pip install torchtitan==$TORCHTITAN_VERSION - pip install torchstore==$TORCHSTORE_VERSION + # Install torchstore from git with --no-deps to avoid pulling in stable torchmonarch + pip install --no-deps git+https://github.com/meta-pytorch/torchstore.git@$TORCHSTORE_COMMIT log_info "Installing Forge from source..." pip install -e ".[dev]" From 1f5bf1d15ee052f107a83d9098e84a2ea926e67e Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Tue, 16 Dec 2025 14:27:29 -0800 Subject: [PATCH 02/13] [WIP] add torchforge nightly build workflow Summary: Test Plan: Reviewers: Subscribers: Tasks: Tags: --- .github/packaging/pre_build_nightly.sh | 67 ++++++++++++++++++++++ .github/workflows/nightly.yaml | 78 ++++++++++++++++++++++++++ README.md | 20 ++++++- 3 files changed, 162 insertions(+), 3 deletions(-) create mode 100755 .github/packaging/pre_build_nightly.sh create mode 100644 .github/workflows/nightly.yaml diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh new file mode 100755 index 000000000..1e78781bc --- /dev/null +++ b/.github/packaging/pre_build_nightly.sh @@ -0,0 +1,67 @@ +#!/bin/bash +set -euo pipefail + +# Script runs relative to forge root +CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +VERSIONS_FILE="$CURRENT_DIR/../../assets/versions.sh" +source "$VERSIONS_FILE" + +echo "Installing nightly dependencies for forge build" +echo "PyTorch nightly already installed by test-infra via channel: nightly" + +# 1. Verify PyTorch nightly is installed +python -c "import torch; print(f'PyTorch version: {torch.__version__}')" + +# 2. Install torchtitan nightly +echo "Installing torchtitan nightly..." +pip install --pre torchtitan \ + --index-url https://download.pytorch.org/whl/nightly/cu128 + +# 3. Install torchmonarch-nightly +echo "Installing torchmonarch-nightly..." +pip install torchmonarch-nightly + +# 4. Install torchstore from main branch WITHOUT dependencies +# Following monarch_forge.sh:580-588 pattern +echo "Installing torchstore dependencies..." +pip install pygtrie + +echo "Installing torchstore from main branch..." +git clone https://github.com/pytorch/torchstore.git /tmp/torchstore +cd /tmp/torchstore +git checkout main +pip install --no-deps . +cd - + +# 5. Build vLLM from source (following internal pt2.sh:561-578 pattern) +# Note: Cannot use pip install vllm==0.10.0 because PyPI version requires torch==2.7.0 +# vLLM has C++/CUDA extensions that must compile against our PyTorch nightly +echo "Building vLLM ${VLLM_VERSION} from source against PyTorch nightly..." +BUILD_DIR="/tmp/vllm-build" +mkdir -p "$BUILD_DIR" +cd "$BUILD_DIR" + +git clone https://github.com/vllm-project/vllm.git --branch "$VLLM_VERSION" +cd vllm + +# Use existing torch (PyTorch nightly already installed) +# This script patches vLLM's setup.py to use the installed PyTorch instead of downloading +python use_existing_torch.py +pip install -r requirements/build.txt + +# Clean up existing builds if needed +rm -rf build/ *.egg-info/ + +# Build and install vLLM (compiles C++/CUDA extensions against installed PyTorch) +pip install --no-build-isolation . + +cd - + +# 6. Set nightly version in __init__.py +echo "Setting nightly version..." +NIGHTLY_VERSION=$(date +%Y.%m.%d) +echo "__version__ = \"${NIGHTLY_VERSION}\"" > src/forge/__init__.py + +echo "Nightly dependency installation complete!" +echo "Dependency versions:" +python -c "import torch, torchtitan, vllm; print(f'torch: {torch.__version__}, torchtitan: {torchtitan.__version__}, vllm: {vllm.__version__}')" diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml new file mode 100644 index 000000000..07c889787 --- /dev/null +++ b/.github/workflows/nightly.yaml @@ -0,0 +1,78 @@ +name: Build and upload forge nightly + +on: + schedule: + - cron: '0 0 * * *' # Daily at midnight UTC + push: + branches: + - nightly + workflow_dispatch: + +permissions: + id-token: write + contents: read + +jobs: + build: + name: forge-cu128-nightly + uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@main + strategy: + fail-fast: false + with: + repository: meta-pytorch/forge + ref: "" + test-infra-repository: pytorch/test-infra + test-infra-ref: main + run-smoke-test: false + wheel-nightly-policy: gha_workflow_nightly_build_wheels + wheel-upload-path: whl/nightly/forge/ + package-name: forge + # Channel = PyPI index URL for PyTorch installation + # nightly → https://download.pytorch.org/whl/nightly/cu128 (latest daily builds) + # test → https://download.pytorch.org/whl/test/cu128 (stable releases like 2.9.0) + channel: nightly + build-matrix: | + { + "include": [ + { + "python_version": "3.10", + "gpu_arch_type": "cpu", + "gpu_arch_version": "12.8", + "desired_cuda": "cu128", + "container_image": "pytorch/manylinux2_28-builder:cuda12.8", + "package_type": "manywheel", + "build_name": "manywheel-py3_10-cuda12_8", + "validation_runner": "linux.12xlarge.memory", + "upload_to_base_bucket": "no", + "use_split_build": false + }, + { + "python_version": "3.11", + "gpu_arch_type": "cpu", + "gpu_arch_version": "12.8", + "desired_cuda": "cu128", + "container_image": "pytorch/manylinux2_28-builder:cuda12.8", + "package_type": "manywheel", + "build_name": "manywheel-py3_10-cuda12_8", + "validation_runner": "linux.12xlarge.memory", + "upload_to_base_bucket": "no", + "use_split_build": false + }, + { + "python_version": "3.12", + "gpu_arch_type": "cpu", + "gpu_arch_version": "12.8", + "desired_cuda": "cu128", + "container_image": "pytorch/manylinux2_28-builder:cuda12.8", + "package_type": "manywheel", + "build_name": "manywheel-py3_10-cuda12_8", + "validation_runner": "linux.12xlarge.memory", + "upload_to_base_bucket": "no", + "use_split_build": false + }, + ] + } + pre-script: .github/packaging/pre_build_nightly.sh + post-script: .github/packaging/post_build_script.sh + trigger-event: ${{ github.event_name }} + build-platform: 'python-build-package' diff --git a/README.md b/README.md index 265aea2d6..2cbb3775f 100644 --- a/README.md +++ b/README.md @@ -46,11 +46,25 @@ Optional: By default, the packages installation uses conda. If you want to insta > **Note:** We are actively working on enabling pure `uv` installation. Currently, Conda is the recommended approach. `uv` support is not fully working at the moment but is being tracked in [issue #494](https://github.com/meta-pytorch/torchforge/issues/494). -After install, you can run the following command and should see output confirming GRPO training is running (you need a minimum 3 GPU devices): +### Nightly Installation +To install the latest nightly build of torchforge with the newest features and fixes: + +```bash +# Install PyTorch nightly +pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cu128 + +# Install torchforge nightly +pip install forge --index-url https://download.pytorch.org/whl/nightly/forge/ ``` -python -m apps.grpo.main --config apps/grpo/qwen3_1_7b.yaml -``` + +Nightly builds are updated daily and include the latest features and fixes from the main branch. +Here is the list of key dependencies: +1. torchmonarch: download torchmonarch-nightly from PyPI. +2. vllm: build v0.10.0 from source with torch nightly. TODO: additional refactoring to upgrade to use vLLM nightly. +3. torchtitan: download the nightly build +4. torchstore: install from the github main branch since torchstore does not have a nightly build yet. + ## Quick Start From 6c34722b17651936fc277403b468128b93494ed5 Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Tue, 16 Dec 2025 14:34:13 -0800 Subject: [PATCH 03/13] add trigger for testing purpose --- .github/workflows/nightly.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 07c889787..1dd29e5ab 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -6,6 +6,7 @@ on: push: branches: - nightly + - add-nightly-build # TODO: remove this line after PR is accepted. This is for testing. workflow_dispatch: permissions: From 9de5844c0572209bb6914306ccc5af0488a40936 Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Tue, 16 Dec 2025 14:37:14 -0800 Subject: [PATCH 04/13] fix yaml --- .github/workflows/nightly.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 1dd29e5ab..21a2e4e05 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -28,10 +28,6 @@ jobs: wheel-nightly-policy: gha_workflow_nightly_build_wheels wheel-upload-path: whl/nightly/forge/ package-name: forge - # Channel = PyPI index URL for PyTorch installation - # nightly → https://download.pytorch.org/whl/nightly/cu128 (latest daily builds) - # test → https://download.pytorch.org/whl/test/cu128 (stable releases like 2.9.0) - channel: nightly build-matrix: | { "include": [ From a04995bc4300ee00da5a1361522714aed1aef95e Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Tue, 16 Dec 2025 17:49:44 -0800 Subject: [PATCH 05/13] reduce number of runs Summary: Test Plan: Reviewers: Subscribers: Tasks: Tags: --- .github/workflows/nightly.yaml | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 21a2e4e05..f664eede1 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -31,30 +31,6 @@ jobs: build-matrix: | { "include": [ - { - "python_version": "3.10", - "gpu_arch_type": "cpu", - "gpu_arch_version": "12.8", - "desired_cuda": "cu128", - "container_image": "pytorch/manylinux2_28-builder:cuda12.8", - "package_type": "manywheel", - "build_name": "manywheel-py3_10-cuda12_8", - "validation_runner": "linux.12xlarge.memory", - "upload_to_base_bucket": "no", - "use_split_build": false - }, - { - "python_version": "3.11", - "gpu_arch_type": "cpu", - "gpu_arch_version": "12.8", - "desired_cuda": "cu128", - "container_image": "pytorch/manylinux2_28-builder:cuda12.8", - "package_type": "manywheel", - "build_name": "manywheel-py3_10-cuda12_8", - "validation_runner": "linux.12xlarge.memory", - "upload_to_base_bucket": "no", - "use_split_build": false - }, { "python_version": "3.12", "gpu_arch_type": "cpu", @@ -66,7 +42,7 @@ jobs: "validation_runner": "linux.12xlarge.memory", "upload_to_base_bucket": "no", "use_split_build": false - }, + } ] } pre-script: .github/packaging/pre_build_nightly.sh From 8ba619722e3ebe5a364d99c63b3ab9763cdf006e Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 06:31:09 -0800 Subject: [PATCH 06/13] Make workflow checkout current branch --- .github/workflows/nightly.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index f664eede1..7d3f747a4 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -21,7 +21,9 @@ jobs: fail-fast: false with: repository: meta-pytorch/forge - ref: "" + # TODO: reset to "" after PR is accepted. This is to make sure during testing, the workflow + # checkout the current branch. + ref: ${{ github.sha }} test-infra-repository: pytorch/test-infra test-infra-ref: main run-smoke-test: false From 6f4cbea37572719bc2a19f82d712584f4189964a Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 06:48:37 -0800 Subject: [PATCH 07/13] use `--extra-index-url` to allow searching for both PyPI and the given url --- .github/packaging/pre_build_nightly.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index 1e78781bc..6a4471506 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -15,7 +15,7 @@ python -c "import torch; print(f'PyTorch version: {torch.__version__}')" # 2. Install torchtitan nightly echo "Installing torchtitan nightly..." pip install --pre torchtitan \ - --index-url https://download.pytorch.org/whl/nightly/cu128 + --extra-index-url https://download.pytorch.org/whl/nightly/cu128 # 3. Install torchmonarch-nightly echo "Installing torchmonarch-nightly..." From e321dda30c63136b0d49b4282def3612f2170d0d Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 07:39:25 -0800 Subject: [PATCH 08/13] remove /tmp/torchstore if exists --- .github/packaging/pre_build_nightly.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index 6a4471506..3725f546f 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -27,6 +27,7 @@ echo "Installing torchstore dependencies..." pip install pygtrie echo "Installing torchstore from main branch..." +rm -rf /tmp/torchstore # Remove if exists from previous run git clone https://github.com/pytorch/torchstore.git /tmp/torchstore cd /tmp/torchstore git checkout main From 621e7fd8ae31e1cb818ba269eb45936f13129b2c Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 08:08:13 -0800 Subject: [PATCH 09/13] mkdir explicitly --- .github/packaging/pre_build_nightly.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index 3725f546f..cdce5f626 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -27,9 +27,11 @@ echo "Installing torchstore dependencies..." pip install pygtrie echo "Installing torchstore from main branch..." -rm -rf /tmp/torchstore # Remove if exists from previous run -git clone https://github.com/pytorch/torchstore.git /tmp/torchstore -cd /tmp/torchstore +TORCHSTORE_DIR="/tmp/torchstore-build" +mkdir -p "$TORCHSTORE_DIR" +cd "$TORCHSTORE_DIR" +git clone https://github.com/pytorch/torchstore.git +cd torchstore git checkout main pip install --no-deps . cd - From a4a4783db767e6e82b275d0c4cdce578fa70f28f Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 08:34:21 -0800 Subject: [PATCH 10/13] add debugging statement --- .github/packaging/pre_build_nightly.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index cdce5f626..4ee8ba740 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -1,5 +1,5 @@ #!/bin/bash -set -euo pipefail +set -uo pipefail # TODO revert back to set -euo # Script runs relative to forge root CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" @@ -29,9 +29,16 @@ pip install pygtrie echo "Installing torchstore from main branch..." TORCHSTORE_DIR="/tmp/torchstore-build" mkdir -p "$TORCHSTORE_DIR" +echo "DEBUG: mkdir succeeded, directory created at $TORCHSTORE_DIR" + cd "$TORCHSTORE_DIR" +echo "DEBUG: cd succeeded, now in: $(pwd)" + git clone https://github.com/pytorch/torchstore.git +echo "DEBUG: git clone succeeded" + cd torchstore +echo "DEBUG: Changed into torchstore subdirectory" git checkout main pip install --no-deps . cd - From 3d563c6833532d3d25db67b88b655ac3ccbb2e51 Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 12:01:12 -0800 Subject: [PATCH 11/13] misc fixes --- .github/packaging/pre_build_nightly.sh | 19 +++++++++---------- assets/versions.sh | 4 ++-- scripts/install.sh | 5 ++--- 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index 4ee8ba740..b49dc29a7 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -3,7 +3,8 @@ set -uo pipefail # TODO revert back to set -euo # Script runs relative to forge root CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -VERSIONS_FILE="$CURRENT_DIR/../../assets/versions.sh" +FORGE_ROOT="$(cd "$CURRENT_DIR/../.." && pwd)" +VERSIONS_FILE="$FORGE_ROOT/assets/versions.sh" source "$VERSIONS_FILE" echo "Installing nightly dependencies for forge build" @@ -29,18 +30,15 @@ pip install pygtrie echo "Installing torchstore from main branch..." TORCHSTORE_DIR="/tmp/torchstore-build" mkdir -p "$TORCHSTORE_DIR" -echo "DEBUG: mkdir succeeded, directory created at $TORCHSTORE_DIR" - cd "$TORCHSTORE_DIR" -echo "DEBUG: cd succeeded, now in: $(pwd)" - -git clone https://github.com/pytorch/torchstore.git +git clone https://github.com/meta-pytorch/torchstore.git echo "DEBUG: git clone succeeded" cd torchstore echo "DEBUG: Changed into torchstore subdirectory" git checkout main pip install --no-deps . +echo "DEBUG: torchstore installation succeeded" cd - # 5. Build vLLM from source (following internal pt2.sh:561-578 pattern) @@ -69,9 +67,10 @@ cd - # 6. Set nightly version in __init__.py echo "Setting nightly version..." -NIGHTLY_VERSION=$(date +%Y.%m.%d) -echo "__version__ = \"${NIGHTLY_VERSION}\"" > src/forge/__init__.py +NIGHTLY_VERSION="${BUILD_VERSION:-$(date +%Y.%m.%d)}" +sed -i "s/__version__ = \".*\"/__version__ = \"${NIGHTLY_VERSION}\"/" +"$FORGE_ROOT/src/forge/__init__.py" echo "Nightly dependency installation complete!" -echo "Dependency versions:" -python -c "import torch, torchtitan, vllm; print(f'torch: {torch.__version__}, torchtitan: {torchtitan.__version__}, vllm: {vllm.__version__}')" +echo "Installed package versions:" +pip list | grep -E "torch|torchtitan|vllm|monarch" diff --git a/assets/versions.sh b/assets/versions.sh index 350bb9171..333fb9116 100644 --- a/assets/versions.sh +++ b/assets/versions.sh @@ -10,9 +10,9 @@ # Stable versions of upstream libraries for OSS repo PYTORCH_VERSION="2.9.0" VLLM_VERSION="v0.10.0" -MONARCH_VERSION="2025.12.16" +MONARCH_VERSION="0.1.2" TORCHTITAN_VERSION="0.2.0" -TORCHSTORE_COMMIT="c4ca18d36518b6003ab1f0639d1c44fe07d88255" +TORCHSTORE_VERSION="0.1.2" # Torchtitan commit hash for launching on MAST TORCHTITAN_COMMIT_MAST="d0e25450bcac2332359b13fbda430dc701f073d4" diff --git a/scripts/install.sh b/scripts/install.sh index 609ab59ef..ba15699cf 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -199,12 +199,11 @@ main() { python -m pip install vllm --no-cache-dir --index-url https://download.pytorch.org/whl/preview/forge # Install monarch - pip install torchmonarch-nightly==$MONARCH_VERSION + pip install torchmonarch==$MONARCH_VERSION # Install torchtitan and torchstore pip install torchtitan==$TORCHTITAN_VERSION - # Install torchstore from git with --no-deps to avoid pulling in stable torchmonarch - pip install --no-deps git+https://github.com/meta-pytorch/torchstore.git@$TORCHSTORE_COMMIT + pip install torchstore==$TORCHSTORE_VERSION log_info "Installing Forge from source..." pip install -e ".[dev]" From ae51cdd586eb8a40ced296c689e2805ba439b081 Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 12:02:00 -0800 Subject: [PATCH 12/13] revert changes to pyproject.toml --- pyproject.toml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index d282fd335..48bd8c238 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,9 +14,8 @@ dependencies = [ "torch==2.9.0", "torchdata>=0.8.0", "torchtitan==0.2.0", - "torchmonarch-nightly==2025.12.16", - # torchstore installed from git in install.sh with --no-deps to avoid monarch conflict - "pygtrie", # torchstore dependency + "torchmonarch==0.1.2", + "torchstore==0.1.2", # vLLM "vllm", # Hugging Face integrations From 5ee27562ed2b040cf8bfac2bf0b18d074b0e7a2e Mon Sep 17 00:00:00 2001 From: Jiyue Wang Date: Wed, 17 Dec 2025 12:17:17 -0800 Subject: [PATCH 13/13] fix the new line for sed --- .github/packaging/pre_build_nightly.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/packaging/pre_build_nightly.sh b/.github/packaging/pre_build_nightly.sh index b49dc29a7..e80738433 100755 --- a/.github/packaging/pre_build_nightly.sh +++ b/.github/packaging/pre_build_nightly.sh @@ -68,8 +68,7 @@ cd - # 6. Set nightly version in __init__.py echo "Setting nightly version..." NIGHTLY_VERSION="${BUILD_VERSION:-$(date +%Y.%m.%d)}" -sed -i "s/__version__ = \".*\"/__version__ = \"${NIGHTLY_VERSION}\"/" -"$FORGE_ROOT/src/forge/__init__.py" +sed -i "s/__version__ = \".*\"/__version__ = \"${NIGHTLY_VERSION}\"/" "$FORGE_ROOT/src/forge/__init__.py" echo "Nightly dependency installation complete!" echo "Installed package versions:"