diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml new file mode 100755 index 0000000..a168d05 --- /dev/null +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -0,0 +1,45 @@ +# 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_: + CONFIG: linux_64_ + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + store_build_artifacts: false + timeoutInMinutes: 360 + variables: {} + + steps: + # 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-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml deleted file mode 100755 index e07db4e..0000000 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ /dev/null @@ -1,74 +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: osx - pool: - vmImage: $(VMIMAGE) - strategy: - matrix: - osx_64_python3.10.____cpython: - CONFIG: osx_64_python3.10.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_64_python3.11.____cpython: - CONFIG: osx_64_python3.11.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_64_python3.12.____cpython: - CONFIG: osx_64_python3.12.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_64_python3.13.____cp313: - CONFIG: osx_64_python3.13.____cp313 - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_arm64_python3.10.____cpython: - CONFIG: osx_arm64_python3.10.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_arm64_python3.11.____cpython: - CONFIG: osx_arm64_python3.11.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_arm64_python3.12.____cpython: - CONFIG: osx_arm64_python3.12.____cpython - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - osx_arm64_python3.13.____cp313: - CONFIG: osx_arm64_python3.13.____cp313 - UPLOAD_PACKAGES: 'True' - VMIMAGE: macOS-15 - store_build_artifacts: false - timeoutInMinutes: 360 - variables: {} - - steps: - # TODO: Fast finish on azure pipelines? - - script: | - export CI=azure - export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) - export remote_url=$(Build.Repository.Uri) - export sha=$(Build.SourceVersion) - export OSX_FORCE_SDK_DOWNLOAD="1" - 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_osx_build.sh - displayName: Run OSX 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 deleted file mode 100755 index dd19808..0000000 --- a/.azure-pipelines/azure-pipelines-win.yml +++ /dev/null @@ -1,51 +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: win - pool: - vmImage: windows-2022 - strategy: - matrix: - win_64_python3.10.____cpython: - CONFIG: win_64_python3.10.____cpython - UPLOAD_PACKAGES: 'True' - store_build_artifacts: false - win_64_python3.11.____cpython: - CONFIG: win_64_python3.11.____cpython - UPLOAD_PACKAGES: 'True' - store_build_artifacts: false - win_64_python3.12.____cpython: - CONFIG: win_64_python3.12.____cpython - UPLOAD_PACKAGES: 'True' - store_build_artifacts: false - win_64_python3.13.____cp313: - CONFIG: win_64_python3.13.____cp313 - UPLOAD_PACKAGES: 'True' - store_build_artifacts: false - timeoutInMinutes: 360 - variables: - CONDA_BLD_PATH: D:\\bld\\ - MINIFORGE_HOME: D:\Miniforge - UPLOAD_TEMP: D:\\tmp - - steps: - - - script: | - call ".scripts\run_win_build.bat" - displayName: Run Windows build - env: - MINIFORGE_HOME: $(MINIFORGE_HOME) - CONDA_BLD_PATH: $(CONDA_BLD_PATH) - PYTHONUNBUFFERED: 1 - CONFIG: $(CONFIG) - CI: azure - 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/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml new file mode 100644 index 0000000..04f0b1b --- /dev/null +++ b/.ci_support/linux_64_.yaml @@ -0,0 +1,8 @@ +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-x86_64:alma9 +python_min: +- '3.10' diff --git a/.ci_support/linux_64_python3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml deleted file mode 100644 index 9e2cb56..0000000 --- a/.ci_support/linux_64_python3.10.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-64 diff --git a/.ci_support/linux_64_python3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml deleted file mode 100644 index d081edb..0000000 --- a/.ci_support/linux_64_python3.11.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-64 diff --git a/.ci_support/linux_64_python3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml deleted file mode 100644 index e83cf5b..0000000 --- a/.ci_support/linux_64_python3.12.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-64 diff --git a/.ci_support/linux_64_python3.13.____cp313.yaml b/.ci_support/linux_64_python3.13.____cp313.yaml deleted file mode 100644 index 11da9f2..0000000 --- a/.ci_support/linux_64_python3.13.____cp313.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-64 diff --git a/.ci_support/linux_aarch64_python3.10.____cpython.yaml b/.ci_support/linux_aarch64_python3.10.____cpython.yaml deleted file mode 100644 index f364cbb..0000000 --- a/.ci_support/linux_aarch64_python3.10.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-aarch64 diff --git a/.ci_support/linux_aarch64_python3.11.____cpython.yaml b/.ci_support/linux_aarch64_python3.11.____cpython.yaml deleted file mode 100644 index 7d0f02f..0000000 --- a/.ci_support/linux_aarch64_python3.11.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-aarch64 diff --git a/.ci_support/linux_aarch64_python3.12.____cpython.yaml b/.ci_support/linux_aarch64_python3.12.____cpython.yaml deleted file mode 100644 index 49bc2b5..0000000 --- a/.ci_support/linux_aarch64_python3.12.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-aarch64 diff --git a/.ci_support/linux_aarch64_python3.13.____cp313.yaml b/.ci_support/linux_aarch64_python3.13.____cp313.yaml deleted file mode 100644 index 072baaf..0000000 --- a/.ci_support/linux_aarch64_python3.13.____cp313.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-aarch64 diff --git a/.ci_support/linux_ppc64le_python3.10.____cpython.yaml b/.ci_support/linux_ppc64le_python3.10.____cpython.yaml deleted file mode 100644 index 493da02..0000000 --- a/.ci_support/linux_ppc64le_python3.10.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-ppc64le diff --git a/.ci_support/linux_ppc64le_python3.11.____cpython.yaml b/.ci_support/linux_ppc64le_python3.11.____cpython.yaml deleted file mode 100644 index 4da81c9..0000000 --- a/.ci_support/linux_ppc64le_python3.11.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-ppc64le diff --git a/.ci_support/linux_ppc64le_python3.12.____cpython.yaml b/.ci_support/linux_ppc64le_python3.12.____cpython.yaml deleted file mode 100644 index 13170d2..0000000 --- a/.ci_support/linux_ppc64le_python3.12.____cpython.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-ppc64le diff --git a/.ci_support/linux_ppc64le_python3.13.____cp313.yaml b/.ci_support/linux_ppc64le_python3.13.____cp313.yaml deleted file mode 100644 index 4571744..0000000 --- a/.ci_support/linux_ppc64le_python3.13.____cp313.yaml +++ /dev/null @@ -1,22 +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 -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 -target_platform: -- linux-ppc64le diff --git a/.ci_support/osx_64_python3.10.____cpython.yaml b/.ci_support/osx_64_python3.10.____cpython.yaml deleted file mode 100644 index 7f075e4..0000000 --- a/.ci_support/osx_64_python3.10.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- x86_64-apple-darwin13.4.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -target_platform: -- osx-64 diff --git a/.ci_support/osx_64_python3.11.____cpython.yaml b/.ci_support/osx_64_python3.11.____cpython.yaml deleted file mode 100644 index 39f2610..0000000 --- a/.ci_support/osx_64_python3.11.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- x86_64-apple-darwin13.4.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -target_platform: -- osx-64 diff --git a/.ci_support/osx_64_python3.12.____cpython.yaml b/.ci_support/osx_64_python3.12.____cpython.yaml deleted file mode 100644 index 8d7b0f4..0000000 --- a/.ci_support/osx_64_python3.12.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- x86_64-apple-darwin13.4.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.12.* *_cpython -target_platform: -- osx-64 diff --git a/.ci_support/osx_64_python3.13.____cp313.yaml b/.ci_support/osx_64_python3.13.____cp313.yaml deleted file mode 100644 index 5de7380..0000000 --- a/.ci_support/osx_64_python3.13.____cp313.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- x86_64-apple-darwin13.4.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.13.* *_cp313 -target_platform: -- osx-64 diff --git a/.ci_support/osx_arm64_python3.10.____cpython.yaml b/.ci_support/osx_arm64_python3.10.____cpython.yaml deleted file mode 100644 index a75553d..0000000 --- a/.ci_support/osx_arm64_python3.10.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- arm64-apple-darwin20.0.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -target_platform: -- osx-arm64 diff --git a/.ci_support/osx_arm64_python3.11.____cpython.yaml b/.ci_support/osx_arm64_python3.11.____cpython.yaml deleted file mode 100644 index 7ccdb9a..0000000 --- a/.ci_support/osx_arm64_python3.11.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- arm64-apple-darwin20.0.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -target_platform: -- osx-arm64 diff --git a/.ci_support/osx_arm64_python3.12.____cpython.yaml b/.ci_support/osx_arm64_python3.12.____cpython.yaml deleted file mode 100644 index 18ff7b3..0000000 --- a/.ci_support/osx_arm64_python3.12.____cpython.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- arm64-apple-darwin20.0.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.12.* *_cpython -target_platform: -- osx-arm64 diff --git a/.ci_support/osx_arm64_python3.13.____cp313.yaml b/.ci_support/osx_arm64_python3.13.____cp313.yaml deleted file mode 100644 index 905782e..0000000 --- a/.ci_support/osx_arm64_python3.13.____cp313.yaml +++ /dev/null @@ -1,26 +0,0 @@ -MACOSX_DEPLOYMENT_TARGET: -- '11.0' -MACOSX_SDK_VERSION: -- '11.0' -c_compiler: -- clang -c_compiler_version: -- '19' -c_stdlib: -- macosx_deployment_target -c_stdlib_version: -- '11.0' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -macos_machine: -- arm64-apple-darwin20.0.0 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.13.* *_cp313 -target_platform: -- osx-arm64 diff --git a/.ci_support/win_64_python3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml deleted file mode 100644 index c3bbb74..0000000 --- a/.ci_support/win_64_python3.10.____cpython.yaml +++ /dev/null @@ -1,16 +0,0 @@ -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -target_platform: -- win-64 diff --git a/.ci_support/win_64_python3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml deleted file mode 100644 index 24e1caa..0000000 --- a/.ci_support/win_64_python3.11.____cpython.yaml +++ /dev/null @@ -1,16 +0,0 @@ -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.11.* *_cpython -target_platform: -- win-64 diff --git a/.ci_support/win_64_python3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml deleted file mode 100644 index e205df2..0000000 --- a/.ci_support/win_64_python3.12.____cpython.yaml +++ /dev/null @@ -1,16 +0,0 @@ -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.12.* *_cpython -target_platform: -- win-64 diff --git a/.ci_support/win_64_python3.13.____cp313.yaml b/.ci_support/win_64_python3.13.____cp313.yaml deleted file mode 100644 index 1bd23ab..0000000 --- a/.ci_support/win_64_python3.13.____cp313.yaml +++ /dev/null @@ -1,16 +0,0 @@ -c_compiler: -- vs2022 -c_stdlib: -- vs -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.13.* *_cp313 -target_platform: -- win-64 diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 4006d0a..b4e6e61 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -4,174 +4,12 @@ name: Build conda package on: - push: - - pull_request: - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} - cancel-in-progress: true + workflow_dispatch: 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 - - 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 - - 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 - - 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 - - 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 - - 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 - - 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 - - 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 - - CONFIG: linux_ppc64le_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 - - CONFIG: linux_ppc64le_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 - - CONFIG: linux_ppc64le_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 - - CONFIG: linux_ppc64le_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 + name: Disabled build + runs-on: ubuntu-slim + if: false steps: - - - name: Checkout code - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - name: Build on Linux - id: build-linux - if: matrix.os == 'ubuntu' - env: - CONFIG: ${{ matrix.CONFIG }} - UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }} - DOCKER_IMAGE: ${{ matrix.DOCKER_IMAGE }} - CI: github_actions - CONDA_FORGE_DOCKER_RUN_ARGS: "${{ matrix.CONDA_FORGE_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 - echo "::endgroup::" - ./.scripts/run_docker_build.sh - - - name: Build on macOS - id: build-macos - if: matrix.os == 'macos' - env: - 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 - ./.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: - # default value; make it explicit, as it needs to match with artefact - # generation below. Not configurable for now, can be revisited later - CONDA_BLD_PATH: C:\bld - MINIFORGE_HOME: ${{ contains(runner.arch, 'ARM') && 'C' || 'D' }}:\Miniforge - 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 + - run: exit 0 diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh deleted file mode 100755 index df767d0..0000000 --- a/.scripts/run_osx_build.sh +++ /dev/null @@ -1,135 +0,0 @@ -#!/usr/bin/env bash - -# -*- mode: jinja-shell -*- - -source .scripts/logging_utils.sh - -set -xe - -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" -else - osx_arch="osx-64" -fi -MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" -MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" -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 python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -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 -( endgroup "Provisioning base env with micromamba" ) 2> /dev/null - -( startgroup "Configuring conda" ) 2> /dev/null -echo "Activating environment" -source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" -conda activate base -export CONDA_SOLVER="libmamba" -export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 - - - - - -echo -e "\n\nSetting up the condarc and mangling the compiler." -setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml - -if [[ "${CI:-}" != "" ]]; then - mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml -fi - -if [[ "${CI:-}" != "" ]]; then - echo -e "\n\nMangling 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" -fi - -if [[ "${sha:-}" == "" ]]; then - 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 -else - if tmpf=$(mktemp -p "$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." -source run_conda_forge_build_setup - - - -( endgroup "Configuring conda" ) 2> /dev/null - -echo -e "\n\nMaking the build clobber file" -make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml - -if [[ -f LICENSE.txt ]]; then - cp LICENSE.txt "recipe/recipe-scripts-license.txt" -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 -m ./.ci_support/${CONFIG}.yaml \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file ./.ci_support/clobber_${CONFIG}.yaml - - # Drop into an interactive shell - /bin/bash -else - - conda-build ./recipe -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" - - ( 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 - - ( 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 - - ( endgroup "Uploading packages" ) 2> /dev/null -fi diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat deleted file mode 100755 index 2b9fd75..0000000 --- a/.scripts/run_win_build.bat +++ /dev/null @@ -1,146 +0,0 @@ -:: 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. - -:: INPUTS (required environment variables) -:: CONFIG: name of the .ci_support/*.yaml file for this job -:: CI: azure, github_actions, or unset -:: MINIFORGE_HOME: where to install the base conda environment -:: UPLOAD_PACKAGES: true or false -:: UPLOAD_ON_BRANCH: true or false - -setlocal enableextensions enabledelayedexpansion - -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%" -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%')" -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" -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 -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! -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 -CALL run_conda_forge_build_setup - - -if !errorlevel! neq 0 exit /b !errorlevel! - -if EXIST LICENSE.txt ( - echo Copying feedstock license - copy LICENSE.txt "recipe\\recipe-scripts-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%" -) - -call :end_group - -:: Build the recipe -echo Building recipe -conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% -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" -call :end_group - -:: Prepare some environment variables for the upload step -if /i "%CI%" == "github_actions" ( - set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" - set "GIT_BRANCH=%GITHUB_REF:refs/heads/=%" - if /i "%GITHUB_EVENT_NAME%" == "pull_request" ( - set "IS_PR_BUILD=True" - ) else ( - set "IS_PR_BUILD=False" - ) - set "TEMP=%RUNNER_TEMP%" -) -if /i "%CI%" == "azure" ( - set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" - set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" - if /i "%BUILD_REASON%" == "PullRequest" ( - set "IS_PR_BUILD=True" - ) else ( - set "IS_PR_BUILD=False" - ) - set "TEMP=%UPLOAD_TEMP%" -) - -:: Validate -call :start_group "Validating outputs" -validate_recipe_outputs "%FEEDSTOCK_NAME%" -if !errorlevel! neq 0 exit /b !errorlevel! -call :end_group - -if /i "%UPLOAD_PACKAGES%" == "true" ( - if /i "%IS_PR_BUILD%" == "false" ( - 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 - if !errorlevel! neq 0 exit /b !errorlevel! - call :end_group - ) -) - -exit - -:: Logging subroutines - -:start_group -if /i "%CI%" == "github_actions" ( - echo ::group::%~1 - exit /b -) -if /i "%CI%" == "azure" ( - echo ##[group]%~1 - exit /b -) -echo %~1 -exit /b - -:end_group -if /i "%CI%" == "github_actions" ( - echo ::endgroup:: - exit /b -) -if /i "%CI%" == "azure" ( - echo ##[endgroup] - exit /b -) -exit /b diff --git a/README.md b/README.md index e6513e5..116275a 100644 --- a/README.md +++ b/README.md @@ -32,196 +32,20 @@ Key Features: Perfect for scientific computing, large model serving, and heterogeneous Python/CUDA workflows where maximum flexibility and minimal latency matter. +Note for noarch builds: +- Core functionality works without the native C extension. +- For maximum performance (sub-ms dispatching), install the platform-specific build instead. + Current build status ==================== - - - - +
Azure
All platforms: -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
VariantStatus
linux_64_python3.10.____cpython - - variant - -
linux_64_python3.11.____cpython - - variant - -
linux_64_python3.12.____cpython - - variant - -
linux_64_python3.13.____cp313 - - variant - -
linux_aarch64_python3.10.____cpython - - variant - -
linux_aarch64_python3.11.____cpython - - variant - -
linux_aarch64_python3.12.____cpython - - variant - -
linux_aarch64_python3.13.____cp313 - - variant - -
linux_ppc64le_python3.10.____cpython - - variant - -
linux_ppc64le_python3.11.____cpython - - variant - -
linux_ppc64le_python3.12.____cpython - - variant - -
linux_ppc64le_python3.13.____cp313 - - variant - -
osx_64_python3.10.____cpython - - variant - -
osx_64_python3.11.____cpython - - variant - -
osx_64_python3.12.____cpython - - variant - -
osx_64_python3.13.____cp313 - - variant - -
osx_arm64_python3.10.____cpython - - variant - -
osx_arm64_python3.11.____cpython - - variant - -
osx_arm64_python3.12.____cpython - - variant - -
osx_arm64_python3.13.____cp313 - - variant - -
win_64_python3.10.____cpython - - variant - -
win_64_python3.11.____cpython - - variant - -
win_64_python3.12.____cpython - - variant - -
win_64_python3.13.____cp313 - - variant - -
-
+ + +
diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 03594e4..aa63c81 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-osx.yml - - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file + - template: ./.azure-pipelines/azure-pipelines-linux.yml \ No newline at end of file diff --git a/conda-forge.yml b/conda-forge.yml index 5cb17e0..652a6eb 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,19 +1,11 @@ github: branch_name: main tooling_branch_name: main - conda_build: error_overlinking: true - conda_forge_output_validation: true - +# For noarch, just specify ONE build platform (typically linux_64) +# The package will automatically work on all platforms provider: - linux_aarch64: azure - linux_ppc64le: azure - win: azure - osx_arm64: azure # <--- ENABLE THIS - -build_platform: - linux_aarch64: linux_64 - linux_ppc64le: linux_64 - osx_arm64: osx_64 # <--- ADD THIS (Forces Cross-Compilation on Intel Runner) + linux: azure +# No build_platform section needed for noarch diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 348eb09..e6ede42 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,6 @@ {% set name = "omnipkg" %} -{% set version = "3.3.1" %} +{% set version = "3.3.2" %} +{% set python_min = "3.10" %} package: name: {{ name|lower }} @@ -7,14 +8,15 @@ package: source: url: https://pypi.org/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz - sha256: 74ad69bcfa403b512bd184a0a22815c691e01c12cb36ca0dcc4c93d168cfae45 + sha256: 57232b598452e41bb8f7b2778fc2c4382e18bea43a04b874d06eb40233366f40 build: - number: 1 - script: - - python -m pip install . --no-deps --no-build-isolation -vv # [unix] - - python -m pip install . --no-deps --no-build-isolation -vv # [win] - + number: 0 + noarch: python + script: + - export OMNIPKG_SKIP_C_EXT=1 # [unix] + - set OMNIPKG_SKIP_C_EXT=1 # [win] + - python -m pip install . --no-deps --no-build-isolation -vv entry_points: - omnipkg = omnipkg.dispatcher:main - 8pkg = omnipkg.dispatcher:main @@ -22,43 +24,36 @@ build: - OMNIPKG = omnipkg.dispatcher:main requirements: - build: - - {{ compiler('c') }} - - {{ stdlib("c") }} - - python # [build_platform != target_platform] - - cross-python_{{ target_platform }} # [build_platform != target_platform] host: - - python + - python {{ python_min }} - pip - - setuptools >=50.0,<70.0 + - setuptools >=61.0 - wheel run: - - python # Conda-forge actively supports 3.9 through 3.13 + - python >={{ python_min }} - requests >=2.20 - psutil >=5.9.0 - typer >=0.4.0 - rich >=10.0.0 - filelock >=3.20.3 - packaging >=23.0 - - tomli >=1.0.0 # [py<311] - - typing_extensions >=4.0.0 # [py<310] + - tomli >=1.0.0 + - typing_extensions >=4.0.0 - authlib >=1.6.9 - aiohttp >=3.13.5 - - cryptography >=46.0.7 # [not ppc64le] - pip-audit >=2.0.0 - - uv >=0.9.6 # [not ppc64le] - urllib3 >=2.6.3 - flask >=3.0.3 - - flask-cors >=3.0 + - flask-cors >=3.0 test: - # This selector skips tests when building osx-arm64 on an Intel runner requires: - pip + - python {{ python_min }} imports: - - omnipkg # [build_platform == target_platform] + - omnipkg commands: - - omnipkg --version # [build_platform == target_platform] + - omnipkg --version about: home: https://omnipkg.pages.dev/ @@ -67,7 +62,7 @@ about: license_file: LICENSE summary: 'The Ultimate Python Dependency Resolver. One environment. Infinite packages. Zero conflicts.' description: | - OmniPkg is a distributed Python runtime hypervisor that enables concurrent, + OmniPkg is a distributed Python runtime hypervisor that enables concurrent, zero-copy multi-framework orchestration across multiple Python versions and toolchains. Platform Support: @@ -85,6 +80,10 @@ about: - True zero-copy tensor passing across different Python versions, PyTorch/CUDA versions, and frameworks — no JSON serialization or process boundaries required Perfect for scientific computing, large model serving, and heterogeneous Python/CUDA workflows where maximum flexibility and minimal latency matter. + + Note for noarch builds: + - Core functionality works without the native C extension. + - For maximum performance (sub-ms dispatching), install the platform-specific build instead. doc_url: https://omnipkg.readthedocs.io/en/latest/ dev_url: https://github.com/1minds3t/omnipkg