From e022f807ed796c0f99b2105f44c00d2e0b663ef0 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Wed, 3 Jun 2026 22:48:05 -0500 Subject: [PATCH 01/15] ENH: Migrate recipe to v1 format for rattler-build --- conda-forge.yml | 2 + recipe/build_output.bat | 3 + recipe/build_output.sh | 2 + recipe/conda_build_config.yaml | 5 - recipe/meta.yaml | 217 --------------------------- recipe/recipe.yaml | 259 +++++++++++++++++++++++++++++++++ 6 files changed, 266 insertions(+), 222 deletions(-) delete mode 100644 recipe/conda_build_config.yaml delete mode 100644 recipe/meta.yaml create mode 100644 recipe/recipe.yaml diff --git a/conda-forge.yml b/conda-forge.yml index b0d3e621..6e2b9a8d 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -10,7 +10,9 @@ build_platform: linux_ppc64le: linux_64 conda_build: pkg_format: '2' +conda_build_tool: rattler-build conda_forge_output_validation: true +conda_install_tool: pixi github: branch_name: main tooling_branch_name: main diff --git a/recipe/build_output.bat b/recipe/build_output.bat index 49d2a4ef..0f10d4d7 100644 --- a/recipe/build_output.bat +++ b/recipe/build_output.bat @@ -1,3 +1,6 @@ +set "CUDA_HOME=%PREFIX%\\%SUBDIR%" +set "LIB=%PREFIX%\\%SUBDIR%\\lib\\%TARGET_NAME%;%LIB%" + set DIR_NAME=%PKG_NAME:-=_% cd %DIR_NAME% if "%DIR_NAME%"=="cuda_python" ( diff --git a/recipe/build_output.sh b/recipe/build_output.sh index 0cd9a9c8..05bfef88 100644 --- a/recipe/build_output.sh +++ b/recipe/build_output.sh @@ -1,5 +1,7 @@ #!/bin/bash +export CUDA_HOME="${PREFIX}/${SUBDIR}" + DIR_NAME="$(echo $PKG_NAME | tr '-' '_')" cd $DIR_NAME if [[ ${DIR_NAME} == "cuda_python" || ${DIR_NAME} == "cuda_bindings" ]]; then diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml deleted file mode 100644 index 77a62a1d..00000000 --- a/recipe/conda_build_config.yaml +++ /dev/null @@ -1,5 +0,0 @@ -# libcufile only exists on ARM for CUDA 12.2+. We split into two ARM packages -# with/without libcufile support. -cufile_supported: - - True - - False # [aarch64] diff --git a/recipe/meta.yaml b/recipe/meta.yaml deleted file mode 100644 index e40ccedf..00000000 --- a/recipe/meta.yaml +++ /dev/null @@ -1,217 +0,0 @@ -{% set number = 0 %} -{% set version = "12.9.7" %} -{% set sha256 = "9df6ff7121e11b158730ef39350c111728c9d1a2450124f463f7f4026c89d42f" %} - -{% set is_freethreading = environ.get("is_freethreading", False) %} -{% set bindings_major_version = version.split(".")[0]|int %} -{% set bindings_minor_version = version.split(".")[1]|int %} -{% set bindings_patch_version = version.split(".")[2]|int %} -{% set target_name = "x86_64-linux" %} # [linux64] -{% set target_name = "sbsa-linux" %} # [aarch64] -{% set target_name = "x64" %} # [win64] -{% set subdir = "" %} -{% set subdir = os.sep.join(["", "targets", target_name]) %} # [linux64 or aarch64] -{% set subdir = os.sep.join(["", "Library"]) %} # [win64] - -package: - name: cuda-python-split - version: 1 - -source: - url: https://github.com/NVIDIA/cuda-python/releases/download/v{{ version }}/cuda-python-v{{ version }}.tar.gz - sha256: {{ sha256 }} - -build: - number: 0 - skip: true # [py < 39 or ppc64le or osx] - -# Have certain top-level requirements so conda-smithy can render the correct variants -requirements: - build: - - {{ compiler('c') }} - - {{ compiler('cxx') }} - - {{ stdlib('c') }} - host: - - python - -outputs: - - - name: cuda-python - version: {{ version }} - script: build_output.sh # [linux] - script: build_output.bat # [win] - build: - noarch: python - number: {{ number }} - skip: true # [not linux64] - requirements: - host: - - python {{ python_min }}.* - - pip - - setuptools - - setuptools-scm >=8 - run: - - python >={{ python_min }} - - {{ pin_subpackage('cuda-bindings', max_pin='x.x') }} - - cuda-version >=12.0,<13.0a0 # [not aarch64] - - cuda-version >=12.0,<12.2a0 # [aarch64 and not cufile_supported] - - cuda-version >=12.2,<13.0a0 # [aarch64 and cufile_supported] - test: - requires: - - python >={{ python_min }} - - numpy - imports: - - cuda.bindings - - cuda.bindings.driver - - cuda.bindings.runtime - - cuda.bindings.cufile # [linux] - - cuda.bindings.nvrtc - - cuda.bindings.nvjitlink - - cuda.bindings.nvvm - - cuda.bindings.nvml - - cuda.bindings.nvfatbin - commands: - - python -c "import importlib.metadata; importlib.metadata.version('cuda-python')" - about: - home: https://nvidia.github.io/cuda-python/ - license: LicenseRef-NVIDIA-SOFTWARE-LICENSE - license_file: cuda_python/LICENSE - license_url: https://github.com/NVIDIA/cuda-python/blob/main/LICENSE - summary: CUDA Python - description: | - CUDA Python is the home for accessing NVIDIA’s CUDA platform from Python. - doc_url: https://nvidia.github.io/cuda-python/ - dev_url: https://github.com/NVIDIA/cuda-python - - - name: cuda-bindings - version: {{ version }} - script: build_output.sh # [linux] - script: build_output.bat # [win] - build: - number: {{ number }} - script_env: - # Ensure that CUDA includes can be found by the host compiler - - CUDA_HOME={{ PREFIX ~ subdir }} - ignore_run_exports_from: - # The run-exports from these dev packages are too tight, so we ignore them. - # The cuda-python package supports CUDA Enhanced Compatibility through its - # use of dlopen, so it is compatible with other CUDA minor versions. - - cuda-nvcc-impl - - cuda-cudart-dev - - cuda-cudart-static - - cuda-nvrtc-dev - - libcufile-dev # [linux] - requirements: - build: - - {{ compiler('c') }} - - {{ compiler('cxx') }} - - {{ stdlib('c') }} - - cross-python_{{ target_platform }} # [build_platform != target_platform] - - python # [build_platform != target_platform] - - cython # [build_platform != target_platform] - host: - # cuda.bindings needs to be built with the matching major.minor headers - - cuda-version {{ bindings_major_version }}.{{ bindings_minor_version }} - - cuda-crt-dev_{{ target_platform }} - - cuda-cudart-dev - - cuda-cudart-static - - cuda-cudart - - cuda-nvcc-impl - - cuda-nvrtc - - cuda-nvrtc-dev - - cuda-profiler-api - - libcufile # [linux and cufile_supported] - - libcufile-dev # [linux] - - cython - - pip - - pyclibrary - - python - - setuptools - - setuptools-scm >=8 - run: - - python - - cuda-pathfinder >=1.5.5,<2 - - {{ pin_compatible('cuda-version', min_pin='x', max_pin='x') }} # [not aarch64] - - cuda-version >=12.0,<12.2a0 # [aarch64 and not cufile_supported] - - cuda-version >=12.2,<13.0a0 # [aarch64 and cufile_supported] - # cuda-python requires cuda-nvrtc from the same major version. We ignored - # run-exports of cuda-nvrtc-dev and instead allow a looser pinning here. - # Same for cuda-nvcc-impl. - - {{ pin_compatible('cuda-nvrtc', min_pin='x', max_pin='x') }} - - {{ pin_compatible('cuda-nvcc-impl', min_pin='x', max_pin='x') }} - - {{ pin_compatible('libcufile', min_pin='x', max_pin='x') }} # [linux and cufile_supported] - - libnvjitlink >=12.3,<13 - run_constrained: - # cuda-cudart is not a hard dependency because cuda-python statically links to - # cudart. This package is optionally dlopen'd for getting the local cudart - # version with cuda.cudart.getLocalRuntimeVersion(). We ignored run-exports - # of cuda-cudart-dev and instead allow a looser pinning here. - - {{ pin_compatible('cuda-cudart', min_pin='x', max_pin='x') }} - - {{ pin_subpackage('cuda-python', max_pin='x.x') }} - test: - requires: - - cuda-nvcc - - cuda-nvrtc-dev - - cuda-profiler-api - - cython - - pip - - numpy - files: - - test_cimport.pyx - commands: - - export C_INCLUDE_PATH="$CONDA_PREFIX/{{ subdir }}/include" # [linux] - - set "CL=%CL% /I%CONDA_PREFIX%\{{ subdir }}\include" # [win] - # workaround for https://github.com/conda-forge/setuptools-feedstock/issues/399 - - pip install setuptools - - cythonize -i -3 -Xfreethreading_compatible=True *.pyx - - python -c "import test_cimport; test_cimport.test()" - - python -c "import cuda.bindings; print(cuda.bindings.__version__)" - imports: - - cuda - - cuda.cuda - - cuda.cudart - - cuda.bindings - - cuda.bindings.driver - - cuda.bindings.runtime - - cuda.bindings.cufile # [linux] - - cuda.bindings.nvrtc - - cuda.bindings.nvjitlink - - cuda.bindings.nvvm - - cuda.bindings.nvml - - cuda.bindings.nvfatbin - about: - home: https://nvidia.github.io/cuda-python/cuda-bindings - license: LicenseRef-NVIDIA-SOFTWARE-LICENSE - license_file: cuda_bindings/LICENSE - license_url: https://github.com/NVIDIA/cuda-python/blob/main/LICENSE - summary: CUDA Python Low-level Bindings - description: | - CUDA Python provides a standard set of low-level interfaces, - providing full coverage of and access to the CUDA host APIs from Python. - doc_url: https://nvidia.github.io/cuda-python/cuda-bindings - dev_url: https://github.com/NVIDIA/cuda-python - -about: - home: https://nvidia.github.io/cuda-python/ - license: LicenseRef-NVIDIA-SOFTWARE-LICENSE - license_file: LICENSE.md - license_url: https://github.com/NVIDIA/cuda-python/blob/main/LICENSE - summary: CUDA Python - description: | - CUDA Python is the home for accessing NVIDIA's CUDA platform from Python. - doc_url: https://nvidia.github.io/cuda-python/ - dev_url: https://github.com/NVIDIA/cuda-python - -extra: - feedstock-name: cuda-python - recipe-maintainers: - - cpcloud - - bdice - - jakirkham - - leofang - - m3vaz - - mmccarty - - vyasr - - vzhurba01 - - kkraus14 - - oleksandr-pavlyk diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml new file mode 100644 index 00000000..96bd900e --- /dev/null +++ b/recipe/recipe.yaml @@ -0,0 +1,259 @@ +# Have certain top-level requirements so conda-smithy can render the correct variants +schema_version: 1 + +context: + number: 1 + version: "12.9.7" + sha256: 9df6ff7121e11b158730ef39350c111728c9d1a2450124f463f7f4026c89d42f + bindings_major_version: ${{ (version | split("."))[0] | int }} + bindings_minor_version: ${{ (version | split("."))[1] | int }} + bindings_patch_version: ${{ (version | split("."))[2] | int }} + target_name: ${{ "sbsa-linux" if aarch64 else 'x86_64-linux' if linux else "x64" if win else "" }} + subdir: ${{ "targets/" ~ target_name if aarch64 or linux else "Library\\" if win else "" }} + # libcufile only exists on ARM for CUDA 12.2+. We split into two ARM packages + # with/without libcufile support. + cufile_supported: aarch64 + +recipe: + name: cuda-python-split + version: 1 + +source: + url: https://github.com/NVIDIA/cuda-python/releases/download/v${{ version }}/cuda-python-v${{ version }}.tar.gz + sha256: ${{ sha256 }} + +build: + number: 0 + skip: match(python, "<3.10") or ppc64le or osx + +outputs: + - package: + name: cuda-python + version: ${{ version }} + build: + number: ${{ number }} + skip: not linux64 + noarch: python + # Deterministic build string so all variant.use_keys: [python] builds + # produce the same artifact filename — required for upload-time dedupe + # via hash collision (see `variant.use_keys` note below). + string: py_min_${{ python_min | replace(".", "") }}_${{ number }} + variant: + # Ensures conda-smithy splits CI jobs per Python version. Without + # this, the noarch output drops `python` from the intersection of + # used loop vars (since CFEP-25 uses `python_min`), collapsing all + # Python variants into a single serialized job. The redundant noarch + # builds dedupe on upload via hash collision (the explicit `string` + # above keeps the filename identical across variants). + use_keys: + - python + script: + env: + SUBDIR: ${{ subdir }} + TARGET_NAME: ${{ target_name }} + file: ${{ 'build_output.bat' if win else 'build_output.sh' if linux else '' }} + requirements: + host: + - python ${{ python_min }}.* + - pip + - setuptools + - setuptools-scm >=8 + run: + - python >=${{ python_min }} + - ${{ pin_subpackage('cuda-bindings', upper_bound='x.x') }} + - cuda-core >=1.0.0,<1.1.0 + - if: not aarch64 + then: cuda-version >=12.0,<13.0a0 + - if: aarch64 and not cufile_supported + then: cuda-version >=12.0,<12.2a0 + - if: aarch64 and cufile_supported + then: cuda-version >=12.2,<13.0a0 + tests: + - script: + - python -c "import importlib.metadata; importlib.metadata.version('cuda-python')" + # Imports depend on numpy + - if: linux + then: python -c "import cuda.bindings.cufile" + - python -c "import cuda.bindings.nvml" + - if: aarch64 + then: python -c "import cuda.bindings.cudla" + requirements: + run: + # Range (not pinned to python_min) so the test env can use the + # variant's Python, matching the locally-built cuda-bindings ABI. + - python >=${{ python_min }} + - numpy + - python: + imports: + - cuda.bindings + - cuda.bindings.driver + - cuda.bindings.runtime + - cuda.bindings.nvrtc + - cuda.bindings.nvjitlink + - cuda.bindings.nvvm + - cuda.bindings.nvfatbin + pip_check: false + about: + license: LicenseRef-NVIDIA-SOFTWARE-LICENSE + license_file: cuda_python/LICENSE + summary: CUDA Python + description: | + CUDA Python is the home for accessing NVIDIA’s CUDA platform from Python. + homepage: https://nvidia.github.io/cuda-python/ + repository: https://github.com/NVIDIA/cuda-python + documentation: https://nvidia.github.io/cuda-python/ + + - package: + name: cuda-bindings + version: ${{ version }} + build: + number: ${{ number }} + script: + env: + SUBDIR: ${{ subdir }} + TARGET_NAME: ${{ target_name }} + file: ${{ 'build_output.bat' if win else 'build_output.sh' if linux else '' }} + requirements: + build: + - ${{ compiler('c') }} + - ${{ compiler('cxx') }} + - ${{ stdlib('c') }} + - if: build_platform != target_platform + then: + - cross-python_${{ target_platform }} + - python + - cython + host: + # cuda.bindings needs to be built with the matching major.minor headers + - cuda-version ==${{ bindings_major_version }}.${{ bindings_minor_version }} + - cuda-crt-dev_${{ target_platform }} + - cuda-cudart-dev + - cuda-cudart-static + - cuda-cudart + - cuda-nvcc-impl + - cuda-nvrtc + - cuda-nvrtc-dev + - cuda-profiler-api + - if: linux and cufile_supported + then: + - libcufile + - if: linux + then: + - libcufile-dev + - cython + - pip + - pyclibrary + - python + - setuptools + - setuptools-scm >=8 + - cuda-pathfinder >=1.5.5,<2 + run: + - python + - cuda-pathfinder >=1.5.5,<2 + - if: not aarch64 + then: ${{ pin_compatible('cuda-version', lower_bound='x', upper_bound='x') }} + # cuda-python requires cuda-nvrtc from the same major version. We ignored + # run-exports of cuda-nvrtc-dev and instead allow a looser pinning here. + # Same for cuda-nvcc-impl. + - if: aarch64 and not cufile_supported + then: cuda-version >=12.0,<12.2a0 + - if: aarch64 and cufile_supported + then: cuda-version >=12.2,<13.0a0 + - ${{ pin_compatible('cuda-nvcc-impl', lower_bound='x', upper_bound='x') }} + - if: linux and cufile_supported + then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} + - if: aarch64 + then: libcudla >=13.0,<14.0a0 + - libnvfatbin >=13.0,<14.0a0 + - libnvjitlink >=12.3,<13 + ignore_run_exports: + from_package: + # The run-exports from these dev packages are too tight, so we ignore them. + # The cuda-python package supports CUDA Enhanced Compatibility through its + # use of dlopen, so it is compatible with other CUDA minor versions. + - cuda-nvcc-impl + - cuda-cudart-dev + - cuda-cudart-static + - cuda-nvrtc-dev + - if: linux + then: libcufile-dev + run_constraints: + # cuda-cudart is not a hard dependency because cuda-python statically links to + # cudart. This package is optionally dlopen'd for getting the local cudart + # version with cuda.cudart.getLocalRuntimeVersion(). We ignored run-exports + # of cuda-cudart-dev and instead allow a looser pinning here. + - ${{ pin_compatible('cuda-cudart', lower_bound='x', upper_bound='x') }} + tests: + - script: + - if: linux + then: export C_INCLUDE_PATH="$CONDA_PREFIX/${{ subdir }}/include" + - if: win + then: set "CL=%CL% /I%CONDA_PREFIX%\${{ subdir }}\include" + # Workaround for https://github.com/conda-forge/setuptools-feedstock/issues/399 + - pip install setuptools + - cythonize -i -3 -Xfreethreading_compatible=True *.pyx + - python -c "import test_cimport; test_cimport.test()" + - python -c "import cuda.bindings; print(cuda.bindings.__version__)" + # Imports depend on numpy + - python -c "import cuda.bindings.nvml" + - if: linux + then: python -c "import cuda.bindings.cufile" + - if: aarch64 + then: python -c "import cuda.bindings.cudla" + requirements: + run: + - cuda-nvcc + - cuda-nvrtc-dev + - cuda-profiler-api + - cython + - pip + - numpy + files: + recipe: + - test_cimport.pyx + - python: + imports: + - cuda + - cuda.cuda + - cuda.cudart + - cuda.bindings + - cuda.bindings.driver + - cuda.bindings.runtime + - cuda.bindings.nvrtc + - cuda.bindings.nvjitlink + - cuda.bindings.nvvm + - cuda.bindings.nvfatbin + pip_check: false + about: + license: LicenseRef-NVIDIA-SOFTWARE-LICENSE + license_file: cuda_bindings/LICENSE + summary: CUDA Python Low-level Bindings + description: | + CUDA Python provides a standard set of low-level interfaces, + providing full coverage of and access to the CUDA host APIs from Python. + homepage: https://nvidia.github.io/cuda-python/cuda-bindings + repository: https://github.com/NVIDIA/cuda-python + documentation: https://nvidia.github.io/cuda-python/cuda-bindings + +about: + license: LicenseRef-NVIDIA-SOFTWARE-LICENSE + license_file: LICENSE.md + summary: CUDA Python + description: | + CUDA Python is the home for accessing NVIDIA's CUDA platform from Python. + homepage: https://nvidia.github.io/cuda-python/ + repository: https://github.com/NVIDIA/cuda-python + documentation: https://nvidia.github.io/cuda-python/ + +extra: + feedstock-name: cuda-python + recipe-maintainers: + - bdice + - jakirkham + - leofang + - m3vaz + - mmccarty + - vyasr + - vzhurba01 + - kkraus14 + - oleksandr-pavlyk From fcb01551380fc06f3ca62a08b883095a57d72e7e Mon Sep 17 00:00:00 2001 From: "conda-forge-webservices[bot]" <91080706+conda-forge-webservices[bot]@users.noreply.github.com> Date: Thu, 4 Jun 2026 04:19:39 +0000 Subject: [PATCH 02/15] MNT: Re-rendered with conda-smithy 2026.5.29 and conda-forge-pinning 2026.06.03.23.09.2 --- .azure-pipelines/azure-pipelines-linux.yml | 146 ------------ .azure-pipelines/azure-pipelines-win.yml | 48 ++-- ...l => linux_64_python3.10.____cpython.yaml} | 8 - ...l => linux_64_python3.11.____cpython.yaml} | 8 - ...l => linux_64_python3.12.____cpython.yaml} | 8 - ...aml => linux_64_python3.13.____cp313.yaml} | 8 - ...aml => linux_64_python3.14.____cp314.yaml} | 8 - ...ml => linux_64_python3.14.____cp314t.yaml} | 8 - ...ethreadingfalsepython3.10.____cpython.yaml | 39 ---- ...ethreadingfalsepython3.11.____cpython.yaml | 39 ---- ...ethreadingfalsepython3.12.____cpython.yaml | 39 ---- ...reethreadingfalsepython3.13.____cp313.yaml | 39 ---- ...reethreadingfalsepython3.14.____cp314.yaml | 39 ---- ...reethreadingtruepython3.14.____cp314t.yaml | 39 ---- ...linux_aarch64_python3.10.____cpython.yaml} | 8 - ...linux_aarch64_python3.11.____cpython.yaml} | 8 - ...linux_aarch64_python3.12.____cpython.yaml} | 8 - ...> linux_aarch64_python3.13.____cp313.yaml} | 8 - ...> linux_aarch64_python3.14.____cp314.yaml} | 8 - ... linux_aarch64_python3.14.____cp314t.yaml} | 8 - ...aml => win_64_python3.10.____cpython.yaml} | 9 - ...aml => win_64_python3.11.____cpython.yaml} | 9 - ...aml => win_64_python3.12.____cpython.yaml} | 9 - ....yaml => win_64_python3.13.____cp313.yaml} | 9 - ....yaml => win_64_python3.14.____cp314.yaml} | 9 - ...yaml => win_64_python3.14.____cp314t.yaml} | 9 - .github/CODEOWNERS | 2 +- .github/workflows/conda-build.yml | 219 ++++++++++++++++++ .gitignore | 1 + .scripts/build_steps.sh | 40 ++-- .scripts/run_docker_build.sh | 33 ++- .scripts/run_win_build.bat | 59 +++-- README.md | 164 +++---------- azure-pipelines.yml | 1 - pixi.toml | 154 ++++++++++++ 35 files changed, 526 insertions(+), 725 deletions(-) delete mode 100755 .azure-pipelines/azure-pipelines-linux.yml rename .ci_support/{linux_64_is_freethreadingfalsepython3.10.____cpython.yaml => linux_64_python3.10.____cpython.yaml} (82%) rename .ci_support/{linux_64_is_freethreadingfalsepython3.11.____cpython.yaml => linux_64_python3.11.____cpython.yaml} (82%) rename .ci_support/{linux_64_is_freethreadingfalsepython3.12.____cpython.yaml => linux_64_python3.12.____cpython.yaml} (82%) rename .ci_support/{linux_64_is_freethreadingfalsepython3.13.____cp313.yaml => linux_64_python3.13.____cp313.yaml} (82%) rename .ci_support/{linux_64_is_freethreadingfalsepython3.14.____cp314.yaml => linux_64_python3.14.____cp314.yaml} (82%) rename .ci_support/{linux_64_is_freethreadingtruepython3.14.____cp314t.yaml => linux_64_python3.14.____cp314t.yaml} (82%) delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython.yaml delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython.yaml delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython.yaml delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313.yaml delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314.yaml delete mode 100644 .ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t.yaml rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython.yaml => linux_aarch64_python3.10.____cpython.yaml} (82%) rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython.yaml => linux_aarch64_python3.11.____cpython.yaml} (82%) rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython.yaml => linux_aarch64_python3.12.____cpython.yaml} (82%) rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313.yaml => linux_aarch64_python3.13.____cp313.yaml} (82%) rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314.yaml => linux_aarch64_python3.14.____cp314.yaml} (82%) rename .ci_support/{linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t.yaml => linux_aarch64_python3.14.____cp314t.yaml} (82%) rename .ci_support/{win_64_is_freethreadingfalsepython3.10.____cpython.yaml => win_64_python3.10.____cpython.yaml} (70%) rename .ci_support/{win_64_is_freethreadingfalsepython3.11.____cpython.yaml => win_64_python3.11.____cpython.yaml} (70%) rename .ci_support/{win_64_is_freethreadingfalsepython3.12.____cpython.yaml => win_64_python3.12.____cpython.yaml} (70%) rename .ci_support/{win_64_is_freethreadingfalsepython3.13.____cp313.yaml => win_64_python3.13.____cp313.yaml} (70%) rename .ci_support/{win_64_is_freethreadingfalsepython3.14.____cp314.yaml => win_64_python3.14.____cp314.yaml} (70%) rename .ci_support/{win_64_is_freethreadingtruepython3.14.____cp314t.yaml => win_64_python3.14.____cp314t.yaml} (70%) create mode 100644 .github/workflows/conda-build.yml create mode 100644 pixi.toml diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml deleted file mode 100755 index b8e38ee0..00000000 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ /dev/null @@ -1,146 +0,0 @@ -# This file was generated automatically from conda-smithy. To update this configuration, -# update the conda-forge.yml and/or the recipe/meta.yaml. -# -*- mode: yaml -*- - -jobs: -- job: linux - pool: - vmImage: ubuntu-latest - strategy: - matrix: - linux_64_is_freethreadingfalsepython3.10.____cpython: - CONFIG: linux_64_is_freethreadingfalsepython3.10.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_is_freethreadingfalsepython3.11.____cpython: - CONFIG: linux_64_is_freethreadingfalsepython3.11.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_is_freethreadingfalsepython3.12.____cpython: - CONFIG: linux_64_is_freethreadingfalsepython3.12.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_is_freethreadingfalsepython3.13.____cp313: - CONFIG: linux_64_is_freethreadingfalsepython3.13.____cp313 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_is_freethreadingfalsepython3.14.____cp314: - CONFIG: linux_64_is_freethreadingfalsepython3.14.____cp314 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_is_freethreadingtruepython3.14.____cp314t: - CONFIG: linux_64_is_freethreadingtruepython3.14.____cp314t - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t: - CONFIG: linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314 - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t: - CONFIG: linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - timeoutInMinutes: 360 - variables: {} - - steps: - - script: | - sudo mkdir -p /opt/empty_dir || true - for d in \ - /opt/ghc \ - /opt/hostedtoolcache \ - /usr/lib/jvm \ - /usr/local/.ghcup \ - /usr/local/lib/android \ - /usr/local/share/powershell \ - /usr/share/dotnet \ - /usr/share/swift \ - ; do - sudo rsync --stats -a --delete /opt/empty_dir/ $d || true - done - sudo apt-get purge -y -f firefox \ - google-chrome-stable \ - microsoft-edge-stable - sudo apt-get autoremove -y >& /dev/null - sudo apt-get autoclean -y >& /dev/null - df -h - displayName: Manage disk space - - script: | - SWAPFILE=/swapfile - # If there is already a swapfile, disable it and remove it - if swapon --show | grep -q $SWAPFILE; then - echo "Disabling existing swapfile..." - sudo swapoff $SWAPFILE || true - fi - [ -f "$SWAPFILE" ] && sudo rm -f $SWAPFILE - sudo fallocate -l 10GiB $SWAPFILE - sudo chmod 600 $SWAPFILE - sudo mkswap $SWAPFILE - sudo swapon $SWAPFILE - displayName: Create swap file - # configure qemu binfmt-misc running. This allows us to run docker containers - # embedded qemu-static - - script: | - docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes - ls /proc/sys/fs/binfmt_misc/ - condition: not(startsWith(variables['CONFIG'], 'linux_64')) - displayName: Configure binfmt_misc - - - script: | - export CI=azure - export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) - export remote_url=$(Build.Repository.Uri) - export sha=$(Build.SourceVersion) - export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME - export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) - if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then - export IS_PR_BUILD="True" - else - export IS_PR_BUILD="False" - fi - .scripts/run_docker_build.sh - displayName: Run docker build - env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) - FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) - STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index 324665f0..3c1537eb 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -8,28 +8,44 @@ jobs: vmImage: windows-2022 strategy: matrix: - win_64_is_freethreadingfalsepython3.10.____cpython: - CONFIG: win_64_is_freethreadingfalsepython3.10.____cpython + win_64_python3.10.____cpython: + CONFIG: win_64_python3.10.____cpython UPLOAD_PACKAGES: 'True' - win_64_is_freethreadingfalsepython3.11.____cpython: - CONFIG: win_64_is_freethreadingfalsepython3.11.____cpython + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge + win_64_python3.11.____cpython: + CONFIG: win_64_python3.11.____cpython UPLOAD_PACKAGES: 'True' - win_64_is_freethreadingfalsepython3.12.____cpython: - CONFIG: win_64_is_freethreadingfalsepython3.12.____cpython + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge + win_64_python3.12.____cpython: + CONFIG: win_64_python3.12.____cpython UPLOAD_PACKAGES: 'True' - win_64_is_freethreadingfalsepython3.13.____cp313: - CONFIG: win_64_is_freethreadingfalsepython3.13.____cp313 + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge + win_64_python3.13.____cp313: + CONFIG: win_64_python3.13.____cp313 UPLOAD_PACKAGES: 'True' - win_64_is_freethreadingfalsepython3.14.____cp314: - CONFIG: win_64_is_freethreadingfalsepython3.14.____cp314 + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge + win_64_python3.14.____cp314: + CONFIG: win_64_python3.14.____cp314 UPLOAD_PACKAGES: 'True' - win_64_is_freethreadingtruepython3.14.____cp314t: - CONFIG: win_64_is_freethreadingtruepython3.14.____cp314t + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge + win_64_python3.14.____cp314t: + CONFIG: win_64_python3.14.____cp314t UPLOAD_PACKAGES: 'True' + build_workspace_dir: D:\\bld\\ + store_build_artifacts: false + tools_install_dir: D:\Miniforge timeoutInMinutes: 360 variables: - CONDA_BLD_PATH: D:\\bld\\ - MINIFORGE_HOME: D:\Miniforge UPLOAD_TEMP: D:\\tmp steps: @@ -38,8 +54,8 @@ jobs: call ".scripts\run_win_build.bat" displayName: Run Windows build env: - MINIFORGE_HOME: $(MINIFORGE_HOME) - CONDA_BLD_PATH: $(CONDA_BLD_PATH) + MINIFORGE_HOME: $(tools_install_dir) + CONDA_BLD_PATH: $(build_workspace_dir) PYTHONUNBUFFERED: 1 CONFIG: $(CONFIG) CI: azure diff --git a/.ci_support/linux_64_is_freethreadingfalsepython3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingfalsepython3.10.____cpython.yaml rename to .ci_support/linux_64_python3.10.____cpython.yaml index 03d6002a..e239c51b 100644 --- a/.ci_support/linux_64_is_freethreadingfalsepython3.10.____cpython.yaml +++ b/.ci_support/linux_64_python3.10.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_64_is_freethreadingfalsepython3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingfalsepython3.11.____cpython.yaml rename to .ci_support/linux_64_python3.11.____cpython.yaml index 5e4582d2..4a7fc294 100644 --- a/.ci_support/linux_64_is_freethreadingfalsepython3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_64_is_freethreadingfalsepython3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingfalsepython3.12.____cpython.yaml rename to .ci_support/linux_64_python3.12.____cpython.yaml index b34e762a..b0efb499 100644 --- a/.ci_support/linux_64_is_freethreadingfalsepython3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_64_is_freethreadingfalsepython3.13.____cp313.yaml b/.ci_support/linux_64_python3.13.____cp313.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingfalsepython3.13.____cp313.yaml rename to .ci_support/linux_64_python3.13.____cp313.yaml index dcf83eba..d94236b3 100644 --- a/.ci_support/linux_64_is_freethreadingfalsepython3.13.____cp313.yaml +++ b/.ci_support/linux_64_python3.13.____cp313.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_64_is_freethreadingfalsepython3.14.____cp314.yaml b/.ci_support/linux_64_python3.14.____cp314.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingfalsepython3.14.____cp314.yaml rename to .ci_support/linux_64_python3.14.____cp314.yaml index e6987e12..7fc5866c 100644 --- a/.ci_support/linux_64_is_freethreadingfalsepython3.14.____cp314.yaml +++ b/.ci_support/linux_64_python3.14.____cp314.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_64_is_freethreadingtruepython3.14.____cp314t.yaml b/.ci_support/linux_64_python3.14.____cp314t.yaml similarity index 82% rename from .ci_support/linux_64_is_freethreadingtruepython3.14.____cp314t.yaml rename to .ci_support/linux_64_python3.14.____cp314t.yaml index 335276c8..82b97917 100644 --- a/.ci_support/linux_64_is_freethreadingtruepython3.14.____cp314t.yaml +++ b/.ci_support/linux_64_python3.14.____cp314t.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- true -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython.yaml deleted file mode 100644 index 5c3459d4..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython.yaml deleted file mode 100644 index c79de687..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython.yaml deleted file mode 100644 index bba161f2..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.12.* *_cpython -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313.yaml deleted file mode 100644 index dee1c31b..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.13.* *_cp313 -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314.yaml deleted file mode 100644 index 79d79b87..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.14.* *_cp314 -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t.yaml deleted file mode 100644 index 75cb959c..00000000 --- a/.ci_support/linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t.yaml +++ /dev/null @@ -1,39 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cufile_supported: -- 'False' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- true -numpy: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.14.* *_cp314t -python_min: -- '3.10' -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_python3.10.____cpython.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython.yaml rename to .ci_support/linux_aarch64_python3.10.____cpython.yaml index a0e3339c..1abd5778 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_python3.10.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_python3.11.____cpython.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython.yaml rename to .ci_support/linux_aarch64_python3.11.____cpython.yaml index c1f1ba52..5bfda903 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_python3.11.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_python3.12.____cpython.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython.yaml rename to .ci_support/linux_aarch64_python3.12.____cpython.yaml index 6a88ea0f..d5868c35 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_python3.12.____cpython.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_python3.13.____cp313.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313.yaml rename to .ci_support/linux_aarch64_python3.13.____cp313.yaml index 895accf4..8d539fa3 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_python3.13.____cp313.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_python3.14.____cp314.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314.yaml rename to .ci_support/linux_aarch64_python3.14.____cp314.yaml index 23bd022d..f3df6ff3 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_python3.14.____cp314.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_python3.14.____cp314t.yaml similarity index 82% rename from .ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t.yaml rename to .ci_support/linux_aarch64_python3.14.____cp314t.yaml index 4d224baf..613442da 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_python3.14.____cp314t.yaml @@ -10,18 +10,12 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - gxx cxx_compiler_version: - '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 -is_freethreading: -- true -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -35,5 +29,3 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingfalsepython3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingfalsepython3.10.____cpython.yaml rename to .ci_support/win_64_python3.10.____cpython.yaml index 7310cf86..e53bc4a2 100644 --- a/.ci_support/win_64_is_freethreadingfalsepython3.10.____cpython.yaml +++ b/.ci_support/win_64_python3.10.____cpython.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingfalsepython3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingfalsepython3.11.____cpython.yaml rename to .ci_support/win_64_python3.11.____cpython.yaml index dd317d16..f2cdd6a2 100644 --- a/.ci_support/win_64_is_freethreadingfalsepython3.11.____cpython.yaml +++ b/.ci_support/win_64_python3.11.____cpython.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingfalsepython3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingfalsepython3.12.____cpython.yaml rename to .ci_support/win_64_python3.12.____cpython.yaml index 1e7b7111..7ce691f4 100644 --- a/.ci_support/win_64_is_freethreadingfalsepython3.12.____cpython.yaml +++ b/.ci_support/win_64_python3.12.____cpython.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingfalsepython3.13.____cp313.yaml b/.ci_support/win_64_python3.13.____cp313.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingfalsepython3.13.____cp313.yaml rename to .ci_support/win_64_python3.13.____cp313.yaml index 09a4707e..9addad34 100644 --- a/.ci_support/win_64_is_freethreadingfalsepython3.13.____cp313.yaml +++ b/.ci_support/win_64_python3.13.____cp313.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingfalsepython3.14.____cp314.yaml b/.ci_support/win_64_python3.14.____cp314.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingfalsepython3.14.____cp314.yaml rename to .ci_support/win_64_python3.14.____cp314.yaml index f28f9e6d..74b70416 100644 --- a/.ci_support/win_64_is_freethreadingfalsepython3.14.____cp314.yaml +++ b/.ci_support/win_64_python3.14.____cp314.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- false -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.ci_support/win_64_is_freethreadingtruepython3.14.____cp314t.yaml b/.ci_support/win_64_python3.14.____cp314t.yaml similarity index 70% rename from .ci_support/win_64_is_freethreadingtruepython3.14.____cp314t.yaml rename to .ci_support/win_64_python3.14.____cp314t.yaml index 0ac3003c..ffcdac54 100644 --- a/.ci_support/win_64_is_freethreadingtruepython3.14.____cp314t.yaml +++ b/.ci_support/win_64_python3.14.____cp314t.yaml @@ -6,14 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main -cufile_supported: -- 'True' cxx_compiler: - vs2022 -is_freethreading: -- true -numpy: -- '2' pin_run_as_build: python: min_pin: x.x @@ -24,6 +18,3 @@ python_min: - '3.10' target_platform: - win-64 -zip_keys: -- - python - - is_freethreading diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b9406591..ac836bb4 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @bdice @cpcloud @jakirkham @kkraus14 @leofang @m3vaz @mmccarty @oleksandr-pavlyk @vyasr @vzhurba01 \ No newline at end of file +* @bdice @jakirkham @kkraus14 @leofang @m3vaz @mmccarty @oleksandr-pavlyk @vyasr @vzhurba01 \ No newline at end of file diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml new file mode 100644 index 00000000..fc7647e9 --- /dev/null +++ b/.github/workflows/conda-build.yml @@ -0,0 +1,219 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +name: Build conda package +on: + push: + + pull_request: + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + +jobs: + build: + name: ${{ matrix.CONFIG }} + runs-on: ${{ matrix.runs_on }} + timeout-minutes: 360 + strategy: + fail-fast: false + max-parallel: 50 + matrix: + include: + - CONFIG: linux_64_python3.10.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_64_python3.11.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_64_python3.12.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_64_python3.13.____cp313 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_64_python3.14.____cp314 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_64_python3.14.____cp314t + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.10.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.11.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.12.____cpython + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.13.____cp313 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.14.____cp314 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + - CONFIG: linux_aarch64_python3.14.____cp314t + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + tools_install_dir: ~/miniforge3 + build_workspace_dir: build_artifacts + docker_run_args: + steps: + + - name: Checkout code + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - name: Build on Linux + id: build-linux + if: matrix.os == 'ubuntu' + env: + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} + CONFIG: ${{ matrix.CONFIG }} + UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + DOCKER_IMAGE: ${{ matrix.DOCKER_IMAGE }} + CI: github_actions + CONDA_FORGE_DOCKER_RUN_ARGS: "${{ matrix.docker_run_args }}" + BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} + FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} + STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} + shell: bash + run: | + if [[ "$(uname -m)" == "x86_64" ]]; then + echo "::group::Configure binfmt_misc" + docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + fi + export flow_run_id="github_$GITHUB_RUN_ID" + export remote_url="https://github.com/$GITHUB_REPOSITORY" + export sha="$GITHUB_SHA" + export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" + export GIT_BRANCH="$(basename $GITHUB_REF)" + if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then + export IS_PR_BUILD="True" + else + export IS_PR_BUILD="False" + fi + export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" + export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" + echo "::endgroup::" + ./.scripts/run_docker_build.sh + + - name: Build on macOS + id: build-macos + if: matrix.os == 'macos' + env: + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} + CONFIG: ${{ matrix.CONFIG }} + UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + CI: github_actions + BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} + FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} + STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} + shell: bash + run: | + export flow_run_id="github_$GITHUB_RUN_ID" + export remote_url="https://github.com/$GITHUB_REPOSITORY" + export sha="$GITHUB_SHA" + export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" + export GIT_BRANCH="$(basename $GITHUB_REF)" + if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then + export IS_PR_BUILD="True" + else + export IS_PR_BUILD="False" + fi + export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" + export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" + ./.scripts/run_osx_build.sh + + - name: Build on windows + id: build-windows + if: matrix.os == 'windows' + shell: cmd + run: | + set "flow_run_id=github_%GITHUB_RUN_ID%" + set "remote_url=https://github.com/%GITHUB_REPOSITORY%" + set "sha=%GITHUB_SHA%" + call ".scripts\run_win_build.bat" + env: + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} + PYTHONUNBUFFERED: 1 + CONFIG: ${{ matrix.CONFIG }} + CI: github_actions + UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} + FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} + STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 47b5408a..86a9c55b 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ # Ignore all files and folders in root * !/conda-forge.yml +!.recipe_maintainers.json # Don't ignore any files/folders if the parent folder is 'un-ignored' # This also avoids warnings when adding an already-checked file with an ignored parent. diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index d7df163b..ce848e28 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -32,11 +32,19 @@ pkgs_dirs: solver: libmamba CONDARC -mv /opt/conda/conda-meta/history /opt/conda/conda-meta/history.$(date +%Y-%m-%d-%H-%M-%S) -echo > /opt/conda/conda-meta/history -micromamba install --root-prefix ~/.conda --prefix /opt/conda \ - --yes --override-channels --channel conda-forge --strict-channel-priority \ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +pushd "${FEEDSTOCK_ROOT}" +arch=$(uname -m) +if [[ "$arch" == "x86_64" ]]; then + arch="64" +fi +sed -i.bak -e "s/platforms = .*/platforms = [\"linux-${arch}\"]/" -e "s/# __PLATFORM_SPECIFIC_ENV__ =/docker-build-linux-$arch =/" pixi.toml +echo "Creating environment" +PIXI_CACHE_DIR=/opt/conda pixi install --environment docker-build-linux-$arch +pixi list +echo "Activating environment" +eval "$(pixi shell-hook --environment docker-build-linux-$arch)" +mv pixi.toml.bak pixi.toml +popd export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 # set up the condarc @@ -58,20 +66,16 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then fi if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then - if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" - fi - conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" - - # Drop into an interactive shell - /bin/bash + echo "rattler-build currently doesn't support debug mode" else - conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - --suppress-variables ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ - --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" + + rattler-build build --recipe "${RECIPE_ROOT}" \ + -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + ${EXTRA_CB_OPTIONS:-} \ + --target-platform "${HOST_PLATFORM}" \ + --extra-meta flow_run_id="${flow_run_id:-}" \ + --extra-meta remote_url="${remote_url:-}" \ + --extra-meta sha="${sha:-}" ( startgroup "Inspecting artifacts" ) 2> /dev/null # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index b63b5a05..10d6a2af 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -11,6 +11,8 @@ source .scripts/logging_utils.sh set -xeo pipefail +DOCKER_EXECUTABLE="${DOCKER_EXECUTABLE:-docker}" + THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" PROVIDER_DIR="$(basename "$THISDIR")" @@ -27,7 +29,7 @@ if [[ "${sha:-}" == "" ]]; then popd fi -docker info +${DOCKER_EXECUTABLE} info # In order for the conda-build process in the container to write to the mounted # volumes, we need to run with the same id as the host machine, which is @@ -35,6 +37,7 @@ docker info export HOST_USER_ID=$(id -u) # Check if docker-machine is being used (normally on OSX) and get the uid from # the VM + if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) fi @@ -76,16 +79,34 @@ if [ -z "${CI}" ]; then DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" fi -( endgroup "Configure Docker" ) 2> /dev/null +# Default volume suffix for Docker (preserve original behavior) +VOLUME_SUFFIX=",z" +# Podman-specific handling +if [ "${DOCKER_EXECUTABLE}" = "podman" ]; then + # Fix file permissions for rootless podman builds + podman unshare chown -R ${HOST_USER_ID}:${HOST_USER_ID} "${ARTIFACTS}" + podman unshare chown -R ${HOST_USER_ID}:${HOST_USER_ID} "${RECIPE_ROOT}" + + # Add SELinux label only if enforcing + if command -v getenforce &>/dev/null && [ "$(getenforce)" = "Enforcing" ]; then + VOLUME_SUFFIX=",z" + else + VOLUME_SUFFIX="" + fi +fi + +( endgroup "Configure Docker" ) 2> /dev/null ( startgroup "Start Docker" ) 2> /dev/null export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" export IS_PR_BUILD="${IS_PR_BUILD:-False}" -docker pull "${DOCKER_IMAGE}" -docker run ${DOCKER_RUN_ARGS} \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ - -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ + +${DOCKER_EXECUTABLE} pull "${DOCKER_IMAGE}" + +${DOCKER_EXECUTABLE} run ${DOCKER_RUN_ARGS} \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw${VOLUME_SUFFIX},delegated \ + -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw${VOLUME_SUFFIX},delegated \ -e CONFIG \ -e HOST_USER_ID \ -e UPLOAD_PACKAGES \ diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 2b9fd756..90effaac 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -13,36 +13,49 @@ setlocal enableextensions enabledelayedexpansion FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" -if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" +if "%MINIFORGE_HOME%"=="" ( + set "MINIFORGE_HOME=%REPO_ROOT%\.pixi\envs\default" +) else ( + set "PIXI_CACHE_DIR=%MINIFORGE_HOME%" +) :: Remove trailing backslash, if present if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" -call :start_group "Provisioning base env with micromamba" -set "MAMBA_ROOT_PREFIX=%MINIFORGE_HOME%-micromamba-%RANDOM%" -set "MICROMAMBA_VERSION=1.5.10-0" -set "MICROMAMBA_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-64" -set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" -set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" - -echo Downloading micromamba %MICROMAMBA_VERSION% -if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" -powershell -ExecutionPolicy Bypass -Command "(New-Object Net.WebClient).DownloadFile('%MICROMAMBA_URL%', '%MICROMAMBA_EXE%')" +call :start_group "Provisioning base env with pixi" +echo Installing pixi +powershell -NoProfile -ExecutionPolicy unrestricted -Command "iwr -useb https://pixi.sh/install.ps1 | iex" if !errorlevel! neq 0 exit /b !errorlevel! - -echo Creating environment -call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefix "%MINIFORGE_HOME%" ^ - --channel conda-forge ^ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +set "PATH=%USERPROFILE%\.pixi\bin;%PATH%" +echo Installing environment +if "%PIXI_CACHE_DIR%"=="%MINIFORGE_HOME%" ( + mkdir "%MINIFORGE_HOME%" + copy /Y pixi.toml "%MINIFORGE_HOME%" + pushd "%MINIFORGE_HOME%" +) else ( + pushd "%REPO_ROOT%" +) +move /y pixi.toml pixi.toml.bak +set "arch=64" +if "%PROCESSOR_ARCHITECTURE%"=="ARM64" set "arch=arm64" +powershell -NoProfile -ExecutionPolicy unrestricted -Command "(Get-Content pixi.toml.bak -Encoding UTF8) -replace 'platforms = .*', 'platforms = [''win-%arch%'']' | Out-File pixi.toml -Encoding UTF8" +:: Git on Windows needs to run post link scripts to properly set up SSL certificates +pixi config set --global run-post-link-scripts insecure +if !errorlevel! neq 0 exit /b !errorlevel! +pixi install +if !errorlevel! neq 0 exit /b !errorlevel! +pixi list +if !errorlevel! neq 0 exit /b !errorlevel! +set "ACTIVATE_PIXI=%TMP%\pixi-activate-%RANDOM%.bat" +pixi shell-hook > "%ACTIVATE_PIXI%" +if !errorlevel! neq 0 exit /b !errorlevel! +call "%ACTIVATE_PIXI%" if !errorlevel! neq 0 exit /b !errorlevel! -echo Removing %MAMBA_ROOT_PREFIX% -del /S /Q "%MAMBA_ROOT_PREFIX%" >nul -del /S /Q "%MICROMAMBA_TMPDIR%" >nul +move /y pixi.toml.bak pixi.toml +popd call :end_group call :start_group "Configuring conda" :: Activate the base conda environment -echo Activating environment -call "%MINIFORGE_HOME%\Scripts\activate.bat" :: Configure the solver set "CONDA_SOLVER=libmamba" if !errorlevel! neq 0 exit /b !errorlevel! @@ -64,14 +77,14 @@ if EXIST LICENSE.txt ( ) if NOT [%flow_run_id%] == [] ( - set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% remote_url=%remote_url% sha=%sha%" + set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% --extra-meta remote_url=%remote_url% --extra-meta sha=%sha%" ) call :end_group :: Build the recipe echo Building recipe -conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% +rattler-build.exe build --recipe "recipe" -m .ci_support\%CONFIG%.yaml %EXTRA_CB_OPTIONS% --target-platform %HOST_PLATFORM% if !errorlevel! neq 0 exit /b !errorlevel! call :start_group "Inspecting artifacts" diff --git a/README.md b/README.md index f10330be..42637139 100644 --- a/README.md +++ b/README.md @@ -7,25 +7,9 @@ Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/cuda-python-fee About cuda-python ----------------- -Home: https://nvidia.github.io/cuda-python/ - -Package license: [LicenseRef-NVIDIA-SOFTWARE-LICENSE](https://github.com/NVIDIA/cuda-python/blob/main/LICENSE) - -Summary: CUDA Python - -Development: https://github.com/NVIDIA/cuda-python - -Documentation: https://nvidia.github.io/cuda-python/ - -CUDA Python is the home for accessing NVIDIA's CUDA platform from Python. - - -About cuda-bindings -------------------- - Home: https://nvidia.github.io/cuda-python/cuda-bindings -Package license: [LicenseRef-NVIDIA-SOFTWARE-LICENSE](https://github.com/NVIDIA/cuda-python/blob/main/LICENSE) +Package license: LicenseRef-NVIDIA-SOFTWARE-LICENSE Summary: CUDA Python Low-level Bindings @@ -36,13 +20,12 @@ Documentation: https://nvidia.github.io/cuda-python/cuda-bindings CUDA Python provides a standard set of low-level interfaces, providing full coverage of and access to the CUDA host APIs from Python. - About cuda-python ----------------- Home: https://nvidia.github.io/cuda-python/ -Package license: [LicenseRef-NVIDIA-SOFTWARE-LICENSE](https://github.com/NVIDIA/cuda-python/blob/main/LICENSE) +Package license: LicenseRef-NVIDIA-SOFTWARE-LICENSE Summary: CUDA Python @@ -52,12 +35,18 @@ Documentation: https://nvidia.github.io/cuda-python/ CUDA Python is the home for accessing NVIDIA’s CUDA platform from Python. - Current build status ==================== - +
+ + + @@ -71,171 +60,87 @@ Current build status
GitHub Actions + + + +
Azure
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + @@ -369,7 +274,6 @@ Feedstock Maintainers ===================== * [@bdice](https://github.com/bdice/) -* [@cpcloud](https://github.com/cpcloud/) * [@jakirkham](https://github.com/jakirkham/) * [@kkraus14](https://github.com/kkraus14/) * [@leofang](https://github.com/leofang/) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 04a0c254..b4a7ba15 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -28,5 +28,4 @@ stages: condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true')) dependsOn: Check jobs: - - template: ./.azure-pipelines/azure-pipelines-linux.yml - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file diff --git a/pixi.toml b/pixi.toml new file mode 100644 index 00000000..c8c585a5 --- /dev/null +++ b/pixi.toml @@ -0,0 +1,154 @@ +# -*- mode: toml -*- +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +"$schema" = "https://pixi.sh/v0.59.0/schema/manifest/schema.json" + +[workspace] +name = "cuda-python-feedstock" +version = "2026.5.29" # conda-smithy version used to generate this file +description = "Pixi configuration for conda-forge/cuda-python-feedstock" +authors = ["@conda-forge/cuda-python"] +channels = ["conda-forge"] +platforms = ["linux-64", "linux-aarch64", "linux-ppc64le", "osx-64", "win-64"] +requires-pixi = ">=0.59.0" + +[dependencies] +conda-build = ">=26.3" +conda-forge-ci-setup = "4.*" +rattler-build = "*" + +[tasks.inspect-all] +cmd = "inspect_artifacts --all-packages" +description = "List contents of all packages found in rattler-build build directory." +[tasks.build] +cmd = "rattler-build build --recipe recipe" +description = "Build cuda-python-feedstock directly (without setup scripts), no particular variant specified" +[tasks."build-linux_64_python3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_64_python3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.10.____cpython" +[tasks."build-linux_64_python3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_64_python3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.11.____cpython" +[tasks."build-linux_64_python3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_64_python3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.12.____cpython" +[tasks."build-linux_64_python3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_64_python3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.13.____cp313" +[tasks."build-linux_64_python3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_64_python3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.14.____cp314" +[tasks."build-linux_64_python3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_64_python3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_64_python3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_64_python3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.14.____cp314t" +[tasks."build-linux_aarch64_python3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.10.____cpython" +[tasks."build-linux_aarch64_python3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.11.____cpython" +[tasks."build-linux_aarch64_python3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.12.____cpython" +[tasks."build-linux_aarch64_python3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.13.____cp313" +[tasks."build-linux_aarch64_python3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.14.____cp314" +[tasks."build-linux_aarch64_python3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_python3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_aarch64_python3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.14.____cp314t" +[tasks."build-win_64_python3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.10.____cpython directly (without setup scripts)" +[tasks."inspect-win_64_python3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.10.____cpython" +[tasks."build-win_64_python3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.11.____cpython directly (without setup scripts)" +[tasks."inspect-win_64_python3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.11.____cpython" +[tasks."build-win_64_python3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.12.____cpython directly (without setup scripts)" +[tasks."inspect-win_64_python3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.12.____cpython" +[tasks."build-win_64_python3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-win_64_python3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.13.____cp313" +[tasks."build-win_64_python3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-win_64_python3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.14.____cp314" +[tasks."build-win_64_python3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant win_64_python3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-win_64_python3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/win_64_python3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant win_64_python3.14.____cp314t" + +[feature.smithy.dependencies] +conda-smithy = "*" +[feature.smithy.tasks.build-locally] +cmd = "python ./build-locally.py" +description = "Build packages locally using the same setup scripts used in conda-forge's CI" +[feature.smithy.tasks.smithy] +cmd = "conda-smithy" +description = "Run conda-smithy. Pass necessary arguments." +[feature.smithy.tasks.rerender] +cmd = "conda-smithy rerender" +description = "Rerender the feedstock." +[feature.smithy.tasks.lint] +cmd = "conda-smithy lint --conda-forge recipe" +description = "Lint the feedstock recipe" + +[environments] +smithy = ["smithy"] + +# This is a copy of default, to be enabled by build_steps.sh during Docker builds +# __PLATFORM_SPECIFIC_ENV__ = [] From 4e01c0755c6fd147582131410c781ed564699340 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Thu, 4 Jun 2026 13:14:48 -0500 Subject: [PATCH 03/15] Fix libcudla and libnvfatbin runtime versions --- recipe/recipe.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 96bd900e..aeb0981f 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -163,8 +163,8 @@ outputs: - if: linux and cufile_supported then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} - if: aarch64 - then: libcudla >=13.0,<14.0a0 - - libnvfatbin >=13.0,<14.0a0 + then: libcudla >=12.0,<13.0a0 + - libnvfatbin >=12.0,<13.0a0 - libnvjitlink >=12.3,<13 ignore_run_exports: from_package: From b9dafd95efe548acef54da17a6b773cced5c624f Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Thu, 4 Jun 2026 13:40:58 -0500 Subject: [PATCH 04/15] Remove libcudla (only supports CTK >= 13.1) --- recipe/recipe.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index aeb0981f..9b28fcc4 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -162,8 +162,6 @@ outputs: - ${{ pin_compatible('cuda-nvcc-impl', lower_bound='x', upper_bound='x') }} - if: linux and cufile_supported then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} - - if: aarch64 - then: libcudla >=12.0,<13.0a0 - libnvfatbin >=12.0,<13.0a0 - libnvjitlink >=12.3,<13 ignore_run_exports: From 8b9e0c1a6913a389125794040bc9e6a30b02f228 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Thu, 4 Jun 2026 14:12:53 -0500 Subject: [PATCH 05/15] Sync build_output.bat with version in main branch --- recipe/build_output.bat | 5 ----- 1 file changed, 5 deletions(-) diff --git a/recipe/build_output.bat b/recipe/build_output.bat index 0f10d4d7..97397c39 100644 --- a/recipe/build_output.bat +++ b/recipe/build_output.bat @@ -3,11 +3,6 @@ set "LIB=%PREFIX%\\%SUBDIR%\\lib\\%TARGET_NAME%;%LIB%" set DIR_NAME=%PKG_NAME:-=_% cd %DIR_NAME% -if "%DIR_NAME%"=="cuda_python" ( - rem The upstream setup.py calls get_version() without dist_name, - rem so only the generic SETUPTOOLS_SCM_PRETEND_VERSION is honored. - set SETUPTOOLS_SCM_PRETEND_VERSION=%PKG_VERSION% -) if "%DIR_NAME%"=="cuda_bindings" ( rem The upstream setup.py calls get_version() without dist_name, rem so only the generic SETUPTOOLS_SCM_PRETEND_VERSION is honored. From 2f2170e75e7e60afc39e35f2833419516f319849 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Thu, 4 Jun 2026 14:30:58 -0500 Subject: [PATCH 06/15] Remove 'import cuda.bindings.cudla' tests --- recipe/recipe.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 9b28fcc4..f848ebd4 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -75,8 +75,6 @@ outputs: - if: linux then: python -c "import cuda.bindings.cufile" - python -c "import cuda.bindings.nvml" - - if: aarch64 - then: python -c "import cuda.bindings.cudla" requirements: run: # Range (not pinned to python_min) so the test env can use the @@ -196,8 +194,6 @@ outputs: - python -c "import cuda.bindings.nvml" - if: linux then: python -c "import cuda.bindings.cufile" - - if: aarch64 - then: python -c "import cuda.bindings.cudla" requirements: run: - cuda-nvcc From 0ae50dcf604d1fcbf9559f882ada6baa2fc3b03f Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Thu, 4 Jun 2026 14:52:30 -0500 Subject: [PATCH 07/15] Re-add compiler toolchain to test dependencies --- recipe/recipe.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index f848ebd4..8d077c75 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -196,6 +196,8 @@ outputs: then: python -c "import cuda.bindings.cufile" requirements: run: + - ${{ compiler('c') }} + - ${{ compiler('cxx') }} - cuda-nvcc - cuda-nvrtc-dev - cuda-profiler-api From 1b0ddfd32b6e33a13c5ef3f4ad29b36519fcaefb Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 11:45:14 -0500 Subject: [PATCH 08/15] MNT: Re-rendered with conda-smithy 2026.6.14 and conda-forge-pinning 2026.06.23.13.52.21 --- .azure-pipelines/azure-pipelines-win.yml | 34 ++++- .github/workflows/conda-build.yml | 160 +++++++++++++++-------- .scripts/build_steps.sh | 39 ++++-- .scripts/free_disk_space.sh | 62 +++++++++ .scripts/run_docker_build.sh | 25 +++- build-locally.py | 5 +- pixi.toml | 2 +- 7 files changed, 245 insertions(+), 82 deletions(-) create mode 100755 .scripts/free_disk_space.sh diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index 3c1537eb..a4c29f2e 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -12,36 +12,54 @@ jobs: CONFIG: win_64_python3.10.____cpython UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge win_64_python3.11.____cpython: CONFIG: win_64_python3.11.____cpython UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge win_64_python3.12.____cpython: CONFIG: win_64_python3.12.____cpython UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge win_64_python3.13.____cp313: CONFIG: win_64_python3.13.____cp313 UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge win_64_python3.14.____cp314: CONFIG: win_64_python3.14.____cp314 UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge win_64_python3.14.____cp314t: CONFIG: win_64_python3.14.____cp314t UPLOAD_PACKAGES: 'True' build_workspace_dir: D:\\bld\\ + free_disk_space: quick + pagefile_size: 0 + resize_partitions: false store_build_artifacts: false tools_install_dir: D:\Miniforge timeoutInMinutes: 360 @@ -49,21 +67,25 @@ jobs: UPLOAD_TEMP: D:\\tmp steps: - + - bash: | + .scripts/free_disk_space.sh "$(free_disk_space)" + displayName: Manage disk space + env: + OS: windows - script: | call ".scripts\run_win_build.bat" displayName: Run Windows build env: - MINIFORGE_HOME: $(tools_install_dir) + CI: azure + CONFIG: $(CONFIG) CONDA_BLD_PATH: $(build_workspace_dir) + MINIFORGE_HOME: $(tools_install_dir) PYTHONUNBUFFERED: 1 - CONFIG: $(CONFIG) - CI: azure + UPLOAD_PACKAGES: $(UPLOAD_PACKAGES) + UPLOAD_TEMP: $(UPLOAD_TEMP) flow_run_id: azure_$(Build.BuildNumber).$(System.JobAttempt) remote_url: $(Build.Repository.Uri) sha: $(Build.SourceVersion) - UPLOAD_PACKAGES: $(UPLOAD_PACKAGES) - UPLOAD_TEMP: $(UPLOAD_TEMP) BINSTAR_TOKEN: $(BINSTAR_TOKEN) FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index fc7647e9..42839af6 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -23,179 +23,221 @@ jobs: matrix: include: - CONFIG: linux_64_python3.10.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_64_python3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_64_python3.12.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_64_python3.13.____cp313 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_64_python3.14.____cp314 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_64_python3.14.____cp314t + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.10.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.12.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.13.____cp313 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.14.____cp314 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: - CONFIG: linux_aarch64_python3.14.____cp314t + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip os: ubuntu + pagefile_size: 0 + resize_partitions: False runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 tools_install_dir: ~/miniforge3 - build_workspace_dir: build_artifacts - docker_run_args: steps: - name: Checkout code uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Configure binfmt_misc + if: matrix.os == 'ubuntu' + shell: bash + run: | + if [[ "$(uname -m)" == "x86_64" ]]; then + docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + fi - name: Build on Linux id: build-linux if: matrix.os == 'ubuntu' env: - MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CI: github_actions CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} + CONDA_FORGE_DOCKER_RUN_ARGS: ${{ matrix.docker_run_args }} CONFIG: ${{ matrix.CONFIG }} - UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} DOCKER_IMAGE: ${{ matrix.DOCKER_IMAGE }} - CI: github_actions - CONDA_FORGE_DOCKER_RUN_ARGS: "${{ matrix.docker_run_args }}" + UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + RATTLER_BUILD_COLOR: always + RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true' BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} shell: bash run: | - if [[ "$(uname -m)" == "x86_64" ]]; then - echo "::group::Configure binfmt_misc" - docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes - fi + export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" + export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" + export GIT_BRANCH="$(basename $GITHUB_REF)" + export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" export flow_run_id="github_$GITHUB_RUN_ID" export remote_url="https://github.com/$GITHUB_REPOSITORY" export sha="$GITHUB_SHA" - export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" - export GIT_BRANCH="$(basename $GITHUB_REF)" if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then export IS_PR_BUILD="True" else export IS_PR_BUILD="False" fi - export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" - export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" - echo "::endgroup::" ./.scripts/run_docker_build.sh - name: Build on macOS id: build-macos if: matrix.os == 'macos' env: - MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CI: github_actions CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} CONFIG: ${{ matrix.CONFIG }} + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} - CI: github_actions + RATTLER_BUILD_COLOR: always + RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true' BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} shell: bash run: | + export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" + export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" + export GIT_BRANCH="$(basename $GITHUB_REF)" + export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" export flow_run_id="github_$GITHUB_RUN_ID" export remote_url="https://github.com/$GITHUB_REPOSITORY" export sha="$GITHUB_SHA" - export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)" - export GIT_BRANCH="$(basename $GITHUB_REF)" if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then export IS_PR_BUILD="True" else export IS_PR_BUILD="False" fi - export MINIFORGE_HOME="${MINIFORGE_HOME/#~/${HOME}}" - export CONDA_BLD_PATH="${CONDA_BLD_PATH/#~/${HOME}}" ./.scripts/run_osx_build.sh - name: Build on windows @@ -208,12 +250,14 @@ jobs: set "sha=%GITHUB_SHA%" call ".scripts\run_win_build.bat" env: - MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + CI: github_actions CONDA_BLD_PATH: ${{ matrix.build_workspace_dir }} - PYTHONUNBUFFERED: 1 CONFIG: ${{ matrix.CONFIG }} - CI: github_actions + MINIFORGE_HOME: ${{ matrix.tools_install_dir }} + PYTHONUNBUFFERED: 1 UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} + RATTLER_BUILD_COLOR: always + RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION: 'true' BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }} FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }} STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }} \ No newline at end of file diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index ce848e28..d3e3e6d5 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -66,16 +66,37 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then fi if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then - echo "rattler-build currently doesn't support debug mode" + # differences between conda-build vs. rattler-build + # - 1 step (conda debug + manually open shell) vs. 2 step (rb debug {setup, shell}) + # - recipe is positional vs. --recipe "${RECIPE_ROOT}" + # - --output-id vs. --output-name + # - --clobber-file vs. none + # - none vs. --target-platform + export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${FEEDSTOCK_ROOT}/build_artifacts}" + rattler-build debug setup \ + --recipe "${RECIPE_ROOT}" \ + -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + ${EXTRA_CB_OPTIONS:-} \ + ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \ + --target-platform "${HOST_PLATFORM}" + + rattler-build debug shell else - - rattler-build build --recipe "${RECIPE_ROOT}" \ - -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - ${EXTRA_CB_OPTIONS:-} \ - --target-platform "${HOST_PLATFORM}" \ - --extra-meta flow_run_id="${flow_run_id:-}" \ - --extra-meta remote_url="${remote_url:-}" \ - --extra-meta sha="${sha:-}" + # differences between conda-build vs. rattler-build + # - recipe is positional vs. --recipe "${RECIPE_ROOT}" + # - --suppress-variables vs. none + # - --clobber-file vs. none + # - none vs. --target-platform + # - --extra-meta a=b c=d vs. --extra-meta a=b --extra-meta c=d + + rattler-build build \ + --recipe "${RECIPE_ROOT}" \ + -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + ${EXTRA_CB_OPTIONS:-} \ + --target-platform "${HOST_PLATFORM}" \ + --extra-meta flow_run_id="${flow_run_id:-}" \ + --extra-meta remote_url="${remote_url:-}" \ + --extra-meta sha="${sha:-}" ( startgroup "Inspecting artifacts" ) 2> /dev/null # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 diff --git a/.scripts/free_disk_space.sh b/.scripts/free_disk_space.sh new file mode 100755 index 00000000..5c716a94 --- /dev/null +++ b/.scripts/free_disk_space.sh @@ -0,0 +1,62 @@ +#!/usr/bin/env bash + +set -ex + +FREE_DISK_SPACE=${1} + +if [[ ${FREE_DISK_SPACE} == skip ]]; then + exit 0 +fi + +df -h + +case ${OS} in + ubuntu) + DIRS_TO_REMOVE=( + /opt/ghc + /opt/hostedtoolcache + /usr/lib/jvm + /usr/local/.ghcup + /usr/local/lib/android + /usr/local/share/powershell + /usr/share/dotnet + /usr/share/swift + ) + + sudo rm -rf "${DIRS_TO_REMOVE[@]}" + + if type apt-get; then + BROWSERS="firefox google-chrome-stable microsoft-edge-stable" + BROWSERS_TO_REMOVE=$(dpkg --get-selections $BROWSERS 2>/dev/null | awk '{print $1}') + if [[ -n ${BROWSERS_TO_REMOVE} ]]; then + sudo apt-get remove --purge -y $BROWSERS_TO_REMOVE + fi + + sudo apt-get autoremove -y >& /dev/null + sudo apt-get autoclean -y >& /dev/null + fi + + if [[ ${FREE_DISK_SPACE} == max ]] && type docker; then + sudo docker image prune --all --force + fi + ;; + macos) + DIRS_TO_REMOVE=( + /Users/runner/Library/Android + /Users/runner/.dotnet + /Users/runner/hostedtoolcache + ) + rm -rf "${DIRS_TO_REMOVE[@]}" + ;; + windows) + DIRS_TO_REMOVE=( + C:/hostedtoolcache/windows + C:/Android + ) + + # rm is one of the fastest methods to remove files on Windows + rm -rf "${DIRS_TO_REMOVE[@]}" + ;; +esac + +df -h diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 10d6a2af..17d983f1 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -96,6 +96,14 @@ if [ "${DOCKER_EXECUTABLE}" = "podman" ]; then fi fi +# When running on GitHub Actions, mount the step summary file into the container +# and point GITHUB_STEP_SUMMARY at it so that rattler-build's GitHub integration +# can write its summary. GitHub writes the file out to the job summary after the +# step finishes. +if [[ -n "${GITHUB_STEP_SUMMARY:-}" ]]; then + DOCKER_RUN_ARGS="${DOCKER_RUN_ARGS} -v ${GITHUB_STEP_SUMMARY}:/home/conda/github_step_summary:rw${VOLUME_SUFFIX},delegated -e GITHUB_STEP_SUMMARY=/home/conda/github_step_summary" +fi + ( endgroup "Configure Docker" ) 2> /dev/null ( startgroup "Start Docker" ) 2> /dev/null @@ -107,17 +115,20 @@ ${DOCKER_EXECUTABLE} pull "${DOCKER_IMAGE}" ${DOCKER_EXECUTABLE} run ${DOCKER_RUN_ARGS} \ -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw${VOLUME_SUFFIX},delegated \ -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw${VOLUME_SUFFIX},delegated \ + -e BUILD_OUTPUT_ID \ + -e BUILD_WITH_CONDA_DEBUG \ + -e CI \ -e CONFIG \ + -e CPU_COUNT \ + -e FEEDSTOCK_NAME \ + -e GIT_BRANCH \ + -e GITHUB_ACTIONS \ -e HOST_USER_ID \ - -e UPLOAD_PACKAGES \ -e IS_PR_BUILD \ - -e GIT_BRANCH \ + -e RATTLER_BUILD_COLOR \ + -e RATTLER_BUILD_ENABLE_GITHUB_INTEGRATION \ -e UPLOAD_ON_BRANCH \ - -e CI \ - -e FEEDSTOCK_NAME \ - -e CPU_COUNT \ - -e BUILD_WITH_CONDA_DEBUG \ - -e BUILD_OUTPUT_ID \ + -e UPLOAD_PACKAGES \ -e flow_run_id \ -e remote_url \ -e sha \ diff --git a/build-locally.py b/build-locally.py index 05493e4d..3beb68cc 100755 --- a/build-locally.py +++ b/build-locally.py @@ -98,7 +98,10 @@ def main(args=None): p.add_argument( "--debug", action="store_true", - help="Setup debug environment using `conda debug`", + help=( + "Setup debug environment using `conda debug` " + "(or `rattler-build debug` for rattler-build recipes)" + ), ) p.add_argument("--output-id", help="If running debug, specify the output to setup.") diff --git a/pixi.toml b/pixi.toml index c8c585a5..11ee393c 100644 --- a/pixi.toml +++ b/pixi.toml @@ -5,7 +5,7 @@ [workspace] name = "cuda-python-feedstock" -version = "2026.5.29" # conda-smithy version used to generate this file +version = "2026.6.14" # conda-smithy version used to generate this file description = "Pixi configuration for conda-forge/cuda-python-feedstock" authors = ["@conda-forge/cuda-python"] channels = ["conda-forge"] From 66e60b6dbc434707bea4185813af2cb1b8546256 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 11:54:08 -0500 Subject: [PATCH 09/15] Fix missing linux-aarch64 support --- .../linux_64_python3.10.____cpython.yaml | 2 + .../linux_64_python3.11.____cpython.yaml | 2 + .../linux_64_python3.12.____cpython.yaml | 2 + .../linux_64_python3.13.____cp313.yaml | 2 + .../linux_64_python3.14.____cp314.yaml | 2 + .../linux_64_python3.14.____cp314t.yaml | 2 + ..._supportedFalsepython3.10.____cpython.yaml | 33 ++++++ ..._supportedFalsepython3.11.____cpython.yaml | 33 ++++++ ..._supportedFalsepython3.12.____cpython.yaml | 33 ++++++ ...le_supportedFalsepython3.13.____cp313.yaml | 33 ++++++ ...le_supportedFalsepython3.14.____cp314.yaml | 33 ++++++ ...e_supportedFalsepython3.14.____cp314t.yaml | 33 ++++++ ..._supportedTruepython3.10.____cpython.yaml} | 2 + ..._supportedTruepython3.11.____cpython.yaml} | 2 + ..._supportedTruepython3.12.____cpython.yaml} | 2 + ...le_supportedTruepython3.13.____cp313.yaml} | 2 + ...le_supportedTruepython3.14.____cp314.yaml} | 2 + ...e_supportedTruepython3.14.____cp314t.yaml} | 2 + .../win_64_python3.10.____cpython.yaml | 2 + .../win_64_python3.11.____cpython.yaml | 2 + .../win_64_python3.12.____cpython.yaml | 2 + .ci_support/win_64_python3.13.____cp313.yaml | 2 + .ci_support/win_64_python3.14.____cp314.yaml | 2 + .ci_support/win_64_python3.14.____cp314t.yaml | 2 + .github/workflows/conda-build.yml | 84 +++++++++++++- README.md | 66 +++++++++-- pixi.toml | 108 ++++++++++++------ recipe/conda_build_config.yaml | 5 + recipe/recipe.yaml | 2 +- 29 files changed, 444 insertions(+), 55 deletions(-) create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml create mode 100644 .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml rename .ci_support/{linux_aarch64_python3.10.____cpython.yaml => linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml} (94%) rename .ci_support/{linux_aarch64_python3.11.____cpython.yaml => linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml} (94%) rename .ci_support/{linux_aarch64_python3.12.____cpython.yaml => linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml} (94%) rename .ci_support/{linux_aarch64_python3.13.____cp313.yaml => linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml} (94%) rename .ci_support/{linux_aarch64_python3.14.____cp314.yaml => linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml} (94%) rename .ci_support/{linux_aarch64_python3.14.____cp314t.yaml => linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml} (94%) create mode 100644 recipe/conda_build_config.yaml diff --git a/.ci_support/linux_64_python3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml index e239c51b..fdb410a6 100644 --- a/.ci_support/linux_64_python3.10.____cpython.yaml +++ b/.ci_support/linux_64_python3.10.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml index 4a7fc294..5d67f428 100644 --- a/.ci_support/linux_64_python3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml index b0efb499..6246dedc 100644 --- a/.ci_support/linux_64_python3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.13.____cp313.yaml b/.ci_support/linux_64_python3.13.____cp313.yaml index d94236b3..c28aab6e 100644 --- a/.ci_support/linux_64_python3.13.____cp313.yaml +++ b/.ci_support/linux_64_python3.13.____cp313.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.14.____cp314.yaml b/.ci_support/linux_64_python3.14.____cp314.yaml index 7fc5866c..639251e2 100644 --- a/.ci_support/linux_64_python3.14.____cp314.yaml +++ b/.ci_support/linux_64_python3.14.____cp314.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.14.____cp314t.yaml b/.ci_support/linux_64_python3.14.____cp314t.yaml index 82b97917..4830d54b 100644 --- a/.ci_support/linux_64_python3.14.____cp314t.yaml +++ b/.ci_support/linux_64_python3.14.____cp314t.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml new file mode 100644 index 00000000..4ea66c7d --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml new file mode 100644 index 00000000..33ebde92 --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.11.* *_cpython +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml new file mode 100644 index 00000000..e9f2b3c9 --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.12.* *_cpython +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml new file mode 100644 index 00000000..facd3675 --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.13.* *_cp313 +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml new file mode 100644 index 00000000..47f37eb1 --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.14.* *_cp314 +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml new file mode 100644 index 00000000..fde3a99f --- /dev/null +++ b/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml @@ -0,0 +1,33 @@ +c_compiler: +- gcc +c_compiler_version: +- '14' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cufile_supported: +- 'False' +cxx_compiler: +- gxx +cxx_compiler_version: +- '14' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.14.* *_cp314t +python_min: +- '3.10' +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version diff --git a/.ci_support/linux_aarch64_python3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.10.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml index 1abd5778..36308e01 100644 --- a/.ci_support/linux_aarch64_python3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_python3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.11.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml index 5bfda903..4d4d675f 100644 --- a/.ci_support/linux_aarch64_python3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_python3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.12.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml index d5868c35..63729714 100644 --- a/.ci_support/linux_aarch64_python3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_python3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.13.____cp313.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml index 8d539fa3..d8e6f0fc 100644 --- a/.ci_support/linux_aarch64_python3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_python3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.14.____cp314.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml index f3df6ff3..6ead2d08 100644 --- a/.ci_support/linux_aarch64_python3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_python3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml similarity index 94% rename from .ci_support/linux_aarch64_python3.14.____cp314t.yaml rename to .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml index 613442da..cf6a4b7d 100644 --- a/.ci_support/linux_aarch64_python3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml @@ -10,6 +10,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/win_64_python3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml index e53bc4a2..7ab409fc 100644 --- a/.ci_support/win_64_python3.10.____cpython.yaml +++ b/.ci_support/win_64_python3.10.____cpython.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml index f2cdd6a2..09b35ad9 100644 --- a/.ci_support/win_64_python3.11.____cpython.yaml +++ b/.ci_support/win_64_python3.11.____cpython.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml index 7ce691f4..3d97e91e 100644 --- a/.ci_support/win_64_python3.12.____cpython.yaml +++ b/.ci_support/win_64_python3.12.____cpython.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.13.____cp313.yaml b/.ci_support/win_64_python3.13.____cp313.yaml index 9addad34..1521d774 100644 --- a/.ci_support/win_64_python3.13.____cp313.yaml +++ b/.ci_support/win_64_python3.13.____cp313.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.14.____cp314.yaml b/.ci_support/win_64_python3.14.____cp314.yaml index 74b70416..adf7e3d6 100644 --- a/.ci_support/win_64_python3.14.____cp314.yaml +++ b/.ci_support/win_64_python3.14.____cp314.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.14.____cp314t.yaml b/.ci_support/win_64_python3.14.____cp314t.yaml index ffcdac54..8573750f 100644 --- a/.ci_support/win_64_python3.14.____cp314t.yaml +++ b/.ci_support/win_64_python3.14.____cp314t.yaml @@ -6,6 +6,8 @@ channel_sources: - conda-forge channel_targets: - conda-forge main +cufile_supported: +- 'True' cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 42839af6..11e9fa43 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -94,7 +94,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.10.____cpython + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.10.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -106,7 +106,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.11.____cpython + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.11.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -118,7 +118,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.12.____cpython + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.12.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -130,7 +130,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.13.____cp313 + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.13.____cp313 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -142,7 +142,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.14.____cp314 + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.14.____cp314 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -154,7 +154,79 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_python3.14.____cp314t + - CONFIG: linux_aarch64_cufile_supportedFalsepython3.14.____cp314t + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.10.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.11.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.12.____cpython + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.13.____cp313 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.14.____cp314 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + STORE_BUILD_ARTIFACTS: False + UPLOAD_PACKAGES: True + build_workspace_dir: build_artifacts + docker_run_args: + free_disk_space: skip + os: ubuntu + pagefile_size: 0 + resize_partitions: False + runs_on: ['ubuntu-latest'] + tools_install_dir: ~/miniforge3 + - CONFIG: linux_aarch64_cufile_supportedTruepython3.14.____cp314t DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True diff --git a/README.md b/README.md index 42637139..dc838e78 100644 --- a/README.md +++ b/README.md @@ -60,45 +60,87 @@ Current build status
VariantStatus
linux_64_is_freethreadingfalsepython3.10.____cpython - - variant - -
linux_64_is_freethreadingfalsepython3.11.____cpython - - variant - -
linux_64_is_freethreadingfalsepython3.12.____cpython - - variant - -
linux_64_is_freethreadingfalsepython3.13.____cp313 - - variant - -
linux_64_is_freethreadingfalsepython3.14.____cp314 - - variant - -
linux_64_is_freethreadingtruepython3.14.____cp314t - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.10.____cpython - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.11.____cpython - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.12.____cpython - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.13.____cp313 - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingfalsepython3.14.____cp314 - - variant - -
linux_aarch64_cufile_supportedFalseis_freethreadingtruepython3.14.____cp314t - - variant - -
linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.10.____cpythonlinux_aarch64_python3.10.____cpython - variant + variant
linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.11.____cpythonlinux_aarch64_python3.11.____cpython - variant + variant
linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.12.____cpythonlinux_aarch64_python3.12.____cpython - variant + variant
linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.13.____cp313linux_aarch64_python3.13.____cp313 - variant + variant
linux_aarch64_cufile_supportedTrueis_freethreadingfalsepython3.14.____cp314linux_aarch64_python3.14.____cp314 - variant + variant
linux_aarch64_cufile_supportedTrueis_freethreadingtruepython3.14.____cp314tlinux_aarch64_python3.14.____cp314t - variant + variant
win_64_is_freethreadingfalsepython3.10.____cpythonwin_64_python3.10.____cpython - variant + variant
win_64_is_freethreadingfalsepython3.11.____cpythonwin_64_python3.11.____cpython - variant + variant
win_64_is_freethreadingfalsepython3.12.____cpythonwin_64_python3.12.____cpython - variant + variant
win_64_is_freethreadingfalsepython3.13.____cp313win_64_python3.13.____cp313 - variant + variant
win_64_is_freethreadingfalsepython3.14.____cp314win_64_python3.14.____cp314 - variant + variant
win_64_is_freethreadingtruepython3.14.____cp314twin_64_python3.14.____cp314t - variant + variant
- + - + - + - + - + - + + + + + + + + + + + + + + + + + + + diff --git a/pixi.toml b/pixi.toml index 11ee393c..2283f8ed 100644 --- a/pixi.toml +++ b/pixi.toml @@ -59,42 +59,78 @@ description = "Build cuda-python-feedstock with variant linux_64_python3.14.____ [tasks."inspect-linux_64_python3.14.____cp314t"] cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.14.____cp314t.yaml" description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.14.____cp314t" -[tasks."build-linux_aarch64_python3.10.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.10.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.10.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.10.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.10.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.10.____cpython" -[tasks."build-linux_aarch64_python3.11.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.11.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.11.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.11.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.11.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.11.____cpython" -[tasks."build-linux_aarch64_python3.12.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.12.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.12.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.12.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.12.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.12.____cpython" -[tasks."build-linux_aarch64_python3.13.____cp313"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.13.____cp313.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.13.____cp313 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.13.____cp313"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.13.____cp313.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.13.____cp313" -[tasks."build-linux_aarch64_python3.14.____cp314"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.14.____cp314.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.14.____cp314 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.14.____cp314"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.14.____cp314.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.14.____cp314" -[tasks."build-linux_aarch64_python3.14.____cp314t"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_python3.14.____cp314t.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_python3.14.____cp314t directly (without setup scripts)" -[tasks."inspect-linux_aarch64_python3.14.____cp314t"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_python3.14.____cp314t.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_python3.14.____cp314t" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.10.____cpython" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.11.____cpython" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.12.____cpython" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.13.____cp313" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314" +[tasks."build-linux_aarch64_cufile_supportedFalsepython3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314t" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.10.____cpython" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.11.____cpython" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.12.____cpython" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.13.____cp313" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.14.____cp314" +[tasks."build-linux_aarch64_cufile_supportedTruepython3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.14.____cp314t" [tasks."build-win_64_python3.10.____cpython"] cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.10.____cpython.yaml" description = "Build cuda-python-feedstock with variant win_64_python3.10.____cpython directly (without setup scripts)" diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml new file mode 100644 index 00000000..77a62a1d --- /dev/null +++ b/recipe/conda_build_config.yaml @@ -0,0 +1,5 @@ +# libcufile only exists on ARM for CUDA 12.2+. We split into two ARM packages +# with/without libcufile support. +cufile_supported: + - True + - False # [aarch64] diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 8d077c75..8f49604c 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -12,7 +12,7 @@ context: subdir: ${{ "targets/" ~ target_name if aarch64 or linux else "Library\\" if win else "" }} # libcufile only exists on ARM for CUDA 12.2+. We split into two ARM packages # with/without libcufile support. - cufile_supported: aarch64 + cufile_supported: ${{ cufile_supported }} recipe: name: cuda-python-split From 271305020e0063b2b80fbdcdb06cc2403b68d6a0 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 13:43:32 -0500 Subject: [PATCH 10/15] Treat cufile_supported variable as actual boolean --- .../linux_64_python3.10.____cpython.yaml | 2 +- .../linux_64_python3.11.____cpython.yaml | 2 +- .../linux_64_python3.12.____cpython.yaml | 2 +- .../linux_64_python3.13.____cp313.yaml | 2 +- .../linux_64_python3.14.____cp314.yaml | 2 +- .../linux_64_python3.14.____cp314t.yaml | 2 +- ...supportedfalsepython3.10.____cpython.yaml} | 2 +- ...supportedfalsepython3.11.____cpython.yaml} | 2 +- ...supportedfalsepython3.12.____cpython.yaml} | 2 +- ...e_supportedfalsepython3.13.____cp313.yaml} | 2 +- ...e_supportedfalsepython3.14.____cp314.yaml} | 2 +- ..._supportedfalsepython3.14.____cp314t.yaml} | 2 +- ..._supportedtruepython3.10.____cpython.yaml} | 2 +- ..._supportedtruepython3.11.____cpython.yaml} | 2 +- ..._supportedtruepython3.12.____cpython.yaml} | 2 +- ...le_supportedtruepython3.13.____cp313.yaml} | 2 +- ...le_supportedtruepython3.14.____cp314.yaml} | 2 +- ...e_supportedtruepython3.14.____cp314t.yaml} | 2 +- .../win_64_python3.10.____cpython.yaml | 2 +- .../win_64_python3.11.____cpython.yaml | 2 +- .../win_64_python3.12.____cpython.yaml | 2 +- .ci_support/win_64_python3.13.____cp313.yaml | 2 +- .ci_support/win_64_python3.14.____cp314.yaml | 2 +- .ci_support/win_64_python3.14.____cp314t.yaml | 2 +- .github/workflows/conda-build.yml | 24 +-- README.md | 48 +++--- pixi.toml | 144 +++++++++--------- recipe/conda_build_config.yaml | 4 +- 28 files changed, 134 insertions(+), 134 deletions(-) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml => linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml => linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml => linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml => linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml => linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml => linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml} (98%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml => linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml} (97%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml => linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml} (97%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml => linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml} (97%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml => linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml} (97%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml => linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml} (97%) rename .ci_support/{linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml => linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml} (97%) diff --git a/.ci_support/linux_64_python3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml index fdb410a6..5735c1eb 100644 --- a/.ci_support/linux_64_python3.10.____cpython.yaml +++ b/.ci_support/linux_64_python3.10.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml index 5d67f428..1d3881a9 100644 --- a/.ci_support/linux_64_python3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml index 6246dedc..b52d4751 100644 --- a/.ci_support/linux_64_python3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.13.____cp313.yaml b/.ci_support/linux_64_python3.13.____cp313.yaml index c28aab6e..0e68c605 100644 --- a/.ci_support/linux_64_python3.13.____cp313.yaml +++ b/.ci_support/linux_64_python3.13.____cp313.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.14.____cp314.yaml b/.ci_support/linux_64_python3.14.____cp314.yaml index 639251e2..eabc9035 100644 --- a/.ci_support/linux_64_python3.14.____cp314.yaml +++ b/.ci_support/linux_64_python3.14.____cp314.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_64_python3.14.____cp314t.yaml b/.ci_support/linux_64_python3.14.____cp314t.yaml index 4830d54b..c8554700 100644 --- a/.ci_support/linux_64_python3.14.____cp314t.yaml +++ b/.ci_support/linux_64_python3.14.____cp314t.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml index 36308e01..28f5a94a 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml index 4d4d675f..d2dec9b1 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml index 63729714..cf1b3e95 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml index d8e6f0fc..d06f88be 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml index 6ead2d08..eaa4839e 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml similarity index 98% rename from .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml rename to .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml index cf6a4b7d..6b3684a4 100644 --- a/.ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- false cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml index 4ea66c7d..4c85ec8c 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml index 33ebde92..5693c49a 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml index e9f2b3c9..44ef8afc 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml index facd3675..9afb2385 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml index 47f37eb1..78fef3c9 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml similarity index 97% rename from .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml rename to .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml index fde3a99f..b8fc2ac8 100644 --- a/.ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml @@ -11,7 +11,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'False' +- true cxx_compiler: - gxx cxx_compiler_version: diff --git a/.ci_support/win_64_python3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml index 7ab409fc..8e7c968f 100644 --- a/.ci_support/win_64_python3.10.____cpython.yaml +++ b/.ci_support/win_64_python3.10.____cpython.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml index 09b35ad9..89185c9b 100644 --- a/.ci_support/win_64_python3.11.____cpython.yaml +++ b/.ci_support/win_64_python3.11.____cpython.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml index 3d97e91e..6fd8561c 100644 --- a/.ci_support/win_64_python3.12.____cpython.yaml +++ b/.ci_support/win_64_python3.12.____cpython.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.13.____cp313.yaml b/.ci_support/win_64_python3.13.____cp313.yaml index 1521d774..c0894b17 100644 --- a/.ci_support/win_64_python3.13.____cp313.yaml +++ b/.ci_support/win_64_python3.13.____cp313.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.14.____cp314.yaml b/.ci_support/win_64_python3.14.____cp314.yaml index adf7e3d6..c8b1b67e 100644 --- a/.ci_support/win_64_python3.14.____cp314.yaml +++ b/.ci_support/win_64_python3.14.____cp314.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.ci_support/win_64_python3.14.____cp314t.yaml b/.ci_support/win_64_python3.14.____cp314t.yaml index 8573750f..822bf92b 100644 --- a/.ci_support/win_64_python3.14.____cp314t.yaml +++ b/.ci_support/win_64_python3.14.____cp314t.yaml @@ -7,7 +7,7 @@ channel_sources: channel_targets: - conda-forge main cufile_supported: -- 'True' +- true cxx_compiler: - vs2022 pin_run_as_build: diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 11e9fa43..342faf53 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -94,7 +94,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.10.____cpython + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.10.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -106,7 +106,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.11.____cpython + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.11.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -118,7 +118,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.12.____cpython + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.12.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -130,7 +130,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.13.____cp313 + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.13.____cp313 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -142,7 +142,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.14.____cp314 + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.14.____cp314 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -154,7 +154,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedFalsepython3.14.____cp314t + - CONFIG: linux_aarch64_cufile_supportedfalsepython3.14.____cp314t DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -166,7 +166,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.10.____cpython + - CONFIG: linux_aarch64_cufile_supportedtruepython3.10.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -178,7 +178,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.11.____cpython + - CONFIG: linux_aarch64_cufile_supportedtruepython3.11.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -190,7 +190,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.12.____cpython + - CONFIG: linux_aarch64_cufile_supportedtruepython3.12.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -202,7 +202,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.13.____cp313 + - CONFIG: linux_aarch64_cufile_supportedtruepython3.13.____cp313 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -214,7 +214,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.14.____cp314 + - CONFIG: linux_aarch64_cufile_supportedtruepython3.14.____cp314 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -226,7 +226,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_cufile_supportedTruepython3.14.____cp314t + - CONFIG: linux_aarch64_cufile_supportedtruepython3.14.____cp314t DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True diff --git a/README.md b/README.md index dc838e78..c4bf1e1f 100644 --- a/README.md +++ b/README.md @@ -60,87 +60,87 @@ Current build status
VariantStatus
linux_aarch64_python3.10.____cpythonlinux_aarch64_cufile_supportedFalsepython3.10.____cpython - variant + variant
linux_aarch64_python3.11.____cpythonlinux_aarch64_cufile_supportedFalsepython3.11.____cpython - variant + variant
linux_aarch64_python3.12.____cpythonlinux_aarch64_cufile_supportedFalsepython3.12.____cpython - variant + variant
linux_aarch64_python3.13.____cp313linux_aarch64_cufile_supportedFalsepython3.13.____cp313 - variant + variant
linux_aarch64_python3.14.____cp314linux_aarch64_cufile_supportedFalsepython3.14.____cp314 - variant + variant
linux_aarch64_python3.14.____cp314tlinux_aarch64_cufile_supportedFalsepython3.14.____cp314t - variant + variant + +
linux_aarch64_cufile_supportedTruepython3.10.____cpython + + variant + +
linux_aarch64_cufile_supportedTruepython3.11.____cpython + + variant + +
linux_aarch64_cufile_supportedTruepython3.12.____cpython + + variant + +
linux_aarch64_cufile_supportedTruepython3.13.____cp313 + + variant + +
linux_aarch64_cufile_supportedTruepython3.14.____cp314 + + variant + +
linux_aarch64_cufile_supportedTruepython3.14.____cp314t + + variant
- + - + - + - + - + - + - + - + - + - + - + - + diff --git a/pixi.toml b/pixi.toml index 2283f8ed..2c79793e 100644 --- a/pixi.toml +++ b/pixi.toml @@ -59,78 +59,78 @@ description = "Build cuda-python-feedstock with variant linux_64_python3.14.____ [tasks."inspect-linux_64_python3.14.____cp314t"] cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_64_python3.14.____cp314t.yaml" description = "List contents of cuda-python-feedstock packages built for variant linux_64_python3.14.____cp314t" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.10.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.10.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.10.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.10.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.10.____cpython" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.11.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.11.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.11.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.11.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.11.____cpython" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.12.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.12.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.12.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.12.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.12.____cpython" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.13.____cp313"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.13.____cp313 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.13.____cp313"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.13.____cp313.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.13.____cp313" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.14.____cp314"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.14.____cp314"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314" -[tasks."build-linux_aarch64_cufile_supportedFalsepython3.14.____cp314t"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314t directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedFalsepython3.14.____cp314t"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedFalsepython3.14.____cp314t.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedFalsepython3.14.____cp314t" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.10.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.10.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.10.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.10.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.10.____cpython" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.11.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.11.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.11.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.11.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.11.____cpython" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.12.____cpython"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.12.____cpython directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.12.____cpython"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.12.____cpython.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.12.____cpython" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.13.____cp313"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.13.____cp313 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.13.____cp313"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.13.____cp313.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.13.____cp313" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.14.____cp314"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.14.____cp314 directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.14.____cp314"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.14.____cp314" -[tasks."build-linux_aarch64_cufile_supportedTruepython3.14.____cp314t"] -cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml" -description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedTruepython3.14.____cp314t directly (without setup scripts)" -[tasks."inspect-linux_aarch64_cufile_supportedTruepython3.14.____cp314t"] -cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedTruepython3.14.____cp314t.yaml" -description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedTruepython3.14.____cp314t" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.10.____cpython" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.11.____cpython" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.12.____cpython" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.13.____cp313" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.14.____cp314" +[tasks."build-linux_aarch64_cufile_supportedfalsepython3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedfalsepython3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedfalsepython3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedfalsepython3.14.____cp314t" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.10.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.10.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.10.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.10.____cpython" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.11.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.11.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.11.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.11.____cpython" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.12.____cpython"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.12.____cpython directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.12.____cpython"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.12.____cpython" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.13.____cp313"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.13.____cp313 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.13.____cp313"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.13.____cp313" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.14.____cp314"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.14.____cp314 directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.14.____cp314"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.14.____cp314" +[tasks."build-linux_aarch64_cufile_supportedtruepython3.14.____cp314t"] +cmd = "rattler-build build --recipe recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml" +description = "Build cuda-python-feedstock with variant linux_aarch64_cufile_supportedtruepython3.14.____cp314t directly (without setup scripts)" +[tasks."inspect-linux_aarch64_cufile_supportedtruepython3.14.____cp314t"] +cmd = "inspect_artifacts --recipe-dir recipe -m .ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml" +description = "List contents of cuda-python-feedstock packages built for variant linux_aarch64_cufile_supportedtruepython3.14.____cp314t" [tasks."build-win_64_python3.10.____cpython"] cmd = "rattler-build build --recipe recipe -m .ci_support/win_64_python3.10.____cpython.yaml" description = "Build cuda-python-feedstock with variant win_64_python3.10.____cpython directly (without setup scripts)" diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 77a62a1d..417dd6e8 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -1,5 +1,5 @@ # libcufile only exists on ARM for CUDA 12.2+. We split into two ARM packages # with/without libcufile support. cufile_supported: - - True - - False # [aarch64] + - true + - false # [aarch64] From e93ed2c3d4f22f6db046553b312b1fc6713693cf Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 16:28:09 -0500 Subject: [PATCH 11/15] Downgrade gcc_linux-aarch64 for older CUDA 12.x compatibility --- ..._aarch64_cufile_supportedfalsepython3.10.____cpython.yaml | 4 ++-- ..._aarch64_cufile_supportedfalsepython3.11.____cpython.yaml | 4 ++-- ..._aarch64_cufile_supportedfalsepython3.12.____cpython.yaml | 4 ++-- ...ux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml | 4 ++-- ...ux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml | 4 ++-- ...x_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.10.____cpython.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.11.____cpython.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.12.____cpython.yaml | 4 ++-- ...nux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml | 4 ++-- ...nux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml | 4 ++-- ...ux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml | 4 ++-- recipe/conda_build_config.yaml | 5 +++++ recipe/recipe.yaml | 3 ++- 14 files changed, 31 insertions(+), 25 deletions(-) diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml index 28f5a94a..51eb7397 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml index d2dec9b1..cb94f968 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml index cf1b3e95..f6bef663 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml index d06f88be..ec54d10d 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml index eaa4839e..17d2dfcf 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml index 6b3684a4..e243ea41 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml index 4c85ec8c..7a6d29e9 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml index 5693c49a..f78d1052 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml index 44ef8afc..ce2c4847 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml index 9afb2385..86eb620e 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml index 78fef3c9..df73c3e1 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml index b8fc2ac8..895f9ca0 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '14' +- '12' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '14' +- '12' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 417dd6e8..8b385c7f 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -3,3 +3,8 @@ cufile_supported: - true - false # [aarch64] +# Allows building cuda-python using cuda-version >=12.0,<12.2a0 +c_compiler_version: # [aarch64 and not cufile_supported] + - 12 # [aarch64 and not cufile_supported] +cxx_compiler_version: # [aarch64 and not cufile_supported] + - 12 # [aarch64 and not cufile_supported] \ No newline at end of file diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 8f49604c..40263c0c 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -160,7 +160,8 @@ outputs: - ${{ pin_compatible('cuda-nvcc-impl', lower_bound='x', upper_bound='x') }} - if: linux and cufile_supported then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} - - libnvfatbin >=12.0,<13.0a0 + - if: not aarch64 or cufile_supported + then: libnvfatbin >=12.0,<13.0a0 - libnvjitlink >=12.3,<13 ignore_run_exports: from_package: From 3e83137bdd3d231af29a4c2d0090ee90c57e83d4 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 22:14:40 -0500 Subject: [PATCH 12/15] Revert "Downgrade gcc_linux-aarch64 for older CUDA 12.x compatibility" This reverts commit e93ed2c3d4f22f6db046553b312b1fc6713693cf. --- ..._aarch64_cufile_supportedfalsepython3.10.____cpython.yaml | 4 ++-- ..._aarch64_cufile_supportedfalsepython3.11.____cpython.yaml | 4 ++-- ..._aarch64_cufile_supportedfalsepython3.12.____cpython.yaml | 4 ++-- ...ux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml | 4 ++-- ...ux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml | 4 ++-- ...x_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.10.____cpython.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.11.____cpython.yaml | 4 ++-- ...x_aarch64_cufile_supportedtruepython3.12.____cpython.yaml | 4 ++-- ...nux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml | 4 ++-- ...nux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml | 4 ++-- ...ux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml | 4 ++-- recipe/conda_build_config.yaml | 5 ----- recipe/recipe.yaml | 3 +-- 14 files changed, 25 insertions(+), 31 deletions(-) diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml index 51eb7397..28f5a94a 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.10.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml index cb94f968..d2dec9b1 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.11.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml index f6bef663..cf1b3e95 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.12.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml index ec54d10d..d06f88be 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.13.____cp313.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml index 17d2dfcf..eaa4839e 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml index e243ea41..6b3684a4 100644 --- a/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedfalsepython3.14.____cp314t.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml index 7a6d29e9..4c85ec8c 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.10.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml index f78d1052..5693c49a 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.11.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml index ce2c4847..44ef8afc 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.12.____cpython.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml index 86eb620e..9afb2385 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.13.____cp313.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml index df73c3e1..78fef3c9 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml index 895f9ca0..b8fc2ac8 100644 --- a/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml +++ b/.ci_support/linux_aarch64_cufile_supportedtruepython3.14.____cp314t.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '12' +- '14' c_stdlib: - sysroot c_stdlib_version: @@ -15,7 +15,7 @@ cufile_supported: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '14' docker_image: - quay.io/condaforge/linux-anvil-x86_64:alma9 pin_run_as_build: diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 8b385c7f..417dd6e8 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -3,8 +3,3 @@ cufile_supported: - true - false # [aarch64] -# Allows building cuda-python using cuda-version >=12.0,<12.2a0 -c_compiler_version: # [aarch64 and not cufile_supported] - - 12 # [aarch64 and not cufile_supported] -cxx_compiler_version: # [aarch64 and not cufile_supported] - - 12 # [aarch64 and not cufile_supported] \ No newline at end of file diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 40263c0c..8f49604c 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -160,8 +160,7 @@ outputs: - ${{ pin_compatible('cuda-nvcc-impl', lower_bound='x', upper_bound='x') }} - if: linux and cufile_supported then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} - - if: not aarch64 or cufile_supported - then: libnvfatbin >=12.0,<13.0a0 + - libnvfatbin >=12.0,<13.0a0 - libnvjitlink >=12.3,<13 ignore_run_exports: from_package: From dffd2069378f132a14922823ca0ba979fd80fa1e Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 22:16:02 -0500 Subject: [PATCH 13/15] Remove compiler-toolchain from test-time dependencies --- recipe/recipe.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 8f49604c..4d846185 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -196,8 +196,6 @@ outputs: then: python -c "import cuda.bindings.cufile" requirements: run: - - ${{ compiler('c') }} - - ${{ compiler('cxx') }} - cuda-nvcc - cuda-nvrtc-dev - cuda-profiler-api From 155e9937a9311057264626711dd342f8b43455d5 Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 22:37:20 -0500 Subject: [PATCH 14/15] Make libnvfatbin runtime dep only when not aarch64 or cufile_supported --- recipe/recipe.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 4d846185..fb96b95d 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -160,7 +160,8 @@ outputs: - ${{ pin_compatible('cuda-nvcc-impl', lower_bound='x', upper_bound='x') }} - if: linux and cufile_supported then: ${{ pin_compatible('libcufile', lower_bound='x', upper_bound='x') }} - - libnvfatbin >=12.0,<13.0a0 + - if: not aarch64 or cufile_supported + then: libnvfatbin >=12.0,<13.0a0 - libnvjitlink >=12.3,<13 ignore_run_exports: from_package: From fd3715cb80852b2963b6b0d266fb669c7a1ef4aa Mon Sep 17 00:00:00 2001 From: Andres Guzman-Ballen Date: Tue, 23 Jun 2026 22:43:23 -0500 Subject: [PATCH 15/15] Re-add compiler-toolchain as test-time dependency for Windows only --- recipe/recipe.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index fb96b95d..7068d0f6 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -197,6 +197,10 @@ outputs: then: python -c "import cuda.bindings.cufile" requirements: run: + - if: win + then: + - ${{ compiler('c') }} + - ${{ compiler('cxx') }} - cuda-nvcc - cuda-nvrtc-dev - cuda-profiler-api
VariantStatus
linux_aarch64_cufile_supportedFalsepython3.10.____cpythonlinux_aarch64_cufile_supportedfalsepython3.10.____cpython - variant + variant
linux_aarch64_cufile_supportedFalsepython3.11.____cpythonlinux_aarch64_cufile_supportedfalsepython3.11.____cpython - variant + variant
linux_aarch64_cufile_supportedFalsepython3.12.____cpythonlinux_aarch64_cufile_supportedfalsepython3.12.____cpython - variant + variant
linux_aarch64_cufile_supportedFalsepython3.13.____cp313linux_aarch64_cufile_supportedfalsepython3.13.____cp313 - variant + variant
linux_aarch64_cufile_supportedFalsepython3.14.____cp314linux_aarch64_cufile_supportedfalsepython3.14.____cp314 - variant + variant
linux_aarch64_cufile_supportedFalsepython3.14.____cp314tlinux_aarch64_cufile_supportedfalsepython3.14.____cp314t - variant + variant
linux_aarch64_cufile_supportedTruepython3.10.____cpythonlinux_aarch64_cufile_supportedtruepython3.10.____cpython - variant + variant
linux_aarch64_cufile_supportedTruepython3.11.____cpythonlinux_aarch64_cufile_supportedtruepython3.11.____cpython - variant + variant
linux_aarch64_cufile_supportedTruepython3.12.____cpythonlinux_aarch64_cufile_supportedtruepython3.12.____cpython - variant + variant
linux_aarch64_cufile_supportedTruepython3.13.____cp313linux_aarch64_cufile_supportedtruepython3.13.____cp313 - variant + variant
linux_aarch64_cufile_supportedTruepython3.14.____cp314linux_aarch64_cufile_supportedtruepython3.14.____cp314 - variant + variant
linux_aarch64_cufile_supportedTruepython3.14.____cp314tlinux_aarch64_cufile_supportedtruepython3.14.____cp314t - variant + variant