From c0292c5460e67911281daa6ab36ce15804d1e5fc Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 09:45:35 +0100 Subject: [PATCH 1/9] update version --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index 93acf06b0..faef31a43 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.7.0a0 +0.7.0 From 5affa00e799e8e6252f1a512ac9563135b9aa13d Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Wed, 23 Apr 2025 10:57:32 +0100 Subject: [PATCH 2/9] Rely on 2.8 branch --- .github/workflows/build_ffmpeg.yaml | 4 ++-- .github/workflows/docs.yaml | 10 +++++----- .github/workflows/linux_cuda_wheel.yaml | 10 +++++----- .github/workflows/linux_wheel.yaml | 8 ++++---- .github/workflows/macos_wheel.yaml | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/build_ffmpeg.yaml b/.github/workflows/build_ffmpeg.yaml index 4d6a22869..3229b69cf 100644 --- a/.github/workflows/build_ffmpeg.yaml +++ b/.github/workflows/build_ffmpeg.yaml @@ -28,7 +28,7 @@ jobs: fail-fast: false matrix: ffmpeg-version: ["4.4.4", "5.1.4", "6.1.1", "7.0.1"] - uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@main + uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@release/2.8 permissions: id-token: write contents: read @@ -53,7 +53,7 @@ jobs: fail-fast: false matrix: ffmpeg-version: ["4.4.4", "5.1.4", "6.1.1", "7.0.1"] - uses: pytorch/test-infra/.github/workflows/macos_job.yml@main + uses: pytorch/test-infra/.github/workflows/macos_job.yml@release/2.8 with: job-name: Build upload-artifact: ffmpeg-lgpl-macos-${{ matrix.ffmpeg-version }} diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 7d580cef3..7e021b697 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -15,12 +15,12 @@ defaults: jobs: generate-matrix: - uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main + uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@release/2.8 with: package-type: wheel os: linux test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 with-cpu: disable with-xpu: disable with-rocm: disable @@ -31,12 +31,12 @@ jobs: strategy: fail-fast: false name: Build and Upload wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@main + uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 build-matrix: ${{ needs.generate-matrix.outputs.matrix }} pre-script: packaging/pre_build_script.sh post-script: packaging/post_build_script.sh @@ -73,7 +73,7 @@ jobs: name: pytorch_torchcodec__${{ matrix.python-version }}_cu${{ env.cuda_version_without_periods }}_x86_64 path: pytorch/torchcodec/dist/ - name: Setup miniconda using test-infra - uses: pytorch/test-infra/.github/actions/setup-miniconda@main + uses: pytorch/test-infra/.github/actions/setup-miniconda@release/2.8 with: python-version: ${{ matrix.python-version }} # We install conda packages at the start because otherwise conda may have conflicts with dependencies. diff --git a/.github/workflows/linux_cuda_wheel.yaml b/.github/workflows/linux_cuda_wheel.yaml index 4e92a9095..c47458987 100644 --- a/.github/workflows/linux_cuda_wheel.yaml +++ b/.github/workflows/linux_cuda_wheel.yaml @@ -25,12 +25,12 @@ defaults: jobs: generate-matrix: - uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main + uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@release/2.8 with: package-type: wheel os: linux test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 with-cpu: disable with-xpu: disable with-rocm: disable @@ -41,12 +41,12 @@ jobs: strategy: fail-fast: false name: Build and Upload wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@main + uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 build-matrix: ${{ needs.generate-matrix.outputs.matrix }} pre-script: packaging/pre_build_script.sh post-script: packaging/post_build_script.sh @@ -90,7 +90,7 @@ jobs: name: pytorch_torchcodec__${{ matrix.python-version }}_cu${{ env.cuda_version_without_periods }}_x86_64 path: pytorch/torchcodec/dist/ - name: Setup miniconda using test-infra - uses: pytorch/test-infra/.github/actions/setup-miniconda@main + uses: pytorch/test-infra/.github/actions/setup-miniconda@release/2.8 with: python-version: ${{ matrix.python-version }} # We install conda packages at the start because otherwise conda may have conflicts with dependencies. diff --git a/.github/workflows/linux_wheel.yaml b/.github/workflows/linux_wheel.yaml index 8f9acba0b..d86a75d1e 100644 --- a/.github/workflows/linux_wheel.yaml +++ b/.github/workflows/linux_wheel.yaml @@ -26,12 +26,12 @@ defaults: jobs: generate-matrix: - uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main + uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@release/2.8 with: package-type: wheel os: linux test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 with-xpu: disable with-rocm: disable with-cuda: disable @@ -42,12 +42,12 @@ jobs: strategy: fail-fast: false name: Build and Upload Linux wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@main + uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 build-matrix: ${{ needs.generate-matrix.outputs.matrix }} pre-script: packaging/pre_build_script.sh post-script: packaging/post_build_script.sh diff --git a/.github/workflows/macos_wheel.yaml b/.github/workflows/macos_wheel.yaml index 5110ebe39..a896b54c9 100644 --- a/.github/workflows/macos_wheel.yaml +++ b/.github/workflows/macos_wheel.yaml @@ -26,12 +26,12 @@ defaults: jobs: generate-matrix: - uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main + uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@release/2.8 with: package-type: wheel os: macos-arm64 test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 with-xpu: disable with-rocm: disable with-cuda: disable @@ -42,12 +42,12 @@ jobs: strategy: fail-fast: false name: Build and Upload Mac wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_macos.yml@main + uses: pytorch/test-infra/.github/workflows/build_wheels_macos.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 build-matrix: ${{ needs.generate-matrix.outputs.matrix }} pre-script: packaging/pre_build_script.sh post-script: packaging/post_build_script.sh From 51691096c672f67be56536782c8e809740c6fb59 Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Wed, 23 Apr 2025 10:59:10 +0100 Subject: [PATCH 3/9] Rely on stable torch --- .github/workflows/docs.yaml | 2 +- .github/workflows/linux_cuda_wheel.yaml | 2 +- .github/workflows/linux_wheel.yaml | 2 +- .github/workflows/macos_wheel.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 7e021b697..682fefe24 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -91,7 +91,7 @@ jobs: run: ${CONDA_RUN} python -m pip install --upgrade pip - name: Install PyTorch run: | - ${CONDA_RUN} python -m pip install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cu${{ env.cuda_version_without_periods }} + ${CONDA_RUN} python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu${{ env.cuda_version_without_periods }} ${CONDA_RUN} python -c 'import torch; print(f"{torch.__version__}"); print(f"{torch.__file__}"); print(f"{torch.cuda.is_available()=}")' - name: Install torchcodec from the wheel run: | diff --git a/.github/workflows/linux_cuda_wheel.yaml b/.github/workflows/linux_cuda_wheel.yaml index c47458987..e3b1ef6ad 100644 --- a/.github/workflows/linux_cuda_wheel.yaml +++ b/.github/workflows/linux_cuda_wheel.yaml @@ -109,7 +109,7 @@ jobs: run: ${CONDA_RUN} python -m pip install --upgrade pip - name: Install PyTorch run: | - ${CONDA_RUN} python -m pip install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cu${{ env.cuda_version_without_periods }} + ${CONDA_RUN} python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu${{ env.cuda_version_without_periods }} ${CONDA_RUN} python -c 'import torch; print(f"{torch.__version__}"); print(f"{torch.__file__}"); print(f"{torch.cuda.is_available()=}")' - name: Install torchcodec from the wheel run: | diff --git a/.github/workflows/linux_wheel.yaml b/.github/workflows/linux_wheel.yaml index d86a75d1e..9ed7fed7a 100644 --- a/.github/workflows/linux_wheel.yaml +++ b/.github/workflows/linux_wheel.yaml @@ -81,7 +81,7 @@ jobs: run: python -m pip install --upgrade pip - name: Install PyTorch run: | - python -m pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu + python -m pip install torch --index-url https://download.pytorch.org/whl/cpu - name: Install torchcodec from the wheel run: | wheel_path=`find pytorch/torchcodec/dist -type f -name "*.whl"` diff --git a/.github/workflows/macos_wheel.yaml b/.github/workflows/macos_wheel.yaml index a896b54c9..181a6eb55 100644 --- a/.github/workflows/macos_wheel.yaml +++ b/.github/workflows/macos_wheel.yaml @@ -85,7 +85,7 @@ jobs: - name: Install PyTorch run: | - python -m pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu + python -m pip install torch --index-url https://download.pytorch.org/whl/cpu - name: Install torchcodec from the wheel run: | From 8105176174d580388d2130112889c84387334c87 Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Wed, 6 Aug 2025 16:11:12 +0100 Subject: [PATCH 4/9] Update version, build more Python versions --- .github/workflows/linux_cuda_wheel.yaml | 9 +++------ .github/workflows/linux_wheel.yaml | 2 +- .github/workflows/macos_wheel.yaml | 2 +- version.txt | 2 +- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/.github/workflows/linux_cuda_wheel.yaml b/.github/workflows/linux_cuda_wheel.yaml index e3b1ef6ad..d6364ef55 100644 --- a/.github/workflows/linux_cuda_wheel.yaml +++ b/.github/workflows/linux_cuda_wheel.yaml @@ -66,13 +66,10 @@ jobs: # PR. # For the actual release we should add that label and change this to # include more python versions. - python-version: ['3.10'] - # We test against 12.6 to avoid having too big of a CI matrix, - # but for releases we should add 12.8. - # TODO add 13.0! - cuda-version: ['12.6'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] + cuda-version: ['12.6', '12.8', '12.9'] # TODO: put back ffmpeg 5 https://github.com/pytorch/torchcodec/issues/325 - ffmpeg-version-for-tests: ['4.4.2', '6', '7'] + ffmpeg-version-for-tests: ['4.4.2', '5', '6', '7'] container: image: "pytorch/manylinux2_28-builder:cuda${{ matrix.cuda-version }}" diff --git a/.github/workflows/linux_wheel.yaml b/.github/workflows/linux_wheel.yaml index 9ed7fed7a..2c0e1aea6 100644 --- a/.github/workflows/linux_wheel.yaml +++ b/.github/workflows/linux_wheel.yaml @@ -62,7 +62,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.10'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] ffmpeg-version-for-tests: ['4.4.2', '5.1.2', '6.1.1', '7.0.1'] needs: build steps: diff --git a/.github/workflows/macos_wheel.yaml b/.github/workflows/macos_wheel.yaml index 181a6eb55..0e0563c26 100644 --- a/.github/workflows/macos_wheel.yaml +++ b/.github/workflows/macos_wheel.yaml @@ -63,7 +63,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.10'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] ffmpeg-version-for-tests: ['4.4.2', '5.1.2', '6.1.1', '7.0.1'] needs: build steps: diff --git a/version.txt b/version.txt index faef31a43..bcaffe19b 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.7.0 +0.7.0 \ No newline at end of file From b39a16378157469e6216bfa0f703086abb10e899 Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 09:50:43 +0100 Subject: [PATCH 5/9] Also handle Windows builds --- .github/workflows/windows_wheel.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/windows_wheel.yaml b/.github/workflows/windows_wheel.yaml index 2cefc2a9f..816281aa7 100644 --- a/.github/workflows/windows_wheel.yaml +++ b/.github/workflows/windows_wheel.yaml @@ -26,12 +26,12 @@ defaults: jobs: generate-matrix: - uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main + uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@release/2.8 with: package-type: wheel os: windows test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 with-xpu: disable with-rocm: disable with-cuda: disable @@ -44,12 +44,12 @@ jobs: strategy: fail-fast: false name: Build and Upload Windows wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_windows.yml@main + uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" test-infra-repository: pytorch/test-infra - test-infra-ref: main + test-infra-ref: release/2.8 build-matrix: ${{ needs.generate-matrix.outputs.matrix }} pre-script: packaging/pre_build_script.sh # post-script: packaging/post_build_script.sh TODO: consider enabling post-build checks for Windows @@ -67,7 +67,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.10'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] # TODO: FFmpeg 5 on Windows segfaults in avcodec_open2() when passing # bad parameters. # See https://github.com/pytorch/torchcodec/pull/806 @@ -89,7 +89,7 @@ jobs: run: python -m pip install --upgrade pip - name: Install PyTorch run: | - python -m pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu + python -m pip install torch --index-url https://download.pytorch.org/whl/cpu - name: Install torchcodec from the wheel run: | wheel_path=`find pytorch/torchcodec/dist -type f -name "*.whl"` From 8bbf6e337680b5ccb051abd262b3a8698256b729 Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 10:24:19 +0100 Subject: [PATCH 6/9] Avoid 3.13t builds --- .github/workflows/linux_cuda_wheel.yaml | 1 + .github/workflows/linux_wheel.yaml | 1 + .github/workflows/macos_wheel.yaml | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/workflows/linux_cuda_wheel.yaml b/.github/workflows/linux_cuda_wheel.yaml index d6364ef55..d44ff2dd7 100644 --- a/.github/workflows/linux_cuda_wheel.yaml +++ b/.github/workflows/linux_cuda_wheel.yaml @@ -36,6 +36,7 @@ jobs: with-rocm: disable with-cuda: enable build-python-only: "disable" + python-versions: '["3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix strategy: diff --git a/.github/workflows/linux_wheel.yaml b/.github/workflows/linux_wheel.yaml index 2c0e1aea6..10e4dccb6 100644 --- a/.github/workflows/linux_wheel.yaml +++ b/.github/workflows/linux_wheel.yaml @@ -36,6 +36,7 @@ jobs: with-rocm: disable with-cuda: disable build-python-only: "disable" + python-versions: '["3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix diff --git a/.github/workflows/macos_wheel.yaml b/.github/workflows/macos_wheel.yaml index 0e0563c26..d978b9bca 100644 --- a/.github/workflows/macos_wheel.yaml +++ b/.github/workflows/macos_wheel.yaml @@ -36,6 +36,7 @@ jobs: with-rocm: disable with-cuda: disable build-python-only: "disable" + python-versions: '["3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix From d1dff81da7cbbf7ddacd5eddd334728d4074e6a5 Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 10:25:07 +0100 Subject: [PATCH 7/9] Fix windows --- .github/workflows/windows_wheel.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows_wheel.yaml b/.github/workflows/windows_wheel.yaml index 816281aa7..f84d78db3 100644 --- a/.github/workflows/windows_wheel.yaml +++ b/.github/workflows/windows_wheel.yaml @@ -44,7 +44,7 @@ jobs: strategy: fail-fast: false name: Build and Upload Windows wheel - uses: pytorch/test-infra/.github/workflows/build_wheels_linux.yml@release/2.8 + uses: pytorch/test-infra/.github/workflows/build_wheels_windows.yml@release/2.8 with: repository: pytorch/torchcodec ref: "" From eb2f2cb257e5656bccb3e92aa968ae7fbd7eb44e Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 10:35:00 +0100 Subject: [PATCH 8/9] Keep 3.9 AAGH --- .github/workflows/linux_cuda_wheel.yaml | 2 +- .github/workflows/linux_wheel.yaml | 2 +- .github/workflows/macos_wheel.yaml | 2 +- .github/workflows/windows_wheel.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/linux_cuda_wheel.yaml b/.github/workflows/linux_cuda_wheel.yaml index d44ff2dd7..0f3620608 100644 --- a/.github/workflows/linux_cuda_wheel.yaml +++ b/.github/workflows/linux_cuda_wheel.yaml @@ -36,7 +36,7 @@ jobs: with-rocm: disable with-cuda: enable build-python-only: "disable" - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix strategy: diff --git a/.github/workflows/linux_wheel.yaml b/.github/workflows/linux_wheel.yaml index 10e4dccb6..d47df3eea 100644 --- a/.github/workflows/linux_wheel.yaml +++ b/.github/workflows/linux_wheel.yaml @@ -36,7 +36,7 @@ jobs: with-rocm: disable with-cuda: disable build-python-only: "disable" - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix diff --git a/.github/workflows/macos_wheel.yaml b/.github/workflows/macos_wheel.yaml index d978b9bca..fc1049bdd 100644 --- a/.github/workflows/macos_wheel.yaml +++ b/.github/workflows/macos_wheel.yaml @@ -36,7 +36,7 @@ jobs: with-rocm: disable with-cuda: disable build-python-only: "disable" - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix diff --git a/.github/workflows/windows_wheel.yaml b/.github/workflows/windows_wheel.yaml index f84d78db3..b0a532c08 100644 --- a/.github/workflows/windows_wheel.yaml +++ b/.github/workflows/windows_wheel.yaml @@ -36,7 +36,7 @@ jobs: with-rocm: disable with-cuda: disable build-python-only: "disable" - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]' build: From 5757d85bc613659657a34b1c5a28c045299e565b Mon Sep 17 00:00:00 2001 From: Nicolas Hug Date: Fri, 5 Sep 2025 10:54:12 +0100 Subject: [PATCH 9/9] Avoid 3.13t on docs --- .github/workflows/docs.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 682fefe24..b96a088df 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -26,6 +26,7 @@ jobs: with-rocm: disable with-cuda: enable build-python-only: "disable" + python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]' build: needs: generate-matrix strategy: