diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index 4eff220..d41ba12 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -20,6 +20,15 @@ jobs: osx_64_numpy1.21python3.10.____cpython: CONFIG: osx_64_numpy1.21python3.10.____cpython UPLOAD_PACKAGES: 'True' + 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 steps: diff --git a/.ci_support/osx_64_numpy1.19python3.7.____cpython.yaml b/.ci_support/osx_64_numpy1.19python3.7.____cpython.yaml index 28b03b3..de19bd9 100644 --- a/.ci_support/osx_64_numpy1.19python3.7.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.19python3.7.____cpython.yaml @@ -3,7 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: c_compiler: - clang c_compiler_version: -- '12' +- '13' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_64_numpy1.19python3.8.____cpython.yaml b/.ci_support/osx_64_numpy1.19python3.8.____cpython.yaml index 8c2c678..703d2fb 100644 --- a/.ci_support/osx_64_numpy1.19python3.8.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.19python3.8.____cpython.yaml @@ -3,7 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: c_compiler: - clang c_compiler_version: -- '12' +- '13' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_64_numpy1.19python3.9.____cpython.yaml b/.ci_support/osx_64_numpy1.19python3.9.____cpython.yaml index 8802fc3..7e8be51 100644 --- a/.ci_support/osx_64_numpy1.19python3.9.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.19python3.9.____cpython.yaml @@ -3,7 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: c_compiler: - clang c_compiler_version: -- '12' +- '13' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_64_numpy1.21python3.10.____cpython.yaml b/.ci_support/osx_64_numpy1.21python3.10.____cpython.yaml index 23046fc..497bc03 100644 --- a/.ci_support/osx_64_numpy1.21python3.10.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.21python3.10.____cpython.yaml @@ -3,7 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: c_compiler: - clang c_compiler_version: -- '12' +- '13' channel_sources: - conda-forge channel_targets: diff --git a/.ci_support/osx_arm64_numpy1.19python3.8.____cpython.yaml b/.ci_support/osx_arm64_numpy1.19python3.8.____cpython.yaml new file mode 100644 index 0000000..4751d37 --- /dev/null +++ b/.ci_support/osx_arm64_numpy1.19python3.8.____cpython.yaml @@ -0,0 +1,35 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '13' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +fortran_compiler: +- gfortran +fortran_compiler_version: +- '11' +macos_machine: +- arm64-apple-darwin20.0.0 +numpy: +- '1.19' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x + vtk: + max_pin: x.x.x +python: +- 3.8.* *_cpython +target_platform: +- osx-arm64 +vtk: +- 9.1.0 +zip_keys: +- - c_compiler_version + - fortran_compiler_version +- - python + - numpy diff --git a/.ci_support/osx_arm64_numpy1.19python3.9.____cpython.yaml b/.ci_support/osx_arm64_numpy1.19python3.9.____cpython.yaml new file mode 100644 index 0000000..78c1b27 --- /dev/null +++ b/.ci_support/osx_arm64_numpy1.19python3.9.____cpython.yaml @@ -0,0 +1,35 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '13' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +fortran_compiler: +- gfortran +fortran_compiler_version: +- '11' +macos_machine: +- arm64-apple-darwin20.0.0 +numpy: +- '1.19' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x + vtk: + max_pin: x.x.x +python: +- 3.9.* *_cpython +target_platform: +- osx-arm64 +vtk: +- 9.1.0 +zip_keys: +- - c_compiler_version + - fortran_compiler_version +- - python + - numpy 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 0000000..7bc0a12 --- /dev/null +++ b/.ci_support/osx_arm64_numpy1.21python3.10.____cpython.yaml @@ -0,0 +1,35 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '13' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +fortran_compiler: +- gfortran +fortran_compiler_version: +- '11' +macos_machine: +- arm64-apple-darwin20.0.0 +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x + vtk: + max_pin: x.x.x +python: +- 3.10.* *_cpython +target_platform: +- osx-arm64 +vtk: +- 9.1.0 +zip_keys: +- - c_compiler_version + - fortran_compiler_version +- - python + - numpy diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 1d1def8..31e3999 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -50,6 +50,9 @@ source run_conda_forge_build_setup # make the build number clobber make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" +if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${HOST_PLATFORM}" != linux-* ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then + EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" +fi ( endgroup "Configuring conda" ) 2> /dev/null diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 19843e0..3d85505 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -56,6 +56,10 @@ source run_conda_forge_build_setup echo -e "\n\nMaking the build clobber file" make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml +if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then + EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" +fi + if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then diff --git a/README.md b/README.md index a03a00b..afac286 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,27 @@ Current build status variant + + osx_arm64_numpy1.19python3.8.____cpython + + + variant + + + + osx_arm64_numpy1.19python3.9.____cpython + + + variant + + + + osx_arm64_numpy1.21python3.10.____cpython + + + variant + + win_64_numpy1.19python3.7.____cpython @@ -139,18 +160,43 @@ conda config --add channels conda-forge conda config --set channel_priority strict ``` -Once the `conda-forge` channel has been enabled, `mayavi` can be installed with: +Once the `conda-forge` channel has been enabled, `mayavi` can be installed with `conda`: ``` conda install mayavi ``` -It is possible to list all of the versions of `mayavi` available on your platform with: +or with `mamba`: + +``` +mamba install mayavi +``` + +It is possible to list all of the versions of `mayavi` available on your platform with `conda`: ``` conda search mayavi --channel conda-forge ``` +or with `mamba`: + +``` +mamba search mayavi --channel conda-forge +``` + +Alternatively, `mamba repoquery` may provide more information: + +``` +# Search all versions available on your platform: +mamba repoquery search mayavi --channel conda-forge + +# List packages depending on `mayavi`: +mamba repoquery whoneeds mayavi --channel conda-forge + +# List dependencies of `mayavi`: +mamba repoquery depends mayavi --channel conda-forge +``` + About conda-forge ================= @@ -166,10 +212,12 @@ for each of the installable packages. Such a repository is known as a *feedstock A feedstock is made up of a conda recipe (the instructions on what and how to build the package) and the necessary configurations for automatic building using freely available continuous integration services. Thanks to the awesome service provided by -[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/) -and [TravisCI](https://travis-ci.com/) it is possible to build and upload installable -packages to the [conda-forge](https://anaconda.org/conda-forge) -[Anaconda-Cloud](https://anaconda.org/) channel for Linux, Windows and OSX respectively. +[Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/), +[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), +[Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) +it is possible to build and upload installable packages to the +[conda-forge](https://anaconda.org/conda-forge) [Anaconda-Cloud](https://anaconda.org/) +channel for Linux, Windows and OSX respectively. To manage the continuous integration and simplify feedstock maintenance [conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed. diff --git a/conda-forge.yml b/conda-forge.yml index 1a14836..1382b5c 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,8 +1,11 @@ -provider: - win: azure +bot: + automerge: true +build_platform: + osx_arm64: osx_64 conda_forge_output_validation: true github: branch_name: main tooling_branch_name: main -bot: - automerge: true +provider: + win: azure +test: native_and_emulated diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 5d3a0f6..baed075 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -17,6 +17,10 @@ build: requirements: build: + - python # [build_platform != target_platform] + - cross-python_{{ target_platform }} # [build_platform != target_platform] + - numpy # [build_platform != target_platform] + - vtk # [build_platform != target_platform] - {{ compiler('fortran') }} - {{ compiler('c') }} host: