From 70008fa26627846ed8039eb2088919fd8df22d21 Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Thu, 27 Jun 2024 04:24:50 +0000 Subject: [PATCH 1/7] Rebuild for numpy 2.0 TL;DR: The way we build against numpy has changed as of numpy 2.0. This bot PR has updated the recipe to account for the changes (see below for details). The biggest change is that we no longer need to use the oldest available numpy version at build time in order to support old numpy version at runtime - numpy will by default use a compatible ABI for the oldest still-supported numpy versions. Additionally, we no longer need to use `{{ pin_compatible("numpy") }}` as a run requirement - this has been handled for more than two years now by a run-export on the numpy package itself. The migrator will therefore remove any occurrences of this. However, by default, building against numpy 2.0 will assume that the package is compatible with numpy 2.0, which is not necessarily the case. You should check that the upstream package explicitly supports numpy 2.0, otherwise you need to add a `- numpy <2.0dev0` run requirement until that happens (check numpy issue 26191 for an overview of the most important packages). ### To-Dos: * [ ] Match run-requirements for numpy (i.e. check upstream `pyproject.toml` or however the project specifies numpy compatibility) * If upstream is not yet compatible with numpy 2.0, add `numpy <2.0dev0` upper bound under `run:`. * If upstream is already compatible with numpy 2.0, nothing else should be necessary in most cases. * If upstream requires a minimum numpy version newer than 1.19, you can add `numpy >=x.y` under `run:`. * [ ] Remove any remaining occurrences of `{{ pin_compatible("numpy") }}` that the bot may have missed. PS. If the build does not compile anymore, this is almost certainly a sign that the upstream project is not yet ready for numpy 2.0; do not close this PR until a version compatible with numpy 2.0 has been released upstream and on this feedstock (in the meantime, you can keep the bot from reopening this PR in case of git conflicts by marking it as a draft). --- .ci_support/migrations/numpy2.yaml | 48 ++++++++++++++++++++++++++++++ recipe/meta.yaml | 4 +-- 2 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 .ci_support/migrations/numpy2.yaml diff --git a/.ci_support/migrations/numpy2.yaml b/.ci_support/migrations/numpy2.yaml new file mode 100644 index 0000000..4e6d3ca --- /dev/null +++ b/.ci_support/migrations/numpy2.yaml @@ -0,0 +1,48 @@ +__migrator: + build_number: 1 + kind: version + commit_message: | + Rebuild for numpy 2.0 + + TL;DR: The way we build against numpy has changed as of numpy 2.0. This bot + PR has updated the recipe to account for the changes (see below for details). + + The biggest change is that we no longer need to use the oldest available numpy + version at build time in order to support old numpy version at runtime - numpy + will by default use a compatible ABI for the oldest still-supported numpy versions. + + Additionally, we no longer need to use `{{ pin_compatible("numpy") }}` as a + run requirement - this has been handled for more than two years now by a + run-export on the numpy package itself. The migrator will therefore remove + any occurrences of this. + + However, by default, building against numpy 2.0 will assume that the package + is compatible with numpy 2.0, which is not necessarily the case. You should + check that the upstream package explicitly supports numpy 2.0, otherwise you + need to add a `- numpy <2.0dev0` run requirement until that happens (check numpy + issue 26191 for an overview of the most important packages). + + ### To-Dos: + * [ ] Match run-requirements for numpy (i.e. check upstream `pyproject.toml` or however the project specifies numpy compatibility) + * If upstream is not yet compatible with numpy 2.0, add `numpy <2.0dev0` upper bound under `run:`. + * If upstream is already compatible with numpy 2.0, nothing else should be necessary in most cases. + * If upstream requires a minimum numpy version newer than 1.19, you can add `numpy >=x.y` under `run:`. + * [ ] Remove any remaining occurrences of `{{ pin_compatible("numpy") }}` that the bot may have missed. + + PS. If the build does not compile anymore, this is almost certainly a sign that + the upstream project is not yet ready for numpy 2.0; do not close this PR until + a version compatible with numpy 2.0 has been released upstream and on this + feedstock (in the meantime, you can keep the bot from reopening this PR in + case of git conflicts by marking it as a draft). + + migration_number: 1 + +# needs to match length of zip {python, python_impl, numpy} +# as it is in global CBC in order to override it +numpy: + - 1.22 # no py38 support for numpy 2.0 + - 2.0 + - 2.0 + - 2.0 + - 2.0 +migrator_ts: 1713572489.295986 diff --git a/recipe/meta.yaml b/recipe/meta.yaml index bea11b9..7eb759c 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -13,7 +13,7 @@ source: - patches/0001-find_numpy.patch build: - number: 1 + number: 2 skip: True # [win and vc<14] requirements: @@ -23,6 +23,7 @@ requirements: - numpy # [build_platform != target_platform] - pybind11 # [build_platform != target_platform] - {{ compiler('cxx') }} + - {{ stdlib("c") }} - cmake - make # [unix] host: @@ -36,7 +37,6 @@ requirements: - {{ pin_compatible('xtl', max_pin='x.x') }} - {{ pin_compatible('xtensor', max_pin='x.x') }} - {{ pin_compatible('pybind11', max_pin='x') }} - - {{ pin_compatible('numpy') }} test: commands: From 1a44579d0d23fc13d1297807a130d06f7a7f2d04 Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Thu, 27 Jun 2024 04:26:38 +0000 Subject: [PATCH 2/7] MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.36.2, and conda-forge-pinning 2024.06.27.03.50.52 --- .azure-pipelines/azure-pipelines-linux.yml | 21 +++--- .azure-pipelines/azure-pipelines-osx.yml | 37 +++++----- .azure-pipelines/azure-pipelines-win.yml | 18 ++--- ...nux_64_numpy1.22python3.8.____cpython.yaml | 6 ++ ...ux_64_numpy2.0python3.10.____cpython.yaml} | 8 +- ...ux_64_numpy2.0python3.11.____cpython.yaml} | 8 +- ...ux_64_numpy2.0python3.12.____cpython.yaml} | 8 +- ...nux_64_numpy2.0python3.9.____cpython.yaml} | 8 +- ...osx_64_numpy1.22python3.8.____cpython.yaml | 8 +- ...sx_64_numpy2.0python3.10.____cpython.yaml} | 10 ++- ...sx_64_numpy2.0python3.11.____cpython.yaml} | 10 ++- ...sx_64_numpy2.0python3.12.____cpython.yaml} | 10 ++- ...osx_64_numpy2.0python3.9.____cpython.yaml} | 10 ++- ..._arm64_numpy1.22python3.8.____cpython.yaml | 6 ++ ...arm64_numpy2.0python3.10.____cpython.yaml} | 8 +- ...arm64_numpy2.0python3.11.____cpython.yaml} | 8 +- ...arm64_numpy2.0python3.12.____cpython.yaml} | 8 +- ..._arm64_numpy2.0python3.9.____cpython.yaml} | 8 +- ...win_64_numpy1.22python3.8.____cpython.yaml | 2 + ...in_64_numpy2.0python3.10.____cpython.yaml} | 4 +- ...in_64_numpy2.0python3.11.____cpython.yaml} | 4 +- ...in_64_numpy2.0python3.12.____cpython.yaml} | 4 +- ...win_64_numpy2.0python3.9.____cpython.yaml} | 4 +- .gitattributes | 4 +- .scripts/build_steps.sh | 13 +++- .scripts/run_osx_build.sh | 13 +++- .scripts/run_win_build.bat | 9 ++- README.md | 74 +++++++++---------- azure-pipelines.yml | 4 +- build-locally.py | 5 +- 30 files changed, 231 insertions(+), 109 deletions(-) rename .ci_support/{linux_64_numpy1.22python3.10.____cpython.yaml => linux_64_numpy2.0python3.10.____cpython.yaml} (79%) rename .ci_support/{linux_64_numpy1.23python3.11.____cpython.yaml => linux_64_numpy2.0python3.11.____cpython.yaml} (79%) rename .ci_support/{linux_64_numpy1.26python3.12.____cpython.yaml => linux_64_numpy2.0python3.12.____cpython.yaml} (79%) rename .ci_support/{linux_64_numpy1.22python3.9.____cpython.yaml => linux_64_numpy2.0python3.9.____cpython.yaml} (79%) rename .ci_support/{osx_64_numpy1.22python3.10.____cpython.yaml => osx_64_numpy2.0python3.10.____cpython.yaml} (75%) rename .ci_support/{osx_64_numpy1.23python3.11.____cpython.yaml => osx_64_numpy2.0python3.11.____cpython.yaml} (75%) rename .ci_support/{osx_64_numpy1.26python3.12.____cpython.yaml => osx_64_numpy2.0python3.12.____cpython.yaml} (75%) rename .ci_support/{osx_64_numpy1.22python3.9.____cpython.yaml => osx_64_numpy2.0python3.9.____cpython.yaml} (75%) rename .ci_support/{osx_arm64_numpy1.22python3.10.____cpython.yaml => osx_arm64_numpy2.0python3.10.____cpython.yaml} (77%) rename .ci_support/{osx_arm64_numpy1.23python3.11.____cpython.yaml => osx_arm64_numpy2.0python3.11.____cpython.yaml} (77%) rename .ci_support/{osx_arm64_numpy1.26python3.12.____cpython.yaml => osx_arm64_numpy2.0python3.12.____cpython.yaml} (77%) rename .ci_support/{osx_arm64_numpy1.22python3.9.____cpython.yaml => osx_arm64_numpy2.0python3.9.____cpython.yaml} (77%) rename .ci_support/{win_64_numpy1.22python3.10.____cpython.yaml => win_64_numpy2.0python3.10.____cpython.yaml} (91%) rename .ci_support/{win_64_numpy1.23python3.11.____cpython.yaml => win_64_numpy2.0python3.11.____cpython.yaml} (91%) rename .ci_support/{win_64_numpy1.26python3.12.____cpython.yaml => win_64_numpy2.0python3.12.____cpython.yaml} (91%) rename .ci_support/{win_64_numpy1.22python3.9.____cpython.yaml => win_64_numpy2.0python3.9.____cpython.yaml} (91%) diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index e4d3f2b..c06a2c8 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -8,27 +8,28 @@ jobs: vmImage: ubuntu-latest strategy: matrix: - linux_64_numpy1.22python3.10.____cpython: - CONFIG: linux_64_numpy1.22python3.10.____cpython - UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 linux_64_numpy1.22python3.8.____cpython: CONFIG: linux_64_numpy1.22python3.8.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - linux_64_numpy1.22python3.9.____cpython: - CONFIG: linux_64_numpy1.22python3.9.____cpython + linux_64_numpy2.0python3.10.____cpython: + CONFIG: linux_64_numpy2.0python3.10.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_numpy2.0python3.11.____cpython: + CONFIG: linux_64_numpy2.0python3.11.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - linux_64_numpy1.23python3.11.____cpython: - CONFIG: linux_64_numpy1.23python3.11.____cpython + linux_64_numpy2.0python3.12.____cpython: + CONFIG: linux_64_numpy2.0python3.12.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - linux_64_numpy1.26python3.12.____cpython: - CONFIG: linux_64_numpy1.26python3.12.____cpython + linux_64_numpy2.0python3.9.____cpython: + CONFIG: linux_64_numpy2.0python3.9.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 timeoutInMinutes: 360 + variables: {} steps: # configure qemu binfmt-misc running. This allows us to run docker containers diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index fc75a05..15c5551 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -5,40 +5,41 @@ jobs: - job: osx pool: - vmImage: macOS-11 + vmImage: macOS-12 strategy: matrix: - osx_64_numpy1.22python3.10.____cpython: - CONFIG: osx_64_numpy1.22python3.10.____cpython - UPLOAD_PACKAGES: 'True' osx_64_numpy1.22python3.8.____cpython: CONFIG: osx_64_numpy1.22python3.8.____cpython UPLOAD_PACKAGES: 'True' - osx_64_numpy1.22python3.9.____cpython: - CONFIG: osx_64_numpy1.22python3.9.____cpython + osx_64_numpy2.0python3.10.____cpython: + CONFIG: osx_64_numpy2.0python3.10.____cpython UPLOAD_PACKAGES: 'True' - osx_64_numpy1.23python3.11.____cpython: - CONFIG: osx_64_numpy1.23python3.11.____cpython + osx_64_numpy2.0python3.11.____cpython: + CONFIG: osx_64_numpy2.0python3.11.____cpython UPLOAD_PACKAGES: 'True' - osx_64_numpy1.26python3.12.____cpython: - CONFIG: osx_64_numpy1.26python3.12.____cpython + osx_64_numpy2.0python3.12.____cpython: + CONFIG: osx_64_numpy2.0python3.12.____cpython UPLOAD_PACKAGES: 'True' - osx_arm64_numpy1.22python3.10.____cpython: - CONFIG: osx_arm64_numpy1.22python3.10.____cpython + osx_64_numpy2.0python3.9.____cpython: + CONFIG: osx_64_numpy2.0python3.9.____cpython UPLOAD_PACKAGES: 'True' osx_arm64_numpy1.22python3.8.____cpython: CONFIG: osx_arm64_numpy1.22python3.8.____cpython UPLOAD_PACKAGES: 'True' - osx_arm64_numpy1.22python3.9.____cpython: - CONFIG: osx_arm64_numpy1.22python3.9.____cpython + osx_arm64_numpy2.0python3.10.____cpython: + CONFIG: osx_arm64_numpy2.0python3.10.____cpython + UPLOAD_PACKAGES: 'True' + osx_arm64_numpy2.0python3.11.____cpython: + CONFIG: osx_arm64_numpy2.0python3.11.____cpython UPLOAD_PACKAGES: 'True' - osx_arm64_numpy1.23python3.11.____cpython: - CONFIG: osx_arm64_numpy1.23python3.11.____cpython + osx_arm64_numpy2.0python3.12.____cpython: + CONFIG: osx_arm64_numpy2.0python3.12.____cpython UPLOAD_PACKAGES: 'True' - osx_arm64_numpy1.26python3.12.____cpython: - CONFIG: osx_arm64_numpy1.26python3.12.____cpython + osx_arm64_numpy2.0python3.9.____cpython: + CONFIG: osx_arm64_numpy2.0python3.9.____cpython UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 + variables: {} steps: # TODO: Fast finish on azure pipelines? diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index ffb38f2..9795690 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -8,20 +8,20 @@ jobs: vmImage: windows-2022 strategy: matrix: - win_64_numpy1.22python3.10.____cpython: - CONFIG: win_64_numpy1.22python3.10.____cpython - UPLOAD_PACKAGES: 'True' win_64_numpy1.22python3.8.____cpython: CONFIG: win_64_numpy1.22python3.8.____cpython UPLOAD_PACKAGES: 'True' - win_64_numpy1.22python3.9.____cpython: - CONFIG: win_64_numpy1.22python3.9.____cpython + win_64_numpy2.0python3.10.____cpython: + CONFIG: win_64_numpy2.0python3.10.____cpython + UPLOAD_PACKAGES: 'True' + win_64_numpy2.0python3.11.____cpython: + CONFIG: win_64_numpy2.0python3.11.____cpython UPLOAD_PACKAGES: 'True' - win_64_numpy1.23python3.11.____cpython: - CONFIG: win_64_numpy1.23python3.11.____cpython + win_64_numpy2.0python3.12.____cpython: + CONFIG: win_64_numpy2.0python3.12.____cpython UPLOAD_PACKAGES: 'True' - win_64_numpy1.26python3.12.____cpython: - CONFIG: win_64_numpy1.26python3.12.____cpython + win_64_numpy2.0python3.9.____cpython: + CONFIG: win_64_numpy2.0python3.9.____cpython UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 variables: diff --git a/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml b/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml index 583ed7e..33b7fd1 100644 --- a/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -21,5 +25,7 @@ python: target_platform: - linux-64 zip_keys: +- - c_stdlib_version + - cdt_name - - python - numpy diff --git a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_64_numpy2.0python3.10.____cpython.yaml similarity index 79% rename from .ci_support/linux_64_numpy1.22python3.10.____cpython.yaml rename to .ci_support/linux_64_numpy2.0python3.10.____cpython.yaml index ffef1ba..d295843 100644 --- a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_64_numpy2.0python3.10.____cpython.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -11,7 +15,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x @@ -21,5 +25,7 @@ python: target_platform: - linux-64 zip_keys: +- - c_stdlib_version + - cdt_name - - python - numpy diff --git a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_64_numpy2.0python3.11.____cpython.yaml similarity index 79% rename from .ci_support/linux_64_numpy1.23python3.11.____cpython.yaml rename to .ci_support/linux_64_numpy2.0python3.11.____cpython.yaml index b3a05a0..651c1ee 100644 --- a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_64_numpy2.0python3.11.____cpython.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -11,7 +15,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 numpy: -- '1.23' +- '2.0' pin_run_as_build: python: min_pin: x.x @@ -21,5 +25,7 @@ python: target_platform: - linux-64 zip_keys: +- - c_stdlib_version + - cdt_name - - python - numpy diff --git a/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/linux_64_numpy2.0python3.12.____cpython.yaml similarity index 79% rename from .ci_support/linux_64_numpy1.26python3.12.____cpython.yaml rename to .ci_support/linux_64_numpy2.0python3.12.____cpython.yaml index 3027a12..ba21212 100644 --- a/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/linux_64_numpy2.0python3.12.____cpython.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -11,7 +15,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 numpy: -- '1.26' +- '2.0' pin_run_as_build: python: min_pin: x.x @@ -21,5 +25,7 @@ python: target_platform: - linux-64 zip_keys: +- - c_stdlib_version + - cdt_name - - python - numpy diff --git a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_64_numpy2.0python3.9.____cpython.yaml similarity index 79% rename from .ci_support/linux_64_numpy1.22python3.9.____cpython.yaml rename to .ci_support/linux_64_numpy2.0python3.9.____cpython.yaml index 498ec18..4edf2c4 100644 --- a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_64_numpy2.0python3.9.____cpython.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -11,7 +15,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x @@ -21,5 +25,7 @@ python: target_platform: - linux-64 zip_keys: +- - c_stdlib_version + - cdt_name - - python - numpy diff --git a/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml b/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml index 21ad211..deeb260 100644 --- a/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: -- '10.9' +- '10.13' +MACOSX_SDK_VERSION: +- '10.13' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.13' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_64_numpy2.0python3.10.____cpython.yaml similarity index 75% rename from .ci_support/osx_64_numpy1.22python3.10.____cpython.yaml rename to .ci_support/osx_64_numpy2.0python3.10.____cpython.yaml index cd0d61d..f4fc14e 100644 --- a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_64_numpy2.0python3.10.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: -- '10.9' +- '10.13' +MACOSX_SDK_VERSION: +- '10.13' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.13' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - x86_64-apple-darwin13.4.0 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_64_numpy2.0python3.11.____cpython.yaml similarity index 75% rename from .ci_support/osx_64_numpy1.23python3.11.____cpython.yaml rename to .ci_support/osx_64_numpy2.0python3.11.____cpython.yaml index 000f0a0..641fc8a 100644 --- a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_64_numpy2.0python3.11.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: -- '10.9' +- '10.13' +MACOSX_SDK_VERSION: +- '10.13' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.13' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - x86_64-apple-darwin13.4.0 numpy: -- '1.23' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/osx_64_numpy2.0python3.12.____cpython.yaml similarity index 75% rename from .ci_support/osx_64_numpy1.26python3.12.____cpython.yaml rename to .ci_support/osx_64_numpy2.0python3.12.____cpython.yaml index 8ab1998..c0171a1 100644 --- a/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/osx_64_numpy2.0python3.12.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: -- '10.9' +- '10.13' +MACOSX_SDK_VERSION: +- '10.13' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.13' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - x86_64-apple-darwin13.4.0 numpy: -- '1.26' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_64_numpy2.0python3.9.____cpython.yaml similarity index 75% rename from .ci_support/osx_64_numpy1.22python3.9.____cpython.yaml rename to .ci_support/osx_64_numpy2.0python3.9.____cpython.yaml index f5582a2..5eec24c 100644 --- a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_64_numpy2.0python3.9.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: -- '10.9' +- '10.13' +MACOSX_SDK_VERSION: +- '10.13' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.13' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - x86_64-apple-darwin13.4.0 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml b/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml index 35b382d..bd47c60 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_arm64_numpy2.0python3.10.____cpython.yaml similarity index 77% rename from .ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml rename to .ci_support/osx_arm64_numpy2.0python3.10.____cpython.yaml index 7b72f73..3f41789 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy2.0python3.10.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - arm64-apple-darwin20.0.0 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_arm64_numpy2.0python3.11.____cpython.yaml similarity index 77% rename from .ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml rename to .ci_support/osx_arm64_numpy2.0python3.11.____cpython.yaml index 0eacd7f..5738267 100644 --- a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy2.0python3.11.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - arm64-apple-darwin20.0.0 numpy: -- '1.23' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml b/.ci_support/osx_arm64_numpy2.0python3.12.____cpython.yaml similarity index 77% rename from .ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml rename to .ci_support/osx_arm64_numpy2.0python3.12.____cpython.yaml index df3debf..6b2b0d8 100644 --- a/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy2.0python3.12.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - arm64-apple-darwin20.0.0 numpy: -- '1.26' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_arm64_numpy2.0python3.9.____cpython.yaml similarity index 77% rename from .ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml rename to .ci_support/osx_arm64_numpy2.0python3.9.____cpython.yaml index d0320cc..2eb1f6c 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy2.0python3.9.____cpython.yaml @@ -1,5 +1,11 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: @@ -11,7 +17,7 @@ cxx_compiler_version: macos_machine: - arm64-apple-darwin20.0.0 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_numpy1.22python3.8.____cpython.yaml b/.ci_support/win_64_numpy1.22python3.8.____cpython.yaml index 49cdcbe..93bb0d9 100644 --- a/.ci_support/win_64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/win_64_numpy1.22python3.8.____cpython.yaml @@ -1,3 +1,5 @@ +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/win_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/win_64_numpy2.0python3.10.____cpython.yaml similarity index 91% rename from .ci_support/win_64_numpy1.22python3.10.____cpython.yaml rename to .ci_support/win_64_numpy2.0python3.10.____cpython.yaml index 1ab1407..2a983f8 100644 --- a/.ci_support/win_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/win_64_numpy2.0python3.10.____cpython.yaml @@ -1,3 +1,5 @@ +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: @@ -5,7 +7,7 @@ channel_targets: cxx_compiler: - vs2019 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/win_64_numpy2.0python3.11.____cpython.yaml similarity index 91% rename from .ci_support/win_64_numpy1.23python3.11.____cpython.yaml rename to .ci_support/win_64_numpy2.0python3.11.____cpython.yaml index 9f787aa..c601a44 100644 --- a/.ci_support/win_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/win_64_numpy2.0python3.11.____cpython.yaml @@ -1,3 +1,5 @@ +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: @@ -5,7 +7,7 @@ channel_targets: cxx_compiler: - vs2019 numpy: -- '1.23' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/win_64_numpy2.0python3.12.____cpython.yaml similarity index 91% rename from .ci_support/win_64_numpy1.26python3.12.____cpython.yaml rename to .ci_support/win_64_numpy2.0python3.12.____cpython.yaml index 4b9d273..461b39a 100644 --- a/.ci_support/win_64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/win_64_numpy2.0python3.12.____cpython.yaml @@ -1,3 +1,5 @@ +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: @@ -5,7 +7,7 @@ channel_targets: cxx_compiler: - vs2019 numpy: -- '1.26' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/win_64_numpy2.0python3.9.____cpython.yaml similarity index 91% rename from .ci_support/win_64_numpy1.22python3.9.____cpython.yaml rename to .ci_support/win_64_numpy2.0python3.9.____cpython.yaml index 212e3a0..3adc1d8 100644 --- a/.ci_support/win_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/win_64_numpy2.0python3.9.____cpython.yaml @@ -1,3 +1,5 @@ +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: @@ -5,7 +7,7 @@ channel_targets: cxx_compiler: - vs2019 numpy: -- '1.22' +- '2.0' pin_run_as_build: python: min_pin: x.x diff --git a/.gitattributes b/.gitattributes index 7f32763..18f114a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -20,8 +20,8 @@ bld.bat text eol=crlf .travis.yml linguist-generated=true .scripts/* linguist-generated=true .woodpecker.yml linguist-generated=true -LICENSE.txt linguist-generated=true -README.md linguist-generated=true +/LICENSE.txt linguist-generated=true +/README.md linguist-generated=true azure-pipelines.yml linguist-generated=true build-locally.py linguist-generated=true shippable.yml linguist-generated=true diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index beda247..a5836e8 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -34,9 +34,9 @@ CONDARC export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -68,10 +68,17 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then # Drop into an interactive shell /bin/bash else - conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" + + ( startgroup "Inspecting artifacts" ) 2> /dev/null + + # inspect_artifacts was only added in conda-forge-ci-setup 4.6.0 + command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts || echo "inspect_artifacts needs conda-forge-ci-setup >=4.6.0" + + ( endgroup "Inspecting artifacts" ) 2> /dev/null ( startgroup "Validating outputs" ) 2> /dev/null validate_recipe_outputs "${FEEDSTOCK_NAME}" diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 9259eb9..ba0c879 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -26,9 +26,9 @@ export CONDA_SOLVER="libmamba" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 mamba install --update-specs --quiet --yes --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" @@ -81,10 +81,17 @@ else EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" fi - conda mambabuild ./recipe -m ./.ci_support/${CONFIG}.yaml \ + 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.6.0 + command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts || echo "inspect_artifacts needs conda-forge-ci-setup >=4.6.0" + + ( endgroup "Inspecting artifacts" ) 2> /dev/null ( startgroup "Validating outputs" ) 2> /dev/null validate_recipe_outputs "${FEEDSTOCK_NAME}" diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 48734de..65650bf 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -24,7 +24,7 @@ set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" :: Provision the necessary dependencies to build the recipe later echo Installing dependencies -mamba.exe install "python=3.10" pip mamba conda-build boa conda-forge-ci-setup=4 -c conda-forge --strict-channel-priority --yes +mamba.exe install "python=3.10" pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -c conda-forge --strict-channel-priority --yes if !errorlevel! neq 0 exit /b !errorlevel! :: Set basic configuration @@ -55,9 +55,14 @@ call :end_group :: Build the recipe echo Building recipe -conda.exe mambabuild "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% +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.6.0 +WHERE inspect_artifacts >nul 2>nul && inspect_artifacts || echo "inspect_artifacts needs conda-forge-ci-setup >=4.6.0" +call :end_group + :: Prepare some environment variables for the upload step if /i "%CI%" == "github_actions" ( set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" diff --git a/README.md b/README.md index b862d65..4c40ec4 100644 --- a/README.md +++ b/README.md @@ -33,13 +33,6 @@ Current build status
Variant | Status | |
---|---|---|
linux_64_numpy1.22python3.10.____cpython | -- - - - | -|
linux_64_numpy1.22python3.8.____cpython | @@ -47,31 +40,31 @@ Current build status | |
linux_64_numpy1.22python3.9.____cpython | +linux_64_numpy2.0python3.10.____cpython | - + |
linux_64_numpy1.23python3.11.____cpython | +linux_64_numpy2.0python3.11.____cpython | - + |
linux_64_numpy1.26python3.12.____cpython | +linux_64_numpy2.0python3.12.____cpython | - + |
osx_64_numpy1.22python3.10.____cpython | +linux_64_numpy2.0python3.9.____cpython | - + |
osx_64_numpy1.22python3.9.____cpython | +osx_64_numpy2.0python3.10.____cpython | - + |
osx_64_numpy1.23python3.11.____cpython | +osx_64_numpy2.0python3.11.____cpython | - + |
osx_64_numpy1.26python3.12.____cpython | +osx_64_numpy2.0python3.12.____cpython | - + |
osx_arm64_numpy1.22python3.10.____cpython | +osx_64_numpy2.0python3.9.____cpython | - + |
osx_arm64_numpy1.22python3.9.____cpython | +osx_arm64_numpy2.0python3.10.____cpython | - + |
osx_arm64_numpy1.23python3.11.____cpython | +osx_arm64_numpy2.0python3.11.____cpython | - + |
osx_arm64_numpy1.26python3.12.____cpython | +osx_arm64_numpy2.0python3.12.____cpython | - + |
win_64_numpy1.22python3.10.____cpython | +osx_arm64_numpy2.0python3.9.____cpython | - + |
win_64_numpy1.22python3.9.____cpython | +win_64_numpy2.0python3.10.____cpython | ++ + + + | +
win_64_numpy2.0python3.11.____cpython | - + | |
win_64_numpy1.23python3.11.____cpython | +win_64_numpy2.0python3.12.____cpython | - + |
win_64_numpy1.26python3.12.____cpython | +win_64_numpy2.0python3.9.____cpython | - + |