diff --git a/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml index 45418ed98..3df538354 100644 --- a/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml index 182156149..9f8a62b5a 100644 --- a/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_64_blas_implgenericc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml index 77351ad71..f3434835e 100644 --- a/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml index aa913c621..3348ffc3a 100644 --- a/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_64_blas_implmklc_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml index d4635f051..9a5eb8c59 100644 --- a/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNonecxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml b/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml index a7d7b6591..99655f8b9 100644 --- a/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml +++ b/.ci_support/linux_aarch64_c_compiler_version13channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6cxx_compiler_version13is_rcFalse.yaml @@ -33,11 +33,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -54,6 +54,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml index 66656f427..c6feec780 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml +++ b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml index 04aefc778..20e3ffe5f 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml +++ b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml index cbbe6612f..db9bacb32 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml +++ b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml index 02a4aa43b..634c6e7a5 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml +++ b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml index 2aef50475..c30fcfeb8 100644 --- a/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml +++ b/.ci_support/osx_64_blas_implgenericchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml index 023552294..54a51beef 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml +++ b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml index b57aaf092..5b2d139d0 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml +++ b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml index d549ae43e..9ba9f9253 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml +++ b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml index c5705b306..532cd94d8 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml +++ b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml index 7c8113b3f..56565a9de 100644 --- a/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml +++ b/.ci_support/osx_64_blas_implmklchannel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml index 4ca2b50c8..ecc6bdbc8 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.10.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml index 17f951bb4..8fbb298f0 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.11.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml index 793a82255..576ca03cf 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.12.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml index 0ec714e44..ef8363fab 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2.0python3.9.____cpython.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml index abf491d5f..82cd46011 100644 --- a/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml +++ b/.ci_support/osx_arm64_channel_targetsconda-forge_mainis_rcFalsenumpy2python3.13.____cp313.yaml @@ -29,11 +29,11 @@ is_rc: libabseil: - '20240722' libblas: -- 3.9 *netlib +- 3.9.* *netlib libcblas: -- 3.9 *netlib +- 3.9.* *netlib liblapack: -- 3.9 *netlib +- 3.9.* *netlib libprotobuf: - 5.28.3 libtorch: @@ -48,6 +48,8 @@ mkl: - '2023' numpy: - '2' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNoneis_rcFalse.yaml b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNoneis_rcFalse.yaml index 483682129..ad886cb08 100644 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNoneis_rcFalse.yaml +++ b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilerNonecuda_compiler_versionNoneis_rcFalse.yaml @@ -36,6 +36,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6is_rcFalse.yaml b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6is_rcFalse.yaml index c0402bfc3..f5b631f70 100644 --- a/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6is_rcFalse.yaml +++ b/.ci_support/win_64_channel_targetsconda-forge_maincuda_compilercuda-nvcccuda_compiler_version12.6is_rcFalse.yaml @@ -36,6 +36,8 @@ numpy: - '2.0' - '2' - '2.0' +orc: +- 2.0.3 pin_run_as_build: python: min_pin: x.x diff --git a/recipe/bld.bat b/recipe/bld.bat index cc1244098..dd597fa4d 100644 --- a/recipe/bld.bat +++ b/recipe/bld.bat @@ -1,21 +1,21 @@ @echo On setlocal enabledelayedexpansion -REM remove pyproject.toml to avoid installing deps from pip -if EXIST pyproject.toml DEL pyproject.toml +@REM remove pyproject.toml to avoid installing deps from pip +if EXIST pyproject.toml ( + DEL pyproject.toml + if %ERRORLEVEL% neq 0 exit 1 +) set TH_BINARY_BUILD=1 set PYTORCH_BUILD_VERSION=%PKG_VERSION% -:: Always pass 0 to avoid appending ".post" to version string. -:: https://github.com/conda-forge/pytorch-cpu-feedstock/issues/315 +@REM Always pass 0 to avoid appending ".post" to version string. +@REM https://github.com/conda-forge/pytorch-cpu-feedstock/issues/315 set PYTORCH_BUILD_NUMBER=0 -REM I don't know where this folder comes from, but it's interfering with the build in osx-64 -if EXIST %PREFIX%\git RD /S /Q %PREFIX%\git - @REM Setup BLAS if "%blas_impl%" == "generic" ( - REM Fake openblas + @REM Fake openblas SET BLAS=OpenBLAS SET OpenBLAS_HOME=%LIBRARY_PREFIX% ) else ( @@ -26,40 +26,32 @@ if "%blas_impl%" == "generic" ( SET "USE_NUMA=0" SET "USE_ITT=0" -@REM KINETO seems to require CUPTI and will look quite hard for it. -@REM CUPTI seems to cause trouble when users install a version of -@REM cudatoolkit different than the one specified at compile time. -@REM https://github.com/conda-forge/pytorch-cpu-feedstock/issues/135 -set "USE_KINETO=OFF" - if "%PKG_NAME%" == "pytorch" ( set "PIP_ACTION=install" - :: We build libtorch for a specific python version. - :: This ensures its only build once. However, when that version changes - :: we need to make sure to update that here. - :: Get the full python version string + @REM We build libtorch for a specific python version. + @REM This ensures its only build once. However, when that version changes + @REM we need to make sure to update that here. + @REM Get the full python version string for /f "tokens=2" %%a in ('python --version 2^>^&1') do set PY_VERSION_FULL=%%a - :: Replace Python312 or python312 with ie Python311 or python311 + @REM Replace Python312 or python312 with ie Python311 or python311 sed "s/\([Pp]ython\)312/\1%CONDA_PY%/g" build/CMakeCache.txt.orig > build/CMakeCache.txt + if %ERRORLEVEL% neq 0 exit 1 - :: Replace version string v3.12.8() with ie v3.11.11() + @REM Replace version string v3.12.8() with ie v3.11.11() sed -i.bak -E "s/v3\.12\.[0-9]+/v%PY_VERSION_FULL%/g" build/CMakeCache.txt + if %ERRORLEVEL% neq 0 exit 1 - :: Replace interpreter properties Python;3;12;8;64 with ie Python;3;11;11;64 + @REM Replace interpreter properties Python;3;12;8;64 with ie Python;3;11;11;64 sed -i.bak -E "s/Python;3;12;[0-9]+;64/Python;%PY_VERSION_FULL:.=;%;64/g" build/CMakeCache.txt + if %ERRORLEVEL% neq 0 exit 1 - :: Replace cp312-win_amd64 with ie cp311-win_amd64 + @REM Replace cp312-win_amd64 with ie cp311-win_amd64 sed -i.bak "s/cp312/cp%CONDA_PY%/g" build/CMakeCache.txt + if %ERRORLEVEL% neq 0 exit 1 - @REM We use a fan-out build to avoid the long rebuild of libtorch - @REM However, the location of the numpy headers changes between python 3.8 - @REM and 3.9+ since numpy 2.0 only exists for 3.9+ - if "%PY_VER%" == "3.8" ( - sed -i.bak "s#numpy\\\\_core\\\\include#numpy\\\\core\\\\include#g" build/CMakeCache.txt - ) else ( - sed -i.bak "s#numpy\\\\core\\\\include#numpy\\\\_core\\\\include#g" build/CMakeCache.txt - ) + sed -i.bak "s#numpy\\\\core\\\\include#numpy\\\\_core\\\\include#g" build/CMakeCache.txt + if %ERRORLEVEL% neq 0 exit 1 ) else ( @REM For the main script we just build a wheel for so that the C++/CUDA @@ -70,8 +62,8 @@ if "%PKG_NAME%" == "pytorch" ( if not "%cuda_compiler_version%" == "None" ( set USE_CUDA=1 - REM set CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v%desired_cuda% - REM set CUDA_BIN_PATH=%CUDA_PATH%\bin + @REM set CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v%desired_cuda% + @REM set CUDA_BIN_PATH=%CUDA_PATH%\bin set TORCH_CUDA_ARCH_LIST=5.0;6.0;6.1;7.0;7.5;8.0;8.6;8.9;9.0+PTX @@ -80,7 +72,7 @@ if not "%cuda_compiler_version%" == "None" ( set USE_STATIC_CUDNN=0 set MAGMA_HOME=%PREFIX% - REM NCCL is not available on windows + @REM NCCL is not available on windows set USE_NCCL=0 set USE_STATIC_NCCL=0 @@ -92,9 +84,9 @@ if not "%cuda_compiler_version%" == "None" ( ) else ( set USE_CUDA=0 - REM On windows, env vars are case-insensitive and setup.py - REM passes all env vars starting with CUDA_*, CMAKE_* to - REM to cmake + @REM On windows, env vars are case-insensitive and setup.py + @REM passes all env vars starting with CUDA_*, CMAKE_* to + @REM to cmake set "cuda_compiler_version=" set "cuda_compiler=" set "CUDA_VERSION=" @@ -117,7 +109,7 @@ set "CMAKE_PREFIX_PATH=%LIBRARY_PREFIX%" set "CMAKE_INCLUDE_PATH=%LIBRARY_INC%" set "CMAKE_LIBRARY_PATH=%LIBRARY_LIB%" set "CMAKE_BUILD_TYPE=Release" -:: This is so that CMake finds the environment's Python, not another one +@REM This is so that CMake finds the environment's Python, not another one set Python_EXECUTABLE=%PYTHON% set Python3_EXECUTABLE=%PYTHON% @@ -154,13 +146,18 @@ set "CMAKE_CUDA_COMPILER_LAUNCHER=sccache" sccache --stop-server sccache --start-server +if %ERRORLEVEL% neq 0 exit 1 sccache --zero-stats +if %ERRORLEVEL% neq 0 exit 1 @REM Clear the build from any remaining artifacts. We use sccache to avoid recompiling similar code. -cmake --build build --target clean +if EXIST build ( + cmake --build build --target clean + if %ERRORLEVEL% neq 0 exit 1 +) %PYTHON% -m pip %PIP_ACTION% . --no-build-isolation --no-deps -vvv --no-clean -if errorlevel 1 exit /b 1 +if %ERRORLEVEL% neq 0 exit 1 @REM Here we split the build into two parts. @REM @@ -175,46 +172,65 @@ if errorlevel 1 exit /b 1 if "%PKG_NAME%" == "libtorch" ( @REM Extract the compiled wheel into a temporary directory - if not exist "%SRC_DIR%/dist" mkdir %SRC_DIR%/dist - pushd %SRC_DIR%/dist - for %%f in (../torch-*.whl) do ( + if not exist "%SRC_DIR%\dist" mkdir %SRC_DIR%\dist + pushd %SRC_DIR%\dist + for /f %%f in ('dir /b /S ..\torch-*.whl') do ( wheel unpack %%f + if %ERRORLEVEL% neq 0 exit 1 ) - @REM Navigate into the unpacked wheel - pushd torch-* + @REM Navigate into the unpacked wheel; naming pattern of the folder is documented: + @REM https://github.com/pypa/wheel/blob/0.45.1/src/wheel/cli/unpack.py#L11-L12 + pushd torch-%PKG_VERSION% + if %ERRORLEVEL% neq 0 exit 1 + + @REM Do not package `fmt.lib` (and its metadata); delete it before the move into + @REM %LIBRARY_BIN% because it may exist in host before installation already + del torch\lib\fmt.lib torch\lib\pkgconfig\fmt.pc + if %ERRORLEVEL% neq 0 exit 1 + @REM also delete rest of fmt metadata + rmdir /s /q torch\lib\cmake\fmt @REM Move the binaries into the packages site-package directory - robocopy /NP /NFL /NDL /NJH /E torch\bin %SP_DIR%\torch\bin\ - robocopy /NP /NFL /NDL /NJH /E torch\lib %SP_DIR%\torch\lib\ - robocopy /NP /NFL /NDL /NJH /E torch\share %SP_DIR%\torch\share\ + @REM the only content of torch\bin, {asmjit,fbgemm}.dll, also exists in torch\lib + robocopy /NP /NFL /NDL /NJH /E torch\lib\ %LIBRARY_BIN%\ torch*.dll c10.dll shm.dll asmjit.dll fbgemm.dll + robocopy /NP /NFL /NDL /NJH /E torch\lib\ %LIBRARY_LIB%\ torch*.lib c10.lib shm.lib asmjit.lib fbgemm.lib + if not "%cuda_compiler_version%" == "None" ( + robocopy /NP /NFL /NDL /NJH /E torch\lib\ %LIBRARY_BIN%\ c10_cuda.dll caffe2_nvrtc.dll + robocopy /NP /NFL /NDL /NJH /E torch\lib\ %LIBRARY_LIB%\ c10_cuda.lib caffe2_nvrtc.lib + ) + robocopy /NP /NFL /NDL /NJH /E torch\share\ %LIBRARY_PREFIX%\share for %%f in (ATen caffe2 torch c10) do ( - robocopy /NP /NFL /NDL /NJH /E torch\include\%%f %SP_DIR%\torch\include\%%f\ + robocopy /NP /NFL /NDL /NJH /E torch\include\%%f %LIBRARY_INC%\%%f\ ) @REM Remove the python binary file, that is placed in the site-packages @REM directory by the specific python specific pytorch package. - del %SP_DIR%\torch\lib\torch_python.* + del %LIBRARY_BIN%\torch_python.* %LIBRARY_LIB%\torch_python.* %LIBRARY_LIB%\_C.lib + if %ERRORLEVEL% neq 0 exit 1 popd popd @REM Keep the original backed up to sed later copy build\CMakeCache.txt build\CMakeCache.txt.orig + if %ERRORLEVEL% neq 0 exit 1 ) else if "%PKG_NAME%" == "pytorch" ( + @REM Move libtorch_python and remove the other directories afterwards. + robocopy /NP /NFL /NDL /NJH /E %SP_DIR%\torch\lib\ %LIBRARY_BIN%\ torch_python.dll + robocopy /NP /NFL /NDL /NJH /E %SP_DIR%\torch\lib\ %LIBRARY_LIB%\ torch_python.lib + robocopy /NP /NFL /NDL /NJH /E %SP_DIR%\torch\lib\ %LIBRARY_LIB%\ _C.lib + rmdir /s /q %SP_DIR%\torch\lib rmdir /s /q %SP_DIR%\torch\bin rmdir /s /q %SP_DIR%\torch\share for %%f in (ATen caffe2 torch c10) do ( rmdir /s /q %SP_DIR%\torch\include\%%f ) - @REM Delete all files from the lib directory that do not start with torch_python - for %%f in (%SP_DIR%\torch\lib\*) do ( - set "FILENAME=%%~nf" - if "!FILENAME:~0,12!" neq "torch_python" ( - del %%f - ) - ) + @REM Copy libtorch_python.lib back -- that's much easier than the for loop + @REM needed to remove everything else. + robocopy /NP /NFL /NDL /NJH /E %LIBRARY_LIB%\ torch\lib\ torch_python.lib + robocopy /NP /NFL /NDL /NJH /E %LIBRARY_LIB%\ torch\lib\ _C.lib ) @REM Show the sccache stats. diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 6a62fa4d0..ef8228cd3 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,6 +1,6 @@ # if you wish to build release candidate number X, append the version string with ".rcX" {% set version = "2.5.1" %} -{% set build = 9 %} +{% set build = 10 %} {% if cuda_compiler_version != "None" %} {% set build = build + 200 %} @@ -15,7 +15,7 @@ # https://github.com/pytorch/pytorch/blob/main/RELEASE.md#triton-dependency-for-the-release {% set triton = "3.1.0" %} -# TODO Temporary pin, remove +# TODO Temporary pin, remove me {% set mkl = "<2025" %} package: @@ -63,6 +63,10 @@ source: - patches/0014-Fix-FindOpenBLAS.patch # backport https://github.com/pytorch/pytorch/pull/138095 - patches/0015-CD-Enable-Python-3.13-on-windows-138095.patch + # backport https://github.com/pytorch/pytorch/pull/145480 + - patches/0016-simplify-torch.utils.cpp_extension.include_paths-use.patch + # point to headers that are now living in $PREFIX/include instead of $SP_DIR/torch/include + - patches/0017-point-include-paths-to-PREFIX-include.patch build: number: {{ build }} @@ -126,14 +130,14 @@ requirements: {% if cuda_compiler_version != "None" %} - cuda-driver-dev # [linux] - cuda-cudart-dev - - cuda-cupti-dev # [linux] + - cuda-cupti-dev - cuda-nvrtc-dev - cuda-nvtx-dev - cuda-nvml-dev - cuda-profiler-api - - cusparselt # [linux] + - cusparselt - libcublas-dev - - libcudss-dev # [linux] + - libcudss-dev - libcufile-dev # [linux] - libcufft-dev - libcurand-dev @@ -192,35 +196,29 @@ requirements: # the global build stage, including tests test: commands: - # libraries - {% for each_lib in [ 'c10', 'shm', 'torch', 'torch_cpu', 'torch_global_deps'] %} - - test -f $PREFIX/lib/lib{{ each_lib }}.so # [linux] - - test -f $PREFIX/lib/lib{{ each_lib }}.dylib # [osx] - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.dll exit 1 # [win] - {% endfor %} - - # Windows specific .LIB files - {% for each_lib in [ 'c10', 'shm', 'torch', 'torch_cpu'] %} - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.lib exit 1 # [win] - {% endfor %} - - # Windows specific libraries - {% for each_lib in [ 'asmjit', 'fbgemm'] %} - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.dll exit 1 # [win] - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.lib exit 1 # [win] - {% endfor %} - - # Cuda only libraries - {% for each_lib in ['c10_cuda', 'caffe2_nvrtc', 'torch_cuda'] %} - - test -f $PREFIX/lib/lib{{ each_lib }}.so # [linux and cuda_compiler_version != "None"] - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.dll exit 1 # [win and cuda_compiler_version != "None"] - - if not exist %SP_DIR%\torch\lib\{{ each_lib }}.lib exit 1 # [win and cuda_compiler_version != "None"] + # libraries; peculiar formatting to avoid linter false positives about selectors + {% set torch_libs = [ + "c10", "shm", "torch", "torch_cpu", "torch_global_deps" + ] + (cuda_compiler_version != "None" and target_platform.startswith("linux")) * [ + "torch_cuda_linalg" + ] + (cuda_compiler_version != "None") * [ + "c10_cuda", "caffe2_nvrtc", "torch_cuda" + ] + target_platform.startswith("win") * [ + "asmjit", "fbgemm" + ] + %} + {% for each_lib in torch_libs %} + - test -f $PREFIX/lib/lib{{ each_lib }}.so # [linux] + - test -f $PREFIX/lib/lib{{ each_lib }}.dylib # [osx] + - if not exist %LIBRARY_BIN%\{{ each_lib }}.dll exit 1 # [win] + {% if each_lib != "torch_global_deps" %} + - if not exist %LIBRARY_LIB%\{{ each_lib }}.lib exit 1 # [win] + {% endif %} {% endfor %} - # Linux specific cuda libraries - {% for each_lib in [ 'torch_cuda_linalg'] %} - - test -f $PREFIX/lib/lib{{ each_lib }}.so # [linux and cuda_compiler_version != "None"] - {% endfor %} + # CMake files in share + - test -f $PREFIX/share/cmake/Torch/TorchConfig.cmake # [linux] + - if not exist %LIBRARY_PREFIX%\share\cmake\Torch\TorchConfig.cmake exit 1 # [win] outputs: - name: libtorch @@ -238,7 +236,7 @@ outputs: - libmagma_sparse requirements: build: - - python # [build_platform != target_platform] + - python - cross-python_{{ target_platform }} # [build_platform != target_platform] - numpy # [build_platform != target_platform] - {{ stdlib('c') }} @@ -266,14 +264,14 @@ outputs: {% if cuda_compiler_version != "None" %} - cuda-driver-dev # [linux] - cuda-cudart-dev - - cuda-cupti-dev # [linux] + - cuda-cupti-dev - cuda-nvrtc-dev - cuda-nvtx-dev - cuda-nvml-dev - cuda-profiler-api - - cusparselt # [linux] + - cusparselt - libcublas-dev - - libcudss-dev # [linux] + - libcudss-dev - libcufile-dev # [linux] - libcufft-dev - libcurand-dev @@ -379,6 +377,8 @@ outputs: # python-version-specific library (default location in SP_DIR symlinks back to this) - test -f $PREFIX/lib/libtorch_python${SHLIB_EXT} # [unix] + - if not exist %LIBRARY_BIN%\torch_python.dll exit 1 # [win] + - if not exist %LIBRARY_LIB%\torch_python.lib exit 1 # [win] # a reasonably safe subset of tests that should run under 15 minutes # disable hypothesis because it randomly yields health check errors @@ -444,6 +444,12 @@ outputs: - python -m pytest -n 2 {{ tests }} -k "not ({{ skips }})" --durations=50 # [unix and (not aarch64 or py==312)] - python -m pytest -v -s {{ tests }} -k "not ({{ skips }})" --durations=50 # [win] + # regression test for https://github.com/conda-forge/pytorch-cpu-feedstock/issues/329, where we picked up + # duplicate `.pyc` files due to newest py-ver (3.13) in the build environment not matching the one in host; + # obviously this test can only be done for other python versions. + - test ! -f $SP_DIR/functorch/__pycache__/__init__.cpython-313.pyc # [py!=313 and unix] + - if exist %SP_DIR%\functorch\__pycache__\__init__.cpython-313.pyc exit 1 # [py!=313 and win] + # 2021/08/01, hmaarrfk # While this seems like a roundabout way of defining the package name # It helps the linter avoid errors on a package not having tests. diff --git a/recipe/patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch b/recipe/patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch index fab6479d1..9261e825c 100644 --- a/recipe/patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch +++ b/recipe/patches/0001-Force-usage-of-python-3-and-error-without-numpy.patch @@ -1,7 +1,7 @@ From f3a0f9aab6dce56eea590b946f60256014b61bf7 Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 1 Sep 2024 17:35:40 -0400 -Subject: [PATCH 01/15] Force usage of python 3 and error without numpy +Subject: [PATCH 01/17] Force usage of python 3 and error without numpy --- cmake/Dependencies.cmake | 6 +++--- diff --git a/recipe/patches/0002-Help-find-numpy.patch b/recipe/patches/0002-Help-find-numpy.patch index 58792c4b0..ff94df907 100644 --- a/recipe/patches/0002-Help-find-numpy.patch +++ b/recipe/patches/0002-Help-find-numpy.patch @@ -1,7 +1,7 @@ From 21c30036b5b86f403c0cf4426165d9a6a50edb1a Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Tue, 1 Oct 2024 00:28:40 -0400 -Subject: [PATCH 02/15] Help find numpy +Subject: [PATCH 02/17] Help find numpy --- tools/setup_helpers/cmake.py | 6 ++++++ diff --git a/recipe/patches/0003-Add-USE_SYSTEM_NVTX-option-138287.patch b/recipe/patches/0003-Add-USE_SYSTEM_NVTX-option-138287.patch index 38baefeb5..651017639 100644 --- a/recipe/patches/0003-Add-USE_SYSTEM_NVTX-option-138287.patch +++ b/recipe/patches/0003-Add-USE_SYSTEM_NVTX-option-138287.patch @@ -1,7 +1,7 @@ From d1826af525db41eda5020a1404f5d5521d67a5dc Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sat, 19 Oct 2024 04:26:01 +0000 -Subject: [PATCH 03/15] Add USE_SYSTEM_NVTX option (#138287) +Subject: [PATCH 03/17] Add USE_SYSTEM_NVTX option (#138287) ## Summary diff --git a/recipe/patches/0004-Update-sympy-version.patch b/recipe/patches/0004-Update-sympy-version.patch index 3767fdfc6..eda585111 100644 --- a/recipe/patches/0004-Update-sympy-version.patch +++ b/recipe/patches/0004-Update-sympy-version.patch @@ -1,7 +1,7 @@ From e3219c5fe8834753b0cf9e92be4d1ef1e874f370 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Thu, 17 Oct 2024 15:04:05 -0700 -Subject: [PATCH 04/15] Update sympy version +Subject: [PATCH 04/17] Update sympy version --- setup.py | 2 +- diff --git a/recipe/patches/0005-Fix-duplicate-linker-script.patch b/recipe/patches/0005-Fix-duplicate-linker-script.patch index 9fc6adab2..6ab800fe5 100644 --- a/recipe/patches/0005-Fix-duplicate-linker-script.patch +++ b/recipe/patches/0005-Fix-duplicate-linker-script.patch @@ -1,7 +1,7 @@ From 08a1f44fbc81324aa98d720dfb7b87a261923ac2 Mon Sep 17 00:00:00 2001 From: Jeongseok Lee Date: Sun, 3 Nov 2024 01:12:36 -0700 -Subject: [PATCH 05/15] Fix duplicate linker script +Subject: [PATCH 05/17] Fix duplicate linker script --- setup.py | 4 +++- diff --git a/recipe/patches/0006-fix-3.13-pickle-error-in-serialization.py-136034.patch b/recipe/patches/0006-fix-3.13-pickle-error-in-serialization.py-136034.patch index d4253916a..ea928c2d8 100644 --- a/recipe/patches/0006-fix-3.13-pickle-error-in-serialization.py-136034.patch +++ b/recipe/patches/0006-fix-3.13-pickle-error-in-serialization.py-136034.patch @@ -1,7 +1,7 @@ From 15df314a41c69a31c0443254d5552aa1b39d708d Mon Sep 17 00:00:00 2001 From: William Wen Date: Fri, 13 Sep 2024 13:02:33 -0700 -Subject: [PATCH 06/15] fix 3.13 pickle error in serialization.py (#136034) +Subject: [PATCH 06/17] fix 3.13 pickle error in serialization.py (#136034) Error encountered when adding dynamo 3.13 support. Pull Request resolved: https://github.com/pytorch/pytorch/pull/136034 diff --git a/recipe/patches/0007-Allow-users-to-overwrite-ld-with-environment-variabl.patch b/recipe/patches/0007-Allow-users-to-overwrite-ld-with-environment-variabl.patch index 514982cc7..046b0d60f 100644 --- a/recipe/patches/0007-Allow-users-to-overwrite-ld-with-environment-variabl.patch +++ b/recipe/patches/0007-Allow-users-to-overwrite-ld-with-environment-variabl.patch @@ -1,7 +1,7 @@ From 655f694854c3eafdd631235b60bc6c1b279218ed Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Thu, 3 Oct 2024 22:49:56 -0400 -Subject: [PATCH 07/15] Allow users to overwrite ld with environment variables +Subject: [PATCH 07/17] Allow users to overwrite ld with environment variables This should help in the case of cross compilation. diff --git a/recipe/patches/0008-Allow-libcufile-for-conda-builds.patch b/recipe/patches/0008-Allow-libcufile-for-conda-builds.patch index 95c7a842b..7e6ca54c6 100644 --- a/recipe/patches/0008-Allow-libcufile-for-conda-builds.patch +++ b/recipe/patches/0008-Allow-libcufile-for-conda-builds.patch @@ -1,7 +1,7 @@ From 2578bf017b0453c8eb028a09b7523fb150429eca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Fri, 22 Nov 2024 17:50:53 +0100 -Subject: [PATCH 08/15] Allow libcufile for conda builds +Subject: [PATCH 08/17] Allow libcufile for conda builds --- CMakeLists.txt | 2 +- diff --git a/recipe/patches/0009-Allow-overriding-CUDA-related-paths.patch b/recipe/patches/0009-Allow-overriding-CUDA-related-paths.patch index 8c09887b7..a164eb1ca 100644 --- a/recipe/patches/0009-Allow-overriding-CUDA-related-paths.patch +++ b/recipe/patches/0009-Allow-overriding-CUDA-related-paths.patch @@ -1,7 +1,7 @@ From 52e530f222f2d30531c8da889695ac2674964245 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Wed, 27 Nov 2024 13:47:23 +0100 -Subject: [PATCH 09/15] Allow overriding CUDA-related paths +Subject: [PATCH 09/17] Allow overriding CUDA-related paths --- cmake/Modules/FindCUDAToolkit.cmake | 2 +- diff --git a/recipe/patches/0010-Fix-test-test_linalg.py-for-NumPy-2-136800.patch b/recipe/patches/0010-Fix-test-test_linalg.py-for-NumPy-2-136800.patch index 4dcc58a8a..b005bfc98 100644 --- a/recipe/patches/0010-Fix-test-test_linalg.py-for-NumPy-2-136800.patch +++ b/recipe/patches/0010-Fix-test-test_linalg.py-for-NumPy-2-136800.patch @@ -1,7 +1,7 @@ From db0902077a0ef68d0a48ae42f3b60f9cff7b2248 Mon Sep 17 00:00:00 2001 From: Haifeng Jin Date: Tue, 1 Oct 2024 07:53:24 +0000 -Subject: [PATCH 10/15] Fix test/test_linalg.py for NumPy 2 (#136800) +Subject: [PATCH 10/17] Fix test/test_linalg.py for NumPy 2 (#136800) Related to #107302. diff --git a/recipe/patches/0011-Fixes-NumPy-2-test-failures-in-test_torch.py-137740.patch b/recipe/patches/0011-Fixes-NumPy-2-test-failures-in-test_torch.py-137740.patch index fe156f3d4..962adf146 100644 --- a/recipe/patches/0011-Fixes-NumPy-2-test-failures-in-test_torch.py-137740.patch +++ b/recipe/patches/0011-Fixes-NumPy-2-test-failures-in-test_torch.py-137740.patch @@ -1,7 +1,7 @@ From a1ced1daa37fdcf5345aa0c3095cab8674c1cded Mon Sep 17 00:00:00 2001 From: Haifeng Jin Date: Sat, 12 Oct 2024 02:40:17 +0000 -Subject: [PATCH 11/15] Fixes NumPy 2 test failures in test_torch.py (#137740) +Subject: [PATCH 11/17] Fixes NumPy 2 test failures in test_torch.py (#137740) Related to #107302 diff --git a/recipe/patches/0012-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch b/recipe/patches/0012-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch index 4d2159dd5..7e7ccfdd4 100644 --- a/recipe/patches/0012-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch +++ b/recipe/patches/0012-Use-BLAS_USE_CBLAS_DOT-for-OpenBLAS-builds.patch @@ -1,7 +1,7 @@ From e74a39d09953d4c4dd293e167121cfe83fb172ec Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 18 Dec 2024 03:59:00 +0000 -Subject: [PATCH 12/15] Use BLAS_USE_CBLAS_DOT for OpenBLAS builds +Subject: [PATCH 12/17] Use BLAS_USE_CBLAS_DOT for OpenBLAS builds There are two calling conventions for *dotu functions diff --git a/recipe/patches/0013-fix-issue-142484.patch b/recipe/patches/0013-fix-issue-142484.patch index 528b0371e..4fdb5d7a7 100644 --- a/recipe/patches/0013-fix-issue-142484.patch +++ b/recipe/patches/0013-fix-issue-142484.patch @@ -1,7 +1,7 @@ From 67b122f715e93592f1d7913ab970619f7b571b96 Mon Sep 17 00:00:00 2001 From: "Zheng, Zhaoqiong" Date: Fri, 27 Dec 2024 13:49:36 +0800 -Subject: [PATCH 13/15] fix issue 142484 +Subject: [PATCH 13/17] fix issue 142484 From https://github.com/pytorch/pytorch/pull/143894 --- diff --git a/recipe/patches/0014-Fix-FindOpenBLAS.patch b/recipe/patches/0014-Fix-FindOpenBLAS.patch index 33fb2ffb9..e27613b3c 100644 --- a/recipe/patches/0014-Fix-FindOpenBLAS.patch +++ b/recipe/patches/0014-Fix-FindOpenBLAS.patch @@ -1,7 +1,7 @@ From a6924f47769d3d068b6d8e40686733b7ff32544e Mon Sep 17 00:00:00 2001 From: Bas Zalmstra Date: Thu, 16 May 2024 10:46:49 +0200 -Subject: [PATCH 14/15] Fix FindOpenBLAS +Subject: [PATCH 14/17] Fix FindOpenBLAS --- cmake/Modules/FindOpenBLAS.cmake | 15 +++++++++------ diff --git a/recipe/patches/0015-CD-Enable-Python-3.13-on-windows-138095.patch b/recipe/patches/0015-CD-Enable-Python-3.13-on-windows-138095.patch index b62f6456c..391496b0a 100644 --- a/recipe/patches/0015-CD-Enable-Python-3.13-on-windows-138095.patch +++ b/recipe/patches/0015-CD-Enable-Python-3.13-on-windows-138095.patch @@ -1,7 +1,7 @@ From 66fa234eccfe98339bfa2bba6eae425ce27a037d Mon Sep 17 00:00:00 2001 From: atalman Date: Tue, 12 Nov 2024 12:28:10 +0000 -Subject: [PATCH 15/15] CD Enable Python 3.13 on windows (#138095) +Subject: [PATCH 15/17] CD Enable Python 3.13 on windows (#138095) Adding CD windows. Part of: https://github.com/pytorch/pytorch/issues/130249 Builder PR landed with smoke test: https://github.com/pytorch/builder/pull/2035 diff --git a/recipe/patches/0016-simplify-torch.utils.cpp_extension.include_paths-use.patch b/recipe/patches/0016-simplify-torch.utils.cpp_extension.include_paths-use.patch new file mode 100644 index 000000000..99eb183cb --- /dev/null +++ b/recipe/patches/0016-simplify-torch.utils.cpp_extension.include_paths-use.patch @@ -0,0 +1,51 @@ +From d28eeca9a0692c0783bcbb9626917e87396128cd Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Thu, 23 Jan 2025 22:46:58 +1100 +Subject: [PATCH 16/17] simplify torch.utils.cpp_extension.include_paths; use + it in cpp_builder + +The /TH headers have not existed since pytorch 1.11 +--- + torch/_inductor/cpp_builder.py | 13 +++---------- + torch/utils/cpp_extension.py | 4 ---- + 2 files changed, 3 insertions(+), 14 deletions(-) + +diff --git a/torch/_inductor/cpp_builder.py b/torch/_inductor/cpp_builder.py +index 95a0bff86fd..860e7fb062f 100644 +--- a/torch/_inductor/cpp_builder.py ++++ b/torch/_inductor/cpp_builder.py +@@ -743,16 +743,9 @@ def _get_build_args_of_chosen_isa(vec_isa: VecISA) -> Tuple[List[str], List[str] + def _get_torch_related_args( + include_pytorch: bool, aot_mode: bool + ) -> Tuple[List[str], List[str], List[str]]: +- from torch.utils.cpp_extension import _TORCH_PATH, TORCH_LIB_PATH +- +- include_dirs = [ +- os.path.join(_TORCH_PATH, "include"), +- os.path.join(_TORCH_PATH, "include", "torch", "csrc", "api", "include"), +- # Some internal (old) Torch headers don't properly prefix their includes, +- # so we need to pass -Itorch/lib/include/TH as well. +- os.path.join(_TORCH_PATH, "include", "TH"), +- os.path.join(_TORCH_PATH, "include", "THC"), +- ] ++ from torch.utils.cpp_extension import include_paths, TORCH_LIB_PATH ++ ++ include_dirs = include_paths() + libraries_dirs = [TORCH_LIB_PATH] + libraries = [] + if sys.platform != "darwin" and not config.is_fbcode(): +diff --git a/torch/utils/cpp_extension.py b/torch/utils/cpp_extension.py +index aaa45ea4c90..3f584ef5598 100644 +--- a/torch/utils/cpp_extension.py ++++ b/torch/utils/cpp_extension.py +@@ -1159,10 +1159,6 @@ def include_paths(cuda: bool = False) -> List[str]: + lib_include, + # Remove this once torch/torch.h is officially no longer supported for C++ extensions. + os.path.join(lib_include, 'torch', 'csrc', 'api', 'include'), +- # Some internal (old) Torch headers don't properly prefix their includes, +- # so we need to pass -Itorch/lib/include/TH as well. +- os.path.join(lib_include, 'TH'), +- os.path.join(lib_include, 'THC') + ] + if cuda and IS_HIP_EXTENSION: + paths.append(os.path.join(lib_include, 'THH')) diff --git a/recipe/patches/0017-point-include-paths-to-PREFIX-include.patch b/recipe/patches/0017-point-include-paths-to-PREFIX-include.patch new file mode 100644 index 000000000..2e89787bf --- /dev/null +++ b/recipe/patches/0017-point-include-paths-to-PREFIX-include.patch @@ -0,0 +1,33 @@ +From 7c4094fe8edfd01d72b664c91a60cc14bb5a4dbe Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Thu, 23 Jan 2025 22:58:14 +1100 +Subject: [PATCH 17/17] point include paths to $PREFIX/include + +--- + torch/utils/cpp_extension.py | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/torch/utils/cpp_extension.py b/torch/utils/cpp_extension.py +index 3f584ef5598..4210f62b6db 100644 +--- a/torch/utils/cpp_extension.py ++++ b/torch/utils/cpp_extension.py +@@ -1155,10 +1155,19 @@ def include_paths(cuda: bool = False) -> List[str]: + A list of include path strings. + """ + lib_include = os.path.join(_TORCH_PATH, 'include') ++ if os.environ.get("CONDA_BUILD", None) is not None: ++ pieces = [os.environ["PREFIX"]] + IS_WINDOWS * ["Library"] + ["include"] ++ lib_include = os.path.join(*pieces) ++ elif os.environ.get("CONDA_PREFIX", None) is not None: ++ pieces = [os.environ["CONDA_PREFIX"]] + IS_WINDOWS * ["Library"] + ["include"] ++ lib_include = os.path.join(*pieces) + paths = [ + lib_include, + # Remove this once torch/torch.h is officially no longer supported for C++ extensions. + os.path.join(lib_include, 'torch', 'csrc', 'api', 'include'), ++ # add site-packages/torch/include again (`lib_include` may have been pointing to ++ # $PREFIX/include), as some torch-internal headers are still in this directory ++ os.path.join(_TORCH_PATH, 'include'), + ] + if cuda and IS_HIP_EXTENSION: + paths.append(os.path.join(lib_include, 'THH'))