diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index e010c9d4..7e35d99e 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -24,6 +24,50 @@ jobs: CONFIG: linux_64_numpy1.19python3.9.____cpythonpython_implcpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_64_numpy1.21python3.10.____cpythonpython_implcpython: + CONFIG: linux_64_numpy1.21python3.10.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython: + CONFIG: linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython: + CONFIG: linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy: + CONFIG: linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython: + CONFIG: linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython: + CONFIG: linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython: + CONFIG: linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython: + CONFIG: linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy: + CONFIG: linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython: + CONFIG: linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython: + CONFIG: linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 timeoutInMinutes: 360 steps: diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index db9e32e6..1faf5896 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -20,11 +20,17 @@ jobs: osx_64_numpy1.19python3.9.____cpythonpython_implcpython: CONFIG: osx_64_numpy1.19python3.9.____cpythonpython_implcpython UPLOAD_PACKAGES: 'True' - osx_arm64_python3.8.____cpython: - CONFIG: osx_arm64_python3.8.____cpython + osx_64_numpy1.21python3.10.____cpythonpython_implcpython: + CONFIG: osx_64_numpy1.21python3.10.____cpythonpython_implcpython UPLOAD_PACKAGES: 'True' - osx_arm64_python3.9.____cpython: - CONFIG: osx_arm64_python3.9.____cpython + osx_arm64_numpy1.19python3.8.____cpython: + CONFIG: osx_arm64_numpy1.19python3.8.____cpython + UPLOAD_PACKAGES: 'True' + osx_arm64_numpy1.19python3.9.____cpython: + CONFIG: osx_arm64_numpy1.19python3.9.____cpython + UPLOAD_PACKAGES: 'True' + osx_arm64_numpy1.21python3.10.____cpython: + CONFIG: osx_arm64_numpy1.21python3.10.____cpython UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index 57814956..8c3f9c69 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -20,6 +20,9 @@ jobs: win_64_numpy1.19python3.9.____cpythonpython_implcpython: CONFIG: win_64_numpy1.19python3.9.____cpythonpython_implcpython UPLOAD_PACKAGES: 'True' + win_64_numpy1.21python3.10.____cpythonpython_implcpython: + CONFIG: win_64_numpy1.21python3.10.____cpythonpython_implcpython + UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 variables: CONDA_BLD_PATH: D:\\bld\\ diff --git a/.ci_support/linux_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml b/.ci_support/linux_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml new file mode 100644 index 00000000..5d469ecf --- /dev/null +++ b/.ci_support/linux_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml @@ -0,0 +1,38 @@ +c_compiler: +- gcc +c_compiler_version: +- '9' +cdt_name: +- cos6 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '9' +docker_image: +- quay.io/condaforge/linux-anvil-comp7 +libcblas: +- 3.8 *netlib +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- linux-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - cdt_name + - docker_image +- - python + - numpy + - python_impl diff --git a/.ci_support/linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython.yaml b/.ci_support/linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython.yaml index 903912b8..1a924574 100644 --- a/.ci_support/linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython.yaml @@ -17,7 +17,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-aarch64 +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython.yaml b/.ci_support/linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython.yaml index 4ee06f15..10c0405f 100644 --- a/.ci_support/linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython.yaml @@ -17,7 +17,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-aarch64 +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy.yaml b/.ci_support/linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy.yaml index 118fc6ec..8226c9c0 100644 --- a/.ci_support/linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy.yaml +++ b/.ci_support/linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy.yaml @@ -17,7 +17,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-aarch64 +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython.yaml b/.ci_support/linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython.yaml index 7b23a2d8..2e94dcf8 100644 --- a/.ci_support/linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython.yaml @@ -17,7 +17,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-aarch64 +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython.yaml b/.ci_support/linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython.yaml new file mode 100644 index 00000000..8c7d4839 --- /dev/null +++ b/.ci_support/linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython.yaml @@ -0,0 +1,40 @@ +BUILD: +- aarch64-conda_cos7-linux-gnu +c_compiler: +- gcc +c_compiler_version: +- '9' +cdt_arch: +- aarch64 +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '9' +docker_image: +- quay.io/condaforge/linux-anvil-comp7 +libcblas: +- 3.8 *netlib +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- linux-aarch64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy + - python_impl diff --git a/.ci_support/linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython.yaml b/.ci_support/linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython.yaml index 956d50cc..077d541a 100644 --- a/.ci_support/linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-ppc64le +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython.yaml b/.ci_support/linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython.yaml index 8f8fdf93..7905ae7d 100644 --- a/.ci_support/linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-ppc64le +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy.yaml b/.ci_support/linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy.yaml index d7ccf6d3..8e89cead 100644 --- a/.ci_support/linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy.yaml +++ b/.ci_support/linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-ppc64le +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython.yaml b/.ci_support/linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython.yaml index 2ee5ed13..538c2a52 100644 --- a/.ci_support/linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '9' docker_image: -- quay.io/condaforge/linux-anvil-ppc64le +- quay.io/condaforge/linux-anvil-comp7 libcblas: - 3.8 *netlib numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython.yaml b/.ci_support/linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython.yaml new file mode 100644 index 00000000..0fd4a732 --- /dev/null +++ b/.ci_support/linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython.yaml @@ -0,0 +1,36 @@ +c_compiler: +- gcc +c_compiler_version: +- '9' +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '9' +docker_image: +- quay.io/condaforge/linux-anvil-comp7 +libcblas: +- 3.8 *netlib +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- linux-ppc64le +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy + - python_impl diff --git a/.ci_support/migrations/python310.yaml b/.ci_support/migrations/python310.yaml new file mode 100644 index 00000000..f61ae7ad --- /dev/null +++ b/.ci_support/migrations/python310.yaml @@ -0,0 +1,33 @@ +migrator_ts: 1634137107 +__migrator: + migration_number: 1 + operation: key_add + primary_key: python + ordering: + python: + - 3.6.* *_cpython + - 3.7.* *_cpython + - 3.8.* *_cpython + - 3.9.* *_cpython + - 3.10.* *_cpython # new entry + - 3.6.* *_73_pypy + - 3.7.* *_73_pypy + paused: false + longterm: True + pr_limit: 40 + exclude: + # this shouldn't attempt to modify the python feedstocks + - python + - pypy3.6 + - pypy-meta + - cross-python + - python_abi + exclude_pinned_pkgs: false + +python: + - 3.10.* *_cpython +# additional entries to add for zip_keys +numpy: + - 1.21 +python_impl: + - cpython diff --git a/.ci_support/osx_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml b/.ci_support/osx_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml new file mode 100644 index 00000000..6cf5378a --- /dev/null +++ b/.ci_support/osx_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml @@ -0,0 +1,38 @@ +MACOSX_DEPLOYMENT_TARGET: +- '10.9' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +libcblas: +- 3.8 *netlib +llvm_openmp: +- '11' +macos_machine: +- x86_64-apple-darwin13.4.0 +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- osx-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy + - python_impl diff --git a/.ci_support/osx_arm64_python3.8.____cpython.yaml b/.ci_support/osx_arm64_numpy1.19python3.8.____cpython.yaml similarity index 100% rename from .ci_support/osx_arm64_python3.8.____cpython.yaml rename to .ci_support/osx_arm64_numpy1.19python3.8.____cpython.yaml diff --git a/.ci_support/osx_arm64_python3.9.____cpython.yaml b/.ci_support/osx_arm64_numpy1.19python3.9.____cpython.yaml similarity index 100% rename from .ci_support/osx_arm64_python3.9.____cpython.yaml rename to .ci_support/osx_arm64_numpy1.19python3.9.____cpython.yaml diff --git a/.ci_support/osx_arm64_numpy1.21python3.10.____cpython.yaml b/.ci_support/osx_arm64_numpy1.21python3.10.____cpython.yaml new file mode 100644 index 00000000..4f419f0e --- /dev/null +++ b/.ci_support/osx_arm64_numpy1.21python3.10.____cpython.yaml @@ -0,0 +1,38 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +libcblas: +- 3.9 *netlib +llvm_openmp: +- '11' +macos_machine: +- arm64-apple-darwin20.0.0 +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- osx-arm64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy + - python_impl diff --git a/.ci_support/win_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml b/.ci_support/win_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml new file mode 100644 index 00000000..6715d48b --- /dev/null +++ b/.ci_support/win_64_numpy1.21python3.10.____cpythonpython_implcpython.yaml @@ -0,0 +1,26 @@ +c_compiler: +- vs2017 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- vs2017 +libcblas: +- 3.8 *netlib +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +python_impl: +- cpython +target_platform: +- win-64 +zip_keys: +- - python + - numpy + - python_impl diff --git a/.drone.yml b/.drone.yml deleted file mode 100644 index 6de80373..00000000 --- a/.drone.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -kind: pipeline -name: linux_aarch64_numpy1.18python3.7.___h1cadc65bfe - -platform: - os: linux - arch: arm64 - -steps: -- name: Install and build - image: quay.io/condaforge/linux-anvil-aarch64 - environment: - CONFIG: linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython - UPLOAD_PACKAGES: True - PLATFORM: linux-aarch64 - BINSTAR_TOKEN: - from_secret: BINSTAR_TOKEN - FEEDSTOCK_TOKEN: - from_secret: FEEDSTOCK_TOKEN - STAGING_BINSTAR_TOKEN: - from_secret: STAGING_BINSTAR_TOKEN - commands: - - export FEEDSTOCK_ROOT="$DRONE_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - export GIT_BRANCH="$DRONE_BRANCH" - - export FEEDSTOCK_NAME=$(basename ${DRONE_REPO_NAME}) - - export IS_PR_BUILD=$(if [[ "$${DRONE_PULL_REQUEST:-}" == "" ]]; then echo "False"; else echo "True"; fi) - - sed -i '$ichown -R conda:conda "$FEEDSTOCK_ROOT"' /opt/docker/bin/entrypoint - - /opt/docker/bin/entrypoint $FEEDSTOCK_ROOT/.scripts/build_steps.sh - - echo "Done building" - ---- -kind: pipeline -name: linux_aarch64_numpy1.18python3.8.___ha3ae6cc14c - -platform: - os: linux - arch: arm64 - -steps: -- name: Install and build - image: quay.io/condaforge/linux-anvil-aarch64 - environment: - CONFIG: linux_aarch64_numpy1.18python3.8.____cpythonpython_implcpython - UPLOAD_PACKAGES: True - PLATFORM: linux-aarch64 - BINSTAR_TOKEN: - from_secret: BINSTAR_TOKEN - FEEDSTOCK_TOKEN: - from_secret: FEEDSTOCK_TOKEN - STAGING_BINSTAR_TOKEN: - from_secret: STAGING_BINSTAR_TOKEN - commands: - - export FEEDSTOCK_ROOT="$DRONE_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - export GIT_BRANCH="$DRONE_BRANCH" - - export FEEDSTOCK_NAME=$(basename ${DRONE_REPO_NAME}) - - export IS_PR_BUILD=$(if [[ "$${DRONE_PULL_REQUEST:-}" == "" ]]; then echo "False"; else echo "True"; fi) - - sed -i '$ichown -R conda:conda "$FEEDSTOCK_ROOT"' /opt/docker/bin/entrypoint - - /opt/docker/bin/entrypoint $FEEDSTOCK_ROOT/.scripts/build_steps.sh - - echo "Done building" - ---- -kind: pipeline -name: linux_aarch64_numpy1.19python3.7.___hdc30312686 - -platform: - os: linux - arch: arm64 - -steps: -- name: Install and build - image: quay.io/condaforge/linux-anvil-aarch64 - environment: - CONFIG: linux_aarch64_numpy1.19python3.7.____73_pypypython_implpypy - UPLOAD_PACKAGES: True - PLATFORM: linux-aarch64 - BINSTAR_TOKEN: - from_secret: BINSTAR_TOKEN - FEEDSTOCK_TOKEN: - from_secret: FEEDSTOCK_TOKEN - STAGING_BINSTAR_TOKEN: - from_secret: STAGING_BINSTAR_TOKEN - commands: - - export FEEDSTOCK_ROOT="$DRONE_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - export GIT_BRANCH="$DRONE_BRANCH" - - export FEEDSTOCK_NAME=$(basename ${DRONE_REPO_NAME}) - - export IS_PR_BUILD=$(if [[ "$${DRONE_PULL_REQUEST:-}" == "" ]]; then echo "False"; else echo "True"; fi) - - sed -i '$ichown -R conda:conda "$FEEDSTOCK_ROOT"' /opt/docker/bin/entrypoint - - /opt/docker/bin/entrypoint $FEEDSTOCK_ROOT/.scripts/build_steps.sh - - echo "Done building" - ---- -kind: pipeline -name: linux_aarch64_numpy1.19python3.9.___hb72e2bb7de - -platform: - os: linux - arch: arm64 - -steps: -- name: Install and build - image: quay.io/condaforge/linux-anvil-aarch64 - environment: - CONFIG: linux_aarch64_numpy1.19python3.9.____cpythonpython_implcpython - UPLOAD_PACKAGES: True - PLATFORM: linux-aarch64 - BINSTAR_TOKEN: - from_secret: BINSTAR_TOKEN - FEEDSTOCK_TOKEN: - from_secret: FEEDSTOCK_TOKEN - STAGING_BINSTAR_TOKEN: - from_secret: STAGING_BINSTAR_TOKEN - commands: - - export FEEDSTOCK_ROOT="$DRONE_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - export GIT_BRANCH="$DRONE_BRANCH" - - export FEEDSTOCK_NAME=$(basename ${DRONE_REPO_NAME}) - - export IS_PR_BUILD=$(if [[ "$${DRONE_PULL_REQUEST:-}" == "" ]]; then echo "False"; else echo "True"; fi) - - sed -i '$ichown -R conda:conda "$FEEDSTOCK_ROOT"' /opt/docker/bin/entrypoint - - /opt/docker/bin/entrypoint $FEEDSTOCK_ROOT/.scripts/build_steps.sh - - echo "Done building" - diff --git a/.gitattributes b/.gitattributes index 9060b272..ce52713a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -18,6 +18,7 @@ bld.bat text eol=crlf .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/.travis.yml b/.travis.yml deleted file mode 100644 index f8ea2b62..00000000 --- a/.travis.yml +++ /dev/null @@ -1,37 +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. - -language: generic - - - -matrix: - include: - - env: CONFIG=linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le - os: linux - arch: ppc64le - dist: focal - - - env: CONFIG=linux_ppc64le_numpy1.18python3.8.____cpythonpython_implcpython UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le - os: linux - arch: ppc64le - dist: focal - - - env: CONFIG=linux_ppc64le_numpy1.19python3.7.____73_pypypython_implpypy UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le - os: linux - arch: ppc64le - dist: focal - - - env: CONFIG=linux_ppc64le_numpy1.19python3.9.____cpythonpython_implcpython UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le - os: linux - arch: ppc64le - dist: focal - -script: - - export CI=travis - - export GIT_BRANCH="$TRAVIS_BRANCH" - - export FEEDSTOCK_NAME=$(basename ${TRAVIS_REPO_SLUG}) - - if [[ "${TRAVIS_PULL_REQUEST:-}" == "false" ]]; then export IS_PR_BUILD="False"; else export IS_PR_BUILD="True"; fi - - - - if [[ ${PLATFORM} =~ .*linux.* ]]; then CONDA_FORGE_DOCKER_RUN_ARGS=--network=host ./.scripts/run_docker_build.sh; fi \ No newline at end of file diff --git a/README.md b/README.md index dc6aa29d..82baff93 100644 --- a/README.md +++ b/README.md @@ -9,25 +9,13 @@ Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/scikit-learn-fe Summary: A set of python modules for machine learning and data mining +Development: https://github.com/scikit-learn/scikit-learn + Current build status ==================== - - - - - - - +
Travis - - macOS - -
Drone - - linux - -
@@ -68,6 +56,13 @@ Current build status variant + + + + + + + + + - + + + + + + + - + @@ -194,6 +217,13 @@ Current build status variant + + +
Azure
linux_64_numpy1.21python3.10.____cpythonpython_implcpython + + variant + +
linux_aarch64_numpy1.18python3.7.____cpythonpython_implcpython @@ -96,6 +91,13 @@ Current build status variant
linux_aarch64_numpy1.21python3.10.____cpythonpython_implcpython + + variant + +
linux_ppc64le_numpy1.18python3.7.____cpythonpython_implcpython @@ -124,6 +126,13 @@ Current build status variant
linux_ppc64le_numpy1.21python3.10.____cpythonpython_implcpython + + variant + +
osx_64_numpy1.18python3.7.____cpythonpython_implcpython @@ -153,17 +162,31 @@ Current build status
osx_arm64_python3.8.____cpythonosx_64_numpy1.21python3.10.____cpythonpython_implcpython + + variant + +
osx_arm64_numpy1.19python3.8.____cpython + + variant + +
osx_arm64_numpy1.19python3.9.____cpython - variant + variant
osx_arm64_python3.9.____cpythonosx_arm64_numpy1.21python3.10.____cpython - variant + variant
win_64_numpy1.21python3.10.____cpythonpython_implcpython + + variant + +
@@ -235,7 +265,8 @@ conda search scikit-learn --channel conda-forge About conda-forge ================= -[![Powered by NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](http://numfocus.org) +[![Powered by +NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](https://numfocus.org) conda-forge is a community-led conda channel of installable packages. In order to provide high-quality builds, the process has been automated into the diff --git a/build-locally.py b/build-locally.py index f3d4f62f..8b743489 100755 --- a/build-locally.py +++ b/build-locally.py @@ -22,6 +22,10 @@ def setup_environment(ns): os.environ["MINIFORGE_HOME"] = os.path.join( os.path.dirname(__file__), "miniforge3" ) + if "OSX_SDK_DIR" not in os.environ: + os.environ["OSX_SDK_DIR"] = os.path.join( + os.path.dirname(__file__), "SDKs" + ) def run_docker_build(ns): diff --git a/conda-forge.yml b/conda-forge.yml index 4e389521..28b89b8e 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,7 +1,13 @@ -build_platform: {osx_arm64: osx_64} -conda_forge_output_validation: true -provider: {linux_aarch64: default, linux_ppc64le: default, win: azure} -test_on_native_only: true bot: abi_migration_branches: - - "rc" + - rc +build_platform: + linux_aarch64: linux_64 + linux_ppc64le: linux_64 + osx_arm64: osx_64 +conda_forge_output_validation: true +provider: + linux_aarch64: default + linux_ppc64le: default + win: azure +test_on_native_only: true diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 904e741e..0e6207e5 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -11,7 +11,7 @@ source: - patches/0001-ignore-errors-when-tearing-down-modules.patch build: - number: 1 + number: 2 skip: true # [py<37] script: - rm $PREFIX/include/cblas.h # [not win] @@ -53,29 +53,50 @@ requirements: {% set tests_to_skip = tests_to_skip + " or test_loadings_converges" %} # Numerically unstable test numerical difference in test {% set tests_to_skip = tests_to_skip + " or test_mlp_regressor_dtypes_casting" %} # [ppc64le] -{% if aarch64 and python_impl == "pypy" %} - # skip longest-running tests on azure for pypy build times out otherwise; - # since pytest -k skips on string matches, try to match accurately to avoid - # skipping more than intended; all run >40sec, up to 4+ min, see pypy-on-arch-slowest.txt - {% set tests_to_skip = tests_to_skip + " or (test_voting and test_gridsearch) or test_check_estimator_clones" - + " or (test_bagging and (test_regression or test_classification))" - + " or (check_estimator_sparse_data and (Sequential or TSNE or RFECV))" - + " or (test_ensemble_heterogeneous_estimators_behavior and stacking)" - + " or test_rfe_cv_groups or test_nan_support" - + " or (test_tsne_different_square_distances and exact)" - + " or test_linear_models_cv_fit_for_all_backends[MultiTaskLassoCV-loky]" - + " or (test_forest and test_class_weights[RandomForestClassifier])" - + " or test_kde_sample_weights or test_uniform_grid[exact]" - + " or test_parallel_classification or test_sparse_coder_parallel_mmap" - + " or test_sparse_precomputed_distance or test_n_iter_no_change_inf" - + " or test_sample_without_replacement_algorithms" %} -{% endif %} -{% if ppc64le and python_impl == "pypy" %} - # WARNING: - # On Travis, the pypy build is timing out and we need to skip all tests - # Then, we only test the docstring - {% set tests_to_skip = tests_to_skip + " or test" %} - {% set extra_pytest_args = "--doctest-modules" %} +{% if aarch64 and CI %} + # due to emulation through QEMU, the tests for aarch run very long; + # azure has different linux agents, and the weaker ones can be a factor 2 slower; + # skip longest-running ones; all run >60sec (on fast agents) resp. >90sec (on slow agents); + # since pytest -k skips on string matches, try to match accurately to avoid skipping more than intended + {% set tests_to_skip = tests_to_skip + " or (test_quantile and (test_asymmetric_error + or test_quantile_estimates_calibration or test_quantile_sample_weight))" + + " or test_kernel_pca_solvers_equivalence or test_n_iter_no_change_inf" + + " or test_iterative_imputer_no_missing or (test_voting and test_gridsearch)" + + " or test_svc_ovr_tie_breaking or test_check_estimator_clones" + + " or (test_estimators and QuantileRegressor)" + + " or (test_pairwise and test_cosine_distances)" + + " or test_randomized_eigsh_reconst_low_rank" + + " or test_randomized_svd_power_iteration_normalizer" + + " or test_SGDClassifier_fit_for_all_backends" + + " or test_classifier_chain_fit_and_predict_with_linear_svc" + + " or (test_gradient_boosting and test_poisson)" + + " or (test_ridge and test_lbfgs_solver_consistency)" + + " or (test_linear_models_cv_fit_for_all_backends and MultiTask)" + + " or test_spectral_embedding_callable_affinity" + + " or test_spectral_embedding_precomputed_affinity" %} + # this problem is exacerbated for PyPy; skip some more tests there + {% if python_impl == "pypy" %} + {% set tests_to_skip = tests_to_skip + " or (test_bagging and (test_regression or test_classification))" + + " or (check_estimator_sparse_data and (Sequential or TSNE or RFECV))" + + " or (test_ensemble_heterogeneous_estimators_behavior and stacking)" + + " or test_rfe_cv_groups or test_nan_support" + + " or (test_tsne_different_square_distances and exact)" + + " or (test_forest and test_class_weights[RandomForestClassifier])" + + " or test_kde_sample_weights or test_uniform_grid[exact]" + + " or test_parallel_classification or test_sparse_coder_parallel_mmap" + + " or test_sparse_precomputed_distance or test_n_iter_no_change_inf" + + " or test_randomized_eigsh_compared_to_others" + + " or (test_quantile and test_equivariance)" + + " or (test_estimators and GaussianProcessClassifier)" + + " or (test_stacking_with_sample_weight and StackingClassifier)" + + " or (test_mlp and test_partial_fit_classification)" + + " or (test_tree and test_min_impurity_decrease)" + + " or test_scores_attribute_layout_elasticnet" + + " or (test_warning_default_transform_alpha and MiniBatch)" + + " or (test_tsne_different_square_distances and barnes_hut)" + + " or (test_kernel_approximation and test_polynomial_count_sketch)" + + " or test_sample_without_replacement_algorithms" %} + {% endif %} {% endif %} test: @@ -87,18 +108,19 @@ test: imports: - sklearn commands: - # Some tests take alot of memory, and seem to cause segfaults when memory runs out - {% set cpus = 2 if ppc64le else (8 if aarch64 else CPU_COUNT) %} # reduce contention for parallelism (xdist-workers, openblas, openmp) that - # actually increases the runtime and can lead to timeouts on drone/travis + # actually increases the runtime and can lead to timeouts - export OMP_NUM_THREADS=1 # [aarch64 or ppc64le] - - pytest --pyargs sklearn -k "not ({{ tests_to_skip }})" -n {{ cpus }} --durations=50 {{ extra_pytest_args }} + - pytest --pyargs sklearn -k "not ({{ tests_to_skip }})" -nauto --timeout=1200 --durations=50 # [not ppc64le] + # NOTE: test suite is skipped on ppc due to bugs in QEMU code that cause + # CI to fail, even though the tests should run through on native hardware about: home: http://scikit-learn.org/ license: BSD-3-Clause license_file: COPYING summary: A set of python modules for machine learning and data mining + dev_url: https://github.com/scikit-learn/scikit-learn extra: recipe-maintainers: diff --git a/recipe/pypy-on-aarch-slowest.txt b/recipe/pypy-on-aarch-slowest.txt deleted file mode 100644 index 3951ee26..00000000 --- a/recipe/pypy-on-aarch-slowest.txt +++ /dev/null @@ -1,28 +0,0 @@ -# Aggregated across several runs with different skips (because the full test suite timed out) -# August 2021, scikit-learn v0.24.2, PyPy 7.3.5 on aarch64 -============================= slowest X durations ============================= -253.79s call ensemble/tests/test_voting.py::test_gridsearch -138.25s call ensemble/tests/test_bagging.py::test_classification -135.25s call utils/tests/test_estimator_checks.py::test_check_estimator_clones -106.52s call tests/test_common.py::test_estimators[SequentialFeatureSelector(estimator=LogisticRegression(C=1))-check_estimator_sparse_data] -101.77s call ensemble/tests/test_common.py::test_ensemble_heterogeneous_estimators_behavior[stacking-classifier] -95.01s call ensemble/tests/test_common.py::test_ensemble_heterogeneous_estimators_behavior[stacking-regressor] -76.04s call feature_selection/tests/test_rfe.py::test_rfe_cv_groups -72.23s call tests/test_common.py::test_estimators[TSNE()-check_estimator_sparse_data] -64.21s call manifold/tests/test_t_sne.py::test_tsne_different_square_distances[True-manhattan-exact] -64.08s call manifold/tests/test_t_sne.py::test_tsne_different_square_distances[legacy-euclidean-exact] -63.84s call manifold/tests/test_t_sne.py::test_tsne_different_square_distances[True-euclidean-exact] -63.24s call manifold/tests/test_t_sne.py::test_tsne_different_square_distances[legacy-manhattan-exact] -61.57s call linear_model/tests/test_coordinate_descent.py::test_linear_models_cv_fit_for_all_backends[MultiTaskLassoCV-loky] -59.26s call ensemble/tests/test_bagging.py::test_regression -52.94s call ensemble/tests/test_forest.py::test_class_weights[RandomForestClassifier] -52.75s call feature_selection/tests/test_sequential.py::test_nan_support -52.38s call neighbors/tests/test_kde.py::test_kde_sample_weights -47.97s call manifold/tests/test_t_sne.py::test_uniform_grid[exact] -47.28s call utils/tests/test_estimator_checks.py::test_check_estimator -45.71s call ensemble/tests/test_bagging.py::test_parallel_classification -44.37s call decomposition/tests/test_dict_learning.py::test_sparse_coder_parallel_mmap -42.23s call manifold/tests/test_t_sne.py::test_sparse_precomputed_distance -40.57s call neural_network/tests/test_mlp.py::test_n_iter_no_change_inf -40.38s call utils/tests/test_random.py::test_sample_without_replacement_algorithms -39.31s call tests/test_common.py::test_estimators[RFECV(estimator=LogisticRegression(C=1))-check_estimator_sparse_data]