diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index 412d865..f649ffc 100644 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -5,109 +5,109 @@ jobs: - job: osx pool: - vmImage: $(VMIMAGE) + vmImage: $(vm_image) strategy: matrix: - osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315: - CONFIG: osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315 + osx_64_python3.11.____cpython: + CONFIG: osx_64_python3.11.____cpython UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_64_channel_sourcesconda-forgepython3.11.____cpython: - CONFIG: osx_64_channel_sourcesconda-forgepython3.11.____cpython + vm_image: macOS-15 + osx_64_python3.12.____cpython: + CONFIG: osx_64_python3.12.____cpython UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_64_channel_sourcesconda-forgepython3.12.____cpython: - CONFIG: osx_64_channel_sourcesconda-forgepython3.12.____cpython + vm_image: macOS-15 + osx_64_python3.13.____cp313: + CONFIG: osx_64_python3.13.____cp313 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_64_channel_sourcesconda-forgepython3.13.____cp313: - CONFIG: osx_64_channel_sourcesconda-forgepython3.13.____cp313 + vm_image: macOS-15 + osx_64_python3.14.____cp314: + CONFIG: osx_64_python3.14.____cp314 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_64_channel_sourcesconda-forgepython3.14.____cp314: - CONFIG: osx_64_channel_sourcesconda-forgepython3.14.____cp314 + vm_image: macOS-15 + osx_64_python3.15.____cp315: + CONFIG: osx_64_python3.15.____cp315 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315: - CONFIG: osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315 + vm_image: macOS-15 + osx_arm64_python3.11.____cpython: + CONFIG: osx_arm64_python3.11.____cpython UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15-arm64 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_arm64_channel_sourcesconda-forgepython3.11.____cpython: - CONFIG: osx_arm64_channel_sourcesconda-forgepython3.11.____cpython + vm_image: macOS-15-arm64 + osx_arm64_python3.12.____cpython: + CONFIG: osx_arm64_python3.12.____cpython UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15-arm64 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_arm64_channel_sourcesconda-forgepython3.12.____cpython: - CONFIG: osx_arm64_channel_sourcesconda-forgepython3.12.____cpython + vm_image: macOS-15-arm64 + osx_arm64_python3.13.____cp313: + CONFIG: osx_arm64_python3.13.____cp313 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15-arm64 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_arm64_channel_sourcesconda-forgepython3.13.____cp313: - CONFIG: osx_arm64_channel_sourcesconda-forgepython3.13.____cp313 + vm_image: macOS-15-arm64 + osx_arm64_python3.14.____cp314: + CONFIG: osx_arm64_python3.14.____cp314 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15-arm64 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 - osx_arm64_channel_sourcesconda-forgepython3.14.____cp314: - CONFIG: osx_arm64_channel_sourcesconda-forgepython3.14.____cp314 + vm_image: macOS-15-arm64 + osx_arm64_python3.15.____cp315: + CONFIG: osx_arm64_python3.15.____cp315 UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15-arm64 build_workspace_dir: ~/miniforge3/conda-bld free_disk_space: skip pagefile_size: 0 resize_partitions: false store_build_artifacts: false tools_install_dir: ~/miniforge3 + vm_image: macOS-15-arm64 timeoutInMinutes: 360 variables: {} diff --git a/.ci_support/linux_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml b/.ci_support/linux_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml deleted file mode 100644 index 9e8c574..0000000 --- a/.ci_support/linux_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml +++ /dev/null @@ -1,37 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '15' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge,conda-forge/label/python_rc -channel_targets: -- conda-forge main -cxx_compiler: -- gxx -cxx_compiler_version: -- '15' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma10 -glib: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.15.* *_cp315 -python_impl: -- cpython -target_platform: -- linux-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - channel_sources -zlib: -- '1' diff --git a/.ci_support/linux_64_channel_sourcesconda-forgepython3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml similarity index 94% rename from .ci_support/linux_64_channel_sourcesconda-forgepython3.11.____cpython.yaml rename to .ci_support/linux_64_python3.11.____cpython.yaml index 4511b05..481f818 100644 --- a/.ci_support/linux_64_channel_sourcesconda-forgepython3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/amd64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_64_channel_sourcesconda-forgepython3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml similarity index 94% rename from .ci_support/linux_64_channel_sourcesconda-forgepython3.12.____cpython.yaml rename to .ci_support/linux_64_python3.12.____cpython.yaml index f42ed18..72271c9 100644 --- a/.ci_support/linux_64_channel_sourcesconda-forgepython3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/amd64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_64_channel_sourcesconda-forgepython3.13.____cp313.yaml b/.ci_support/linux_64_python3.13.____cp313.yaml similarity index 94% rename from .ci_support/linux_64_channel_sourcesconda-forgepython3.13.____cp313.yaml rename to .ci_support/linux_64_python3.13.____cp313.yaml index fca70a3..dc5240e 100644 --- a/.ci_support/linux_64_channel_sourcesconda-forgepython3.13.____cp313.yaml +++ b/.ci_support/linux_64_python3.13.____cp313.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/amd64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_64_channel_sourcesconda-forgepython3.14.____cp314.yaml b/.ci_support/linux_64_python3.14.____cp314.yaml similarity index 94% rename from .ci_support/linux_64_channel_sourcesconda-forgepython3.14.____cp314.yaml rename to .ci_support/linux_64_python3.14.____cp314.yaml index b5bfdea..9c0268e 100644 --- a/.ci_support/linux_64_channel_sourcesconda-forgepython3.14.____cp314.yaml +++ b/.ci_support/linux_64_python3.14.____cp314.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/amd64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_64_python3.15.____cp315.yaml b/.ci_support/linux_64_python3.15.____cp315.yaml new file mode 100644 index 0000000..934d00c --- /dev/null +++ b/.ci_support/linux_64_python3.15.____cp315.yaml @@ -0,0 +1,37 @@ +DOCKER_PLATFORM: +- linux/amd64 +c_compiler: +- gcc +c_compiler_version: +- '15' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '15' +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma10 +glib: +- '2' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.15.* *_cp315 +python_impl: +- cpython +target_platform: +- linux-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1' diff --git a/.ci_support/linux_aarch64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml b/.ci_support/linux_aarch64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml deleted file mode 100644 index cb71f05..0000000 --- a/.ci_support/linux_aarch64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml +++ /dev/null @@ -1,37 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '15' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge,conda-forge/label/python_rc -channel_targets: -- conda-forge main -cxx_compiler: -- gxx -cxx_compiler_version: -- '15' -docker_image: -- quay.io/condaforge/linux-anvil-aarch64:alma10 -glib: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.15.* *_cp315 -python_impl: -- cpython -target_platform: -- linux-aarch64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - channel_sources -zlib: -- '1' diff --git a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.11.____cpython.yaml b/.ci_support/linux_aarch64_python3.11.____cpython.yaml similarity index 93% rename from .ci_support/linux_aarch64_channel_sourcesconda-forgepython3.11.____cpython.yaml rename to .ci_support/linux_aarch64_python3.11.____cpython.yaml index 8a050bb..1076ef3 100644 --- a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_python3.11.____cpython.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/aarch64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.12.____cpython.yaml b/.ci_support/linux_aarch64_python3.12.____cpython.yaml similarity index 93% rename from .ci_support/linux_aarch64_channel_sourcesconda-forgepython3.12.____cpython.yaml rename to .ci_support/linux_aarch64_python3.12.____cpython.yaml index 214845d..660eec8 100644 --- a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_python3.12.____cpython.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/aarch64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.13.____cp313.yaml b/.ci_support/linux_aarch64_python3.13.____cp313.yaml similarity index 93% rename from .ci_support/linux_aarch64_channel_sourcesconda-forgepython3.13.____cp313.yaml rename to .ci_support/linux_aarch64_python3.13.____cp313.yaml index 4d7b148..35dd286 100644 --- a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.13.____cp313.yaml +++ b/.ci_support/linux_aarch64_python3.13.____cp313.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/aarch64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.14.____cp314.yaml b/.ci_support/linux_aarch64_python3.14.____cp314.yaml similarity index 93% rename from .ci_support/linux_aarch64_channel_sourcesconda-forgepython3.14.____cp314.yaml rename to .ci_support/linux_aarch64_python3.14.____cp314.yaml index 2c800fe..b388dd7 100644 --- a/.ci_support/linux_aarch64_channel_sourcesconda-forgepython3.14.____cp314.yaml +++ b/.ci_support/linux_aarch64_python3.14.____cp314.yaml @@ -1,3 +1,5 @@ +DOCKER_PLATFORM: +- linux/aarch64 c_compiler: - gcc c_compiler_version: @@ -31,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_aarch64_python3.15.____cp315.yaml b/.ci_support/linux_aarch64_python3.15.____cp315.yaml new file mode 100644 index 0000000..11c7572 --- /dev/null +++ b/.ci_support/linux_aarch64_python3.15.____cp315.yaml @@ -0,0 +1,37 @@ +DOCKER_PLATFORM: +- linux/aarch64 +c_compiler: +- gcc +c_compiler_version: +- '15' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '15' +docker_image: +- quay.io/condaforge/linux-anvil-aarch64:alma10 +glib: +- '2' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.15.* *_cp315 +python_impl: +- cpython +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1' diff --git a/.ci_support/osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml b/.ci_support/osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml deleted file mode 100644 index 090ac2a..0000000 --- a/.ci_support/osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml +++ /dev/null @@ -1,41 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '21' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge,conda-forge/label/python_rc -channel_targets: -- conda-forge main -cxx_compiler: -- clangxx -cxx_compiler_version: -- '21' -glib: -- '2' -macos_machine: -- x86_64-apple-darwin13.4.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.15.* *_cp315 -python_impl: -- cpython -target_platform: -- osx-64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - channel_sources -zlib: -- '1' diff --git a/.ci_support/osx_64_channel_sourcesconda-forgepython3.11.____cpython.yaml b/.ci_support/osx_64_python3.11.____cpython.yaml similarity index 88% rename from .ci_support/osx_64_channel_sourcesconda-forgepython3.11.____cpython.yaml rename to .ci_support/osx_64_python3.11.____cpython.yaml index 96c5612..93f4137 100644 --- a/.ci_support/osx_64_channel_sourcesconda-forgepython3.11.____cpython.yaml +++ b/.ci_support/osx_64_python3.11.____cpython.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_64_channel_sourcesconda-forgepython3.12.____cpython.yaml b/.ci_support/osx_64_python3.12.____cpython.yaml similarity index 88% rename from .ci_support/osx_64_channel_sourcesconda-forgepython3.12.____cpython.yaml rename to .ci_support/osx_64_python3.12.____cpython.yaml index 47b3f53..bc38fae 100644 --- a/.ci_support/osx_64_channel_sourcesconda-forgepython3.12.____cpython.yaml +++ b/.ci_support/osx_64_python3.12.____cpython.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_64_channel_sourcesconda-forgepython3.13.____cp313.yaml b/.ci_support/osx_64_python3.13.____cp313.yaml similarity index 88% rename from .ci_support/osx_64_channel_sourcesconda-forgepython3.13.____cp313.yaml rename to .ci_support/osx_64_python3.13.____cp313.yaml index 8551a72..a4f1e8b 100644 --- a/.ci_support/osx_64_channel_sourcesconda-forgepython3.13.____cp313.yaml +++ b/.ci_support/osx_64_python3.13.____cp313.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_64_channel_sourcesconda-forgepython3.14.____cp314.yaml b/.ci_support/osx_64_python3.14.____cp314.yaml similarity index 88% rename from .ci_support/osx_64_channel_sourcesconda-forgepython3.14.____cp314.yaml rename to .ci_support/osx_64_python3.14.____cp314.yaml index 7d98233..b8fb3a1 100644 --- a/.ci_support/osx_64_channel_sourcesconda-forgepython3.14.____cp314.yaml +++ b/.ci_support/osx_64_python3.14.____cp314.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_64_python3.15.____cp315.yaml b/.ci_support/osx_64_python3.15.____cp315.yaml new file mode 100644 index 0000000..f96a58b --- /dev/null +++ b/.ci_support/osx_64_python3.15.____cp315.yaml @@ -0,0 +1,37 @@ +MACOSX_SDK_VERSION: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '21' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '21' +glib: +- '2' +macos_machine: +- x86_64-apple-darwin13.4.0 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.15.* *_cp315 +python_impl: +- cpython +target_platform: +- osx-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1' diff --git a/.ci_support/osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml b/.ci_support/osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml deleted file mode 100644 index 62be655..0000000 --- a/.ci_support/osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml +++ /dev/null @@ -1,41 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '21' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge,conda-forge/label/python_rc -channel_targets: -- conda-forge main -cxx_compiler: -- clangxx -cxx_compiler_version: -- '21' -glib: -- '2' -macos_machine: -- arm64-apple-darwin20.0.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.15.* *_cp315 -python_impl: -- cpython -target_platform: -- osx-arm64 -zip_keys: -- - c_compiler_version - - cxx_compiler_version -- - python - - channel_sources -zlib: -- '1' diff --git a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.11.____cpython.yaml b/.ci_support/osx_arm64_python3.11.____cpython.yaml similarity index 88% rename from .ci_support/osx_arm64_channel_sourcesconda-forgepython3.11.____cpython.yaml rename to .ci_support/osx_arm64_python3.11.____cpython.yaml index d071641..0940e94 100644 --- a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.11.____cpython.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.12.____cpython.yaml b/.ci_support/osx_arm64_python3.12.____cpython.yaml similarity index 88% rename from .ci_support/osx_arm64_channel_sourcesconda-forgepython3.12.____cpython.yaml rename to .ci_support/osx_arm64_python3.12.____cpython.yaml index d26a412..40d488b 100644 --- a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.12.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.12.____cpython.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.13.____cp313.yaml b/.ci_support/osx_arm64_python3.13.____cp313.yaml similarity index 88% rename from .ci_support/osx_arm64_channel_sourcesconda-forgepython3.13.____cp313.yaml rename to .ci_support/osx_arm64_python3.13.____cp313.yaml index 7d3bf15..537f88b 100644 --- a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.13.____cp313.yaml +++ b/.ci_support/osx_arm64_python3.13.____cp313.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.14.____cp314.yaml b/.ci_support/osx_arm64_python3.14.____cp314.yaml similarity index 88% rename from .ci_support/osx_arm64_channel_sourcesconda-forgepython3.14.____cp314.yaml rename to .ci_support/osx_arm64_python3.14.____cp314.yaml index 5deca81..2702cba 100644 --- a/.ci_support/osx_arm64_channel_sourcesconda-forgepython3.14.____cp314.yaml +++ b/.ci_support/osx_arm64_python3.14.____cp314.yaml @@ -1,5 +1,3 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' MACOSX_SDK_VERSION: - '11.0' c_compiler: @@ -35,7 +33,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_arm64_python3.15.____cp315.yaml b/.ci_support/osx_arm64_python3.15.____cp315.yaml new file mode 100644 index 0000000..0660835 --- /dev/null +++ b/.ci_support/osx_arm64_python3.15.____cp315.yaml @@ -0,0 +1,37 @@ +MACOSX_SDK_VERSION: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '21' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '21' +glib: +- '2' +macos_machine: +- arm64-apple-darwin20.0.0 +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.15.* *_cp315 +python_impl: +- cpython +target_platform: +- osx-arm64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1' diff --git a/.ci_support/win_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml b/.ci_support/win_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml deleted file mode 100644 index f5bec30..0000000 --- a/.ci_support/win_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315.yaml +++ /dev/null @@ -1,27 +0,0 @@ -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge,conda-forge/label/python_rc -channel_targets: -- conda-forge main -cxx_compiler: -- vs2022 -glib: -- '2' -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.15.* *_cp315 -python_impl: -- cpython -target_platform: -- win-64 -zip_keys: -- - python - - channel_sources -zlib: -- '1' diff --git a/.ci_support/win_64_channel_sourcesconda-forgepython3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml similarity index 87% rename from .ci_support/win_64_channel_sourcesconda-forgepython3.11.____cpython.yaml rename to .ci_support/win_64_python3.11.____cpython.yaml index 36786c3..5d32322 100644 --- a/.ci_support/win_64_channel_sourcesconda-forgepython3.11.____cpython.yaml +++ b/.ci_support/win_64_python3.11.____cpython.yaml @@ -20,8 +20,5 @@ python_impl: - cpython target_platform: - win-64 -zip_keys: -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/win_64_channel_sourcesconda-forgepython3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml similarity index 87% rename from .ci_support/win_64_channel_sourcesconda-forgepython3.12.____cpython.yaml rename to .ci_support/win_64_python3.12.____cpython.yaml index a8240f5..823ac91 100644 --- a/.ci_support/win_64_channel_sourcesconda-forgepython3.12.____cpython.yaml +++ b/.ci_support/win_64_python3.12.____cpython.yaml @@ -20,8 +20,5 @@ python_impl: - cpython target_platform: - win-64 -zip_keys: -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/win_64_channel_sourcesconda-forgepython3.13.____cp313.yaml b/.ci_support/win_64_python3.13.____cp313.yaml similarity index 87% rename from .ci_support/win_64_channel_sourcesconda-forgepython3.13.____cp313.yaml rename to .ci_support/win_64_python3.13.____cp313.yaml index 8da8cd8..f95567b 100644 --- a/.ci_support/win_64_channel_sourcesconda-forgepython3.13.____cp313.yaml +++ b/.ci_support/win_64_python3.13.____cp313.yaml @@ -20,8 +20,5 @@ python_impl: - cpython target_platform: - win-64 -zip_keys: -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/win_64_channel_sourcesconda-forgepython3.14.____cp314.yaml b/.ci_support/win_64_python3.14.____cp314.yaml similarity index 87% rename from .ci_support/win_64_channel_sourcesconda-forgepython3.14.____cp314.yaml rename to .ci_support/win_64_python3.14.____cp314.yaml index a7c6706..d264d96 100644 --- a/.ci_support/win_64_channel_sourcesconda-forgepython3.14.____cp314.yaml +++ b/.ci_support/win_64_python3.14.____cp314.yaml @@ -20,8 +20,5 @@ python_impl: - cpython target_platform: - win-64 -zip_keys: -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/win_64_python3.15.____cp315.yaml b/.ci_support/win_64_python3.15.____cp315.yaml new file mode 100644 index 0000000..95d7534 --- /dev/null +++ b/.ci_support/win_64_python3.15.____cp315.yaml @@ -0,0 +1,24 @@ +c_compiler: +- vs2022 +c_stdlib: +- vs +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- vs2022 +glib: +- '2' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.15.* *_cp315 +python_impl: +- cpython +target_platform: +- win-64 +zlib: +- '1' diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 8b4ef2f..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,25 +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: jinja-yaml -*- - -version: 2 - -jobs: - build: - working_directory: ~/test - machine: - image: ubuntu-2004:current - steps: - - run: - # The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish. - command: exit 0 - -workflows: - version: 2 - build_and_test: - jobs: - - build: - filters: - branches: - ignore: - - /.*/ diff --git a/.gitattributes b/.gitattributes index 85ccb8f..7914410 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,18 +8,11 @@ bld.bat text eol=crlf # github helper pieces to make some files not show up in diffs automatically .azure-pipelines/* linguist-generated=true -.circleci/* linguist-generated=true .ci_support/README linguist-generated=true -.drone/* linguist-generated=true -.drone.yml linguist-generated=true .github/* linguist-generated=true -.travis/* linguist-generated=true -.appveyor.yml linguist-generated=true .gitattributes linguist-generated=true .gitignore linguist-generated=true -.travis.yml linguist-generated=true .scripts/* linguist-generated=true -.woodpecker.yml linguist-generated=true /LICENSE.txt linguist-generated=true /README.md linguist-generated=true azure-pipelines.yml linguist-generated=true diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 668e091..16373c6 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -22,7 +22,7 @@ jobs: max-parallel: 50 matrix: include: - - CONFIG: linux_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315 + - CONFIG: linux_64_python3.11.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -34,7 +34,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_64_channel_sourcesconda-forgepython3.11.____cpython + - CONFIG: linux_64_python3.12.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -46,7 +46,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_64_channel_sourcesconda-forgepython3.12.____cpython + - CONFIG: linux_64_python3.13.____cp313 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -58,7 +58,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_64_channel_sourcesconda-forgepython3.13.____cp313 + - CONFIG: linux_64_python3.14.____cp314 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -70,7 +70,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_64_channel_sourcesconda-forgepython3.14.____cp314 + - CONFIG: linux_64_python3.15.____cp315 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -82,7 +82,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-latest'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315 + - CONFIG: linux_aarch64_python3.11.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-aarch64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -94,7 +94,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-24.04-arm'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_channel_sourcesconda-forgepython3.11.____cpython + - CONFIG: linux_aarch64_python3.12.____cpython DOCKER_IMAGE: quay.io/condaforge/linux-anvil-aarch64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -106,7 +106,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-24.04-arm'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_channel_sourcesconda-forgepython3.12.____cpython + - CONFIG: linux_aarch64_python3.13.____cp313 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-aarch64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -118,7 +118,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-24.04-arm'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_channel_sourcesconda-forgepython3.13.____cp313 + - CONFIG: linux_aarch64_python3.14.____cp314 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-aarch64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -130,7 +130,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-24.04-arm'] tools_install_dir: ~/miniforge3 - - CONFIG: linux_aarch64_channel_sourcesconda-forgepython3.14.____cp314 + - CONFIG: linux_aarch64_python3.15.____cp315 DOCKER_IMAGE: quay.io/condaforge/linux-anvil-aarch64:alma10 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True @@ -142,7 +142,7 @@ jobs: resize_partitions: False runs_on: ['ubuntu-24.04-arm'] tools_install_dir: ~/miniforge3 - - CONFIG: win_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315 + - CONFIG: win_64_python3.11.____cpython STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True build_platform: win-64 @@ -154,7 +154,7 @@ jobs: resize_partitions: False runs_on: ['windows-2022'] tools_install_dir: D:\Miniforge - - CONFIG: win_64_channel_sourcesconda-forgepython3.11.____cpython + - CONFIG: win_64_python3.12.____cpython STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True build_platform: win-64 @@ -166,7 +166,7 @@ jobs: resize_partitions: False runs_on: ['windows-2022'] tools_install_dir: D:\Miniforge - - CONFIG: win_64_channel_sourcesconda-forgepython3.12.____cpython + - CONFIG: win_64_python3.13.____cp313 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True build_platform: win-64 @@ -178,7 +178,7 @@ jobs: resize_partitions: False runs_on: ['windows-2022'] tools_install_dir: D:\Miniforge - - CONFIG: win_64_channel_sourcesconda-forgepython3.13.____cp313 + - CONFIG: win_64_python3.14.____cp314 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True build_platform: win-64 @@ -190,7 +190,7 @@ jobs: resize_partitions: False runs_on: ['windows-2022'] tools_install_dir: D:\Miniforge - - CONFIG: win_64_channel_sourcesconda-forgepython3.14.____cp314 + - CONFIG: win_64_python3.15.____cp315 STORE_BUILD_ARTIFACTS: False UPLOAD_PACKAGES: True build_platform: win-64 @@ -212,6 +212,8 @@ jobs: run: | if [[ "$(uname -m)" == "x86_64" ]]; then docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + elif [[ "$(uname -m)" == "aarch64" ]]; then + docker run --rm --privileged --entrypoint /opt/docker/bin/register-binfmt ${{ matrix.DOCKER_IMAGE }} aarch64 fi - name: Build on Linux diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 061349e..5f69b48 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -9,17 +9,23 @@ set -xeuo pipefail export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" +# ensure absolute path +FEEDSTOCK_ROOT=$(cd "${FEEDSTOCK_ROOT}"; pwd) source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh ( endgroup "Start Docker" ) 2> /dev/null -( startgroup "Configuring conda" ) 2> /dev/null +( startgroup "Configuring build environment" ) 2> /dev/null +MINIFORGE_HOME=/opt/conda export PYTHONUNBUFFERED=1 export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" +# ensure absolute path +RECIPE_ROOT=$(cd "${RECIPE_ROOT}"; pwd) export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" +export PIXI_CACHE_DIR="${MINIFORGE_HOME}" export RATTLER_CACHE_DIR="${FEEDSTOCK_ROOT}/build_artifacts/pkg_cache" cat >~/.condarc < /opt/conda/conda-meta/history -micromamba install --root-prefix ~/.conda --prefix /opt/conda \ - --yes --override-channels --channel conda-forge --strict-channel-priority \ - pip rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" + +( endgroup "Configuring build environment" ) 2> /dev/null + +( startgroup "Provisioning base env with micromamba" ) 2> /dev/null + +MAMBA_ROOT_PREFIX=~/.conda +MICROMAMBA_EXE=micromamba + +echo Creating environment +mv "${MINIFORGE_HOME}"/conda-meta/history "${MINIFORGE_HOME}"/conda-meta/history.$(date +%Y-%m-%d-%H-%M-%S) +echo > "${MINIFORGE_HOME}"/conda-meta/history +"${MICROMAMBA_EXE}" install --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ + --override-channels --channel conda-forge --strict-channel-priority \ + pip python=3.14 rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" + +( endgroup "Provisioning base env with micromamba" ) 2> /dev/null + +( startgroup "Configuring conda" ) 2> /dev/null export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 -# set up the condarc + + +# Set basic configuration +echo Setting up configuration setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" +# Linux-specific setup +echo Running build setup source run_conda_forge_build_setup ( @@ -65,9 +89,6 @@ ulimit -n 1024 /usr/bin/sudo -n yum install -y mesa-libGL ) -# make the build number clobber -make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --test skip" fi @@ -75,7 +96,8 @@ fi ( endgroup "Configuring conda" ) 2> /dev/null if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then - cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" + echo Copying feedstock license + cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" fi if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then @@ -88,51 +110,52 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${FEEDSTOCK_ROOT}/build_artifacts}" rattler-build debug setup \ --recipe "${RECIPE_ROOT}" \ - -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + -m "${CONFIG_FILE}" \ ${EXTRA_CB_OPTIONS:-} \ ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \ --build-platform "${BUILD_PLATFORM}" \ --target-platform "${HOST_PLATFORM}" rattler-build debug shell -else - # 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:-} \ - --build-platform "${BUILD_PLATFORM}" \ - --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 - command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" - - ( endgroup "Inspecting artifacts" ) 2> /dev/null - ( startgroup "Validating outputs" ) 2> /dev/null - - validate_recipe_outputs "${FEEDSTOCK_NAME}" - - ( endgroup "Validating outputs" ) 2> /dev/null + exit 0 +fi +# Build the recipe +echo Building recipe + +# 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 "${CONFIG_FILE}" \ + ${EXTRA_CB_OPTIONS:-} \ + --build-platform "${BUILD_PLATFORM}" \ + --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 +command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" + +( endgroup "Inspecting artifacts" ) 2> /dev/null +( startgroup "Validating outputs" ) 2> /dev/null +validate_recipe_outputs "${FEEDSTOCK_NAME}" +( endgroup "Validating outputs" ) 2> /dev/null + +if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then ( startgroup "Uploading packages" ) 2> /dev/null - - if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then - upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - fi - + upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" ( endgroup "Uploading packages" ) 2> /dev/null fi -( startgroup "Final checks" ) 2> /dev/null +( startgroup "Leaving the Docker container" ) 2> /dev/null touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" diff --git a/.scripts/logging_utils.sh b/.scripts/logging_utils.sh index aff009f..c39888e 100755 --- a/.scripts/logging_utils.sh +++ b/.scripts/logging_utils.sh @@ -10,9 +10,6 @@ function startgroup { case ${CI:-} in azure ) echo "##[group]$1";; - travis ) - echo "$1" - echo -en 'travis_fold:start:'"${1// /}"'\r';; github_actions ) echo "::group::$1";; * ) @@ -27,8 +24,6 @@ function endgroup { case ${CI:-} in azure ) echo "##[endgroup]";; - travis ) - echo -en 'travis_fold:end:'"${1// /}"'\r';; github_actions ) echo "::endgroup::";; esac diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 17d983f..67c42c7 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -69,6 +69,11 @@ if [ -z "${DOCKER_IMAGE}" ]; then fi fi +if [ -z "${DOCKER_PLATFORM}" ]; then + # this is set unconditionally in the variant configs -> no fallback + DOCKER_PLATFORM=$(cat .ci_support/${CONFIG}.yaml | grep '^DOCKER_PLATFORM:$' -A 1 | tail -n 1 | cut -b 3-) +fi + mkdir -p "$ARTIFACTS" DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" rm -f "$DONE_CANARY" @@ -84,9 +89,9 @@ 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}" + # Fix file permissions for rootless podman builds. In addition to `recipe/` + # and `build_artifacts`, `.scripts` also needs to be available in the container. + podman unshare chown -R ${HOST_USER_ID}:${HOST_USER_ID} "${FEEDSTOCK_ROOT}" # Add SELinux label only if enforcing if command -v getenforce &>/dev/null && [ "$(getenforce)" = "Enforcing" ]; then @@ -110,7 +115,7 @@ fi export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" export IS_PR_BUILD="${IS_PR_BUILD:-False}" -${DOCKER_EXECUTABLE} pull "${DOCKER_IMAGE}" +${DOCKER_EXECUTABLE} pull --platform ${DOCKER_PLATFORM} "${DOCKER_IMAGE}" ${DOCKER_EXECUTABLE} run ${DOCKER_RUN_ARGS} \ -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw${VOLUME_SUFFIX},delegated \ @@ -143,4 +148,4 @@ ${DOCKER_EXECUTABLE} run ${DOCKER_RUN_ARGS} \ test -f "$DONE_CANARY" # This closes the last group opened in `build_steps.sh` -( endgroup "Final checks" ) 2> /dev/null +( endgroup "Leaving the Docker container" ) 2> /dev/null diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 400a3a0..9540eb8 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -1,141 +1,190 @@ #!/usr/bin/env bash +# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here +# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent +# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also +# benefit from the improvement. + # -*- mode: jinja-shell -*- -source .scripts/logging_utils.sh +set -xeuo pipefail +export FEEDSTOCK_ROOT=${PWD} +source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh + -set -xe +( startgroup "Configuring build environment" ) 2> /dev/null MINIFORGE_HOME="${MINIFORGE_HOME:-${HOME}/miniforge3}" MINIFORGE_HOME="${MINIFORGE_HOME%/}" # remove trailing slash export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${MINIFORGE_HOME}/conda-bld}" - -( startgroup "Provisioning base env with micromamba" ) 2> /dev/null -MICROMAMBA_VERSION="1.5.10-0" -if [[ "$(uname -m)" == "arm64" ]]; then - osx_arch="osx-arm64" +export RECIPE_ROOT="recipe" +# ensure absolute path +RECIPE_ROOT=$(cd "${RECIPE_ROOT}"; pwd) +export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" +export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" +export PIXI_CACHE_DIR="${MINIFORGE_HOME}" +export RATTLER_CACHE_DIR="${CONDA_BLD_PATH}/pkg_cache" + +( endgroup "Configuring build environment" ) 2> /dev/null + +arch=$(uname -m) +MICROMAMBA_VERSION="2.10.0-0" +MINIFORGE_VERSION="26.9.4-2" +if [[ "${arch}" == "x86_64" ]]; then + arch="64" + MICROMAMBA_SHA256="8421462a1ef1df9f7acd114f9e2a24c1332ce4f4e29f44465b4acb44e2755172" + MINIFORGE_SHA256="30e82ce68875fc50b917a3a541ea0516272866584187f7ea980ce8eaf715807d" else - osx_arch="osx-64" + # arch is already correct + MICROMAMBA_SHA256="c547639f5caf742236641c362746abb4a3505774753ecd08fe341643670c4c01" + MINIFORGE_SHA256="fb567612b76f4ef46de326f04425dbe381b6afc6a66c545f5043255a5ef34258" fi -MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" + +( startgroup "Provisioning base env with micromamba" ) 2> /dev/null + MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" +MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-osx-${arch}" +MICROMAMBA_TMPDIR=$(mktemp -d) +MICROMAMBA_EXE=${MICROMAMBA_TMPDIR}/micromamba + echo "Downloading micromamba ${MICROMAMBA_VERSION}" -micromamba_exe="$(mktemp -d)/micromamba" -curl -L -o "${micromamba_exe}" "${MICROMAMBA_URL}" -chmod +x "${micromamba_exe}" -echo "Creating environment" -"${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ - --channel conda-forge \ - pip rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" +curl --fail --retry 5 --retry-delay 5 -L -o "${MICROMAMBA_EXE}" "${MICROMAMBA_URL}" +echo "${MICROMAMBA_SHA256} *${MICROMAMBA_EXE}" | shasum -a 256 -c +chmod +x "${MICROMAMBA_EXE}" + +echo Creating environment +"${MICROMAMBA_EXE}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ + --override-channels --channel conda-forge --strict-channel-priority \ + pip python=3.14 rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" -echo "Cleaning up micromamba" -rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true + +echo Cleaning up micromamba +rm -rf "${MAMBA_ROOT_PREFIX}" "${MICROMAMBA_EXE}" || : + ( endgroup "Provisioning base env with micromamba" ) 2> /dev/null ( startgroup "Configuring conda" ) 2> /dev/null -echo "Activating environment" + +# Activate the base conda environment +echo Activating environment source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" conda activate base +# Configure the solver export CONDA_SOLVER="libmamba" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 +# Set basic configuration +echo Setting up configuration +setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - -echo -e "\n\nSetting up the condarc and mangling the compiler." -setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml - +# macOS-specific setup if [[ "${CI:-}" != "" ]]; then - mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml + mangle_compiler "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" fi if [[ "${CI:-}" != "" ]]; then - echo -e "\n\nMangling homebrew in the CI to avoid conflicts." - /usr/bin/sudo mangle_homebrew - /usr/bin/sudo -k + echo "Mangling homebrew in the CI to avoid conflicts." + /usr/bin/sudo mangle_homebrew + /usr/bin/sudo -k else - echo -e "\n\nNot mangling homebrew as we are not running in CI" + echo "Not mangling homebrew as we are not running in CI" fi if [[ "${sha:-}" == "" ]]; then - sha=$(git rev-parse HEAD) + sha=$(git rev-parse HEAD) fi if [[ "${OSX_SDK_DIR:-}" == "" ]]; then - if [[ "${CI:-}" == "" ]]; then - echo "Please set OSX_SDK_DIR to a directory where SDKs can be downloaded to. Aborting" - exit 1 - else - export OSX_SDK_DIR=/opt/conda-sdks - /usr/bin/sudo mkdir -p "${OSX_SDK_DIR}" - /usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}" - fi + if [[ "${CI:-}" == "" ]]; then + echo "Please set OSX_SDK_DIR to a directory where SDKs can be downloaded to. Aborting" + exit 1 + else + export OSX_SDK_DIR=/opt/conda-sdks + /usr/bin/sudo mkdir -p "${OSX_SDK_DIR}" + /usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}" + fi else - if tmpf=$(mktemp "$OSX_SDK_DIR"/tmp.XXXXXXXX 2>/dev/null); then - rm -f "$tmpf" - echo "OSX_SDK_DIR is writeable without sudo, continuing" - else - echo "User-provided OSX_SDK_DIR is not writeable for current user! Aborting" - exit 1 - fi + if tmpf=$(mktemp "$OSX_SDK_DIR"/tmp.XXXXXXXX 2>/dev/null); then + rm -f "$tmpf" + echo "OSX_SDK_DIR is writeable without sudo, continuing" + else + echo "User-provided OSX_SDK_DIR is not writeable for current user! Aborting" + exit 1 + fi fi -echo -e "\n\nRunning the build setup script." +echo Running build setup source run_conda_forge_build_setup +if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then + EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --test skip" +fi + + ( endgroup "Configuring conda" ) 2> /dev/null -if [[ -f LICENSE.txt ]]; then - cp LICENSE.txt "recipe/recipe-scripts-license.txt" +if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then + echo Copying feedstock license + cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" fi if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then - export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${FEEDSTOCK_ROOT:-$PWD}/build_artifacts}" + # 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 \ - -m ./.ci_support/${CONFIG}.yaml \ - --build-platform "${BUILD_PLATFORM}" \ - --target-platform "${HOST_PLATFORM}" \ - ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \ - ${EXTRA_CB_OPTIONS:-} - - rattler-build debug shell -else - - if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --test skip" - fi - - rattler-build build --recipe ./recipe \ - -m ./.ci_support/${CONFIG}.yaml \ + --recipe "${RECIPE_ROOT}" \ + -m "${CONFIG_FILE}" \ ${EXTRA_CB_OPTIONS:-} \ + ${BUILD_OUTPUT_ID:+--output-name "${BUILD_OUTPUT_ID}"} \ --build-platform "${BUILD_PLATFORM}" \ - --target-platform "${HOST_PLATFORM}" \ - --extra-meta flow_run_id="$flow_run_id" \ - --extra-meta remote_url="$remote_url" \ - --extra-meta sha="$sha" + --target-platform "${HOST_PLATFORM}" - ( startgroup "Inspecting artifacts" ) 2> /dev/null - - # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 - command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir ./recipe -m ./.ci_support/${CONFIG}.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" - - ( endgroup "Inspecting artifacts" ) 2> /dev/null - ( startgroup "Validating outputs" ) 2> /dev/null - - validate_recipe_outputs "${FEEDSTOCK_NAME}" - - ( endgroup "Validating outputs" ) 2> /dev/null + rattler-build debug shell + exit 0 +fi +# Build the recipe +echo Building recipe + +# 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 "${CONFIG_FILE}" \ + ${EXTRA_CB_OPTIONS:-} \ + --build-platform "${BUILD_PLATFORM}" \ + --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 +command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" + +( endgroup "Inspecting artifacts" ) 2> /dev/null +( startgroup "Validating outputs" ) 2> /dev/null +validate_recipe_outputs "${FEEDSTOCK_NAME}" +( endgroup "Validating outputs" ) 2> /dev/null + +if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then ( startgroup "Uploading packages" ) 2> /dev/null - - if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then - upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml - fi - + upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" ( endgroup "Uploading packages" ) 2> /dev/null fi diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 7237df5..3b13e5f 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -16,26 +16,52 @@ FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" :: Remove trailing backslash, if present if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" + +set FEEDSTOCK_ROOT=%cd% +set RECIPE_ROOT=%FEEDSTOCK_ROOT%\recipe +set CI_SUPPORT=%FEEDSTOCK_ROOT%\.ci_support +set CONFIG_FILE=%CI_SUPPORT%\%CONFIG%.yaml + +set "MICROMAMBA_VERSION=2.10.0-0" +set "MINIFORGE_VERSION=26.9.4-2" +if "%PROCESSOR_ARCHITECTURE%"=="AMD64" ( + set "short_arch=64" + set "full_arch=x86_64" + set "MICROMAMBA_SHA256=f8b4284bd4eb1134122eaf93b3ea6c7be567e596de5829e1a6f478e34e41974a" + set "MINIFORGE_SHA256=9d83983669bc5d3b5dd4c631454bf953c3caf4ac78b9c9ada9971e5b021d83c3" +) else ( + set "short_arch=arm64" + set "full_arch=arm64" + set "MICROMAMBA_SHA256=1fcb3463c684d02366a3d447c153d00922decb16999eef7fb4634d0942a9093e" + set "MINIFORGE_SHA256=4cbb52ff0239488723f5e7ed0f362d393fc471a733dcd5ee9b03c74f188010c4" +) + 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_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-%short_arch%" set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" -echo Downloading micromamba %MICROMAMBA_VERSION% +echo Downloading micromamba %MICROMAMBA_VERSION% from %MICROMAMBA_URL% if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" powershell -ExecutionPolicy Bypass -Command "(New-Object Net.WebClient).DownloadFile('%MICROMAMBA_URL%', '%MICROMAMBA_EXE%')" if !errorlevel! neq 0 exit /b !errorlevel! +if "%MICROMAMBA_SHA256%"=="" exit /b 1 +powershell -ExecutionPolicy Bypass -Command "$h = Get-FileHash '%MICROMAMBA_EXE%' -ErrorAction Stop; if ($h.Hash -ne $env:MICROMAMBA_SHA256) { Write-Error "SHA256 mismatch:`n Expected: $env:MICROMAMBA_SHA256`n Actual: $($h.Hash)"; exit 1 }" +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 rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" + pip python=3.14 rattler-build conda-forge-ci-setup=4 "conda-build>=26.3" if !errorlevel! neq 0 exit /b !errorlevel! -echo Removing %MAMBA_ROOT_PREFIX% + +echo Cleaning up micromamba del /S /Q "%MAMBA_ROOT_PREFIX%" >nul del /S /Q "%MICROMAMBA_TMPDIR%" >nul + call :end_group call :start_group "Configuring conda" @@ -51,17 +77,18 @@ set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" :: Set basic configuration echo Setting up configuration -setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml -if !errorlevel! neq 0 exit /b !errorlevel! -echo Running build setup +setup_conda_rc "%FEEDSTOCK_ROOT%" "%RECIPE_ROOT%" "%CONFIG_FILE%" +if !errorlevel! neq 0 exit /b !errorlevel!echo Running build setup CALL run_conda_forge_build_setup if !errorlevel! neq 0 exit /b !errorlevel! -if EXIST LICENSE.txt ( +call :end_group + +if EXIST %FEEDSTOCK_ROOT%\LICENSE.txt ( echo Copying feedstock license - copy LICENSE.txt "recipe\\recipe-scripts-license.txt" + copy "%FEEDSTOCK_ROOT%\\LICENSE.txt" "%RECIPE_ROOT%\\recipe-scripts-license.txt" ) if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --test skip" @@ -71,16 +98,22 @@ if NOT [%flow_run_id%] == [] ( 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 -rattler-build.exe build --recipe "recipe" -m .ci_support\%CONFIG%.yaml %EXTRA_CB_OPTIONS% --build-platform %BUILD_PLATFORM% --target-platform %HOST_PLATFORM% + +rattler-build.exe build ^ + --recipe "%RECIPE_ROOT%" ^ + -m %CONFIG_FILE% ^ + %EXTRA_CB_OPTIONS% ^ + --target-platform %HOST_PLATFORM% + if !errorlevel! neq 0 exit /b !errorlevel! call :start_group "Inspecting artifacts" + :: inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 -WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir ".\recipe" -m .ci_support\%CONFIG%.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" +WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir "%RECIPE_ROOT%" -m %CONFIG_FILE% || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" + call :end_group :: Prepare some environment variables for the upload step @@ -104,8 +137,6 @@ if /i "%CI%" == "azure" ( ) set "TEMP=%UPLOAD_TEMP%" ) - -:: Validate call :start_group "Validating outputs" validate_recipe_outputs "%FEEDSTOCK_NAME%" if !errorlevel! neq 0 exit /b !errorlevel! @@ -116,7 +147,7 @@ if /i "%UPLOAD_PACKAGES%" == "true" ( call :start_group "Uploading packages" if not exist "%TEMP%\" md "%TEMP%" set "TMP=%TEMP%" - upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml + upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" "%FEEDSTOCK_ROOT%" "%RECIPE_ROOT%" "%CONFIG_FILE%" if !errorlevel! neq 0 exit /b !errorlevel! call :end_group ) diff --git a/README.md b/README.md index 2a9abc4..2c0ab81 100644 --- a/README.md +++ b/README.md @@ -38,73 +38,73 @@ Current build status - + - + - + - + - + - + - + - + - + - + @@ -214,6 +214,7 @@ mamba repoquery depends gst-python --channel conda-forge + About conda-forge ================= @@ -228,9 +229,7 @@ for each of the installable packages. Such a repository is known as a *feedstock A feedstock is made up of a conda recipe (the instructions on what and how to build the package) and the necessary configurations for automatic building using freely available continuous integration services. Thanks to the awesome service provided by -[Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/), -[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), -[Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) +[Azure](https://azure.microsoft.com/en-us/services/devops/) and [GitHub](https://github.com/) it is possible to build and upload installable packages to the [conda-forge](https://anaconda.org/conda-forge) [anaconda.org](https://anaconda.org/) channel for Linux, Windows and OSX respectively. diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml index 98da3fc..043bf38 100644 --- a/recipe/recipe.yaml +++ b/recipe/recipe.yaml @@ -2,7 +2,7 @@ schema_version: 1 context: - version: "1.28.8" + version: "1.28.9" version_arr: ${{ version | split(".") }} gst_version: ${{ "." | join((version_arr[0], version_arr[1])) }} @@ -12,7 +12,7 @@ package: source: url: https://gstreamer.freedesktop.org/src/gst-python/gst-python-${{ version }}.tar.xz - sha256: 6e0d8dd920234b9feeb86003d8f43c1996491f9d8190882329bf56f60a70206e + sha256: e6ad2658fad5b96d99af72ceec7e48995ff792fbda438d34486d189ce047718a build: number: 0
VariantStatus
osx_64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315osx_64_python3.11.____cpython - variant + variant
osx_64_channel_sourcesconda-forgepython3.11.____cpythonosx_64_python3.12.____cpython - variant + variant
osx_64_channel_sourcesconda-forgepython3.12.____cpythonosx_64_python3.13.____cp313 - variant + variant
osx_64_channel_sourcesconda-forgepython3.13.____cp313osx_64_python3.14.____cp314 - variant + variant
osx_64_channel_sourcesconda-forgepython3.14.____cp314osx_64_python3.15.____cp315 - variant + variant
osx_arm64_channel_sourcesconda-forgeconda-forgelabelpython_rcpython3.15.____cp315osx_arm64_python3.11.____cpython - variant + variant
osx_arm64_channel_sourcesconda-forgepython3.11.____cpythonosx_arm64_python3.12.____cpython - variant + variant
osx_arm64_channel_sourcesconda-forgepython3.12.____cpythonosx_arm64_python3.13.____cp313 - variant + variant
osx_arm64_channel_sourcesconda-forgepython3.13.____cp313osx_arm64_python3.14.____cp314 - variant + variant
osx_arm64_channel_sourcesconda-forgepython3.14.____cp314osx_arm64_python3.15.____cp315 - variant + variant