From 460740601f26c249887798dc27171e69544f07a3 Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Sat, 24 Feb 2018 15:00:06 +0100 Subject: [PATCH 1/4] add compiler runtime dependencies --- recipe/meta.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index a81661d..6581354 100755 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -16,12 +16,22 @@ build: requirements: build: + - libgcc # [linux] + - libcxx # [osx] + - vc 9 # [win and py27] + - vc 10 # [win and py34] + - vc 14 # [win and (py35 or py36)] - python - setuptools - cython - numpy 1.9.* # [py27 or py35] - numpy 1.11.* # [py36] run: + - libgcc # [linux] + - libcxx # [osx] + - vc 9 # [win and py27] + - vc 10 # [win and py34] + - vc 14 # [win and (py35 or py36)] - python - numpy >=1.9.* # [py27 or py35] - numpy >=1.11.* # [py36] From f905213930bf3deffc32d83c32b62e04bccbe071 Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Sat, 24 Feb 2018 17:47:47 +0100 Subject: [PATCH 2/4] avoid exact pins on vc --- recipe/meta.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 6581354..4a04392 100755 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -18,9 +18,9 @@ requirements: build: - libgcc # [linux] - libcxx # [osx] - - vc 9 # [win and py27] - - vc 10 # [win and py34] - - vc 14 # [win and (py35 or py36)] + - vc 9.* # [win and py27] + - vc 10.* # [win and py34] + - vc 14.* # [win and (py35 or py36)] - python - setuptools - cython @@ -29,9 +29,9 @@ requirements: run: - libgcc # [linux] - libcxx # [osx] - - vc 9 # [win and py27] - - vc 10 # [win and py34] - - vc 14 # [win and (py35 or py36)] + - vc 9.* # [win and py27] + - vc 10.* # [win and py34] + - vc 14.* # [win and (py35 or py36)] - python - numpy >=1.9.* # [py27 or py35] - numpy >=1.11.* # [py36] From 368e06e4d74a42358f8fefa39b7a69962893a409 Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Mon, 26 Feb 2018 14:36:42 +0100 Subject: [PATCH 3/4] derp... increment build number --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 4a04392..4527071 100755 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -11,7 +11,7 @@ source: sha256: 44a94091dd71f05922eec661638ec1a35f26d573c119aa2fad964f10a2880e6c build: - number: 0 + number: 1 script: python setup.py install --single-version-externally-managed --record=record.txt requirements: From b0eba845a5db4b873e5893f9bb37d20e0dcbdc1a Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Sun, 6 May 2018 13:36:57 +0200 Subject: [PATCH 4/4] MNT: Re-rendered with conda-smithy 3.1.2 and pinning 2018.04.28 --- .appveyor.yml | 6 +- .ci_support/linux_python2.7.yaml | 6 ++ .ci_support/linux_python3.5.yaml | 6 ++ .ci_support/linux_python3.6.yaml | 6 ++ .ci_support/osx_python2.7.yaml | 6 ++ .ci_support/osx_python3.5.yaml | 6 ++ .ci_support/osx_python3.6.yaml | 6 ++ ...ilervs2008cxx_compilervs2008python2.7.yaml | 16 ++++ ...ilervs2015cxx_compilervs2015python3.5.yaml | 16 ++++ ...ilervs2015cxx_compilervs2015python3.6.yaml | 16 ++++ .ci_support/win_python2.7.yaml | 6 -- .ci_support/win_python3.5.yaml | 6 -- .ci_support/win_python3.6.yaml | 6 -- .circleci/run_docker_build.sh | 75 ++++++++++++------- 14 files changed, 137 insertions(+), 46 deletions(-) create mode 100644 .ci_support/win_c_compilervs2008cxx_compilervs2008python2.7.yaml create mode 100644 .ci_support/win_c_compilervs2015cxx_compilervs2015python3.5.yaml create mode 100644 .ci_support/win_c_compilervs2015cxx_compilervs2015python3.6.yaml delete mode 100644 .ci_support/win_python2.7.yaml delete mode 100644 .ci_support/win_python3.5.yaml delete mode 100644 .ci_support/win_python3.6.yaml diff --git a/.appveyor.yml b/.appveyor.yml index f34c229..cff63ee 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -9,13 +9,13 @@ environment: secure: ipv/06DzgA7pzz2CIAtbPxZSsphDtF+JFyoWRnXkn3O8j7oRe3rzqj3LOoq2DZp4 matrix: - - CONFIG: win_python2.7 + - CONFIG: win_c_compilervs2008cxx_compilervs2008python2.7 CONDA_INSTALL_LOCN: C:\Miniconda36-x64 - - CONFIG: win_python3.5 + - CONFIG: win_c_compilervs2015cxx_compilervs2015python3.5 CONDA_INSTALL_LOCN: C:\Miniconda36-x64 - - CONFIG: win_python3.6 + - CONFIG: win_c_compilervs2015cxx_compilervs2015python3.6 CONDA_INSTALL_LOCN: C:\Miniconda36-x64 diff --git a/.ci_support/linux_python2.7.yaml b/.ci_support/linux_python2.7.yaml index dca2267..e533f92 100644 --- a/.ci_support/linux_python2.7.yaml +++ b/.ci_support/linux_python2.7.yaml @@ -1,3 +1,9 @@ +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_python3.5.yaml b/.ci_support/linux_python3.5.yaml index d43136c..5fa5b77 100644 --- a/.ci_support/linux_python3.5.yaml +++ b/.ci_support/linux_python3.5.yaml @@ -1,3 +1,9 @@ +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/linux_python3.6.yaml b/.ci_support/linux_python3.6.yaml index ce1d020..aaa669d 100644 --- a/.ci_support/linux_python3.6.yaml +++ b/.ci_support/linux_python3.6.yaml @@ -1,3 +1,9 @@ +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_python2.7.yaml b/.ci_support/osx_python2.7.yaml index fa4444c..288a06c 100644 --- a/.ci_support/osx_python2.7.yaml +++ b/.ci_support/osx_python2.7.yaml @@ -1,9 +1,15 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx macos_machine: - x86_64-apple-darwin13.4.0 macos_min_version: - '10.9' +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_python3.5.yaml b/.ci_support/osx_python3.5.yaml index d6d7339..f862d7f 100644 --- a/.ci_support/osx_python3.5.yaml +++ b/.ci_support/osx_python3.5.yaml @@ -1,9 +1,15 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx macos_machine: - x86_64-apple-darwin13.4.0 macos_min_version: - '10.9' +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/osx_python3.6.yaml b/.ci_support/osx_python3.6.yaml index 3d612fe..edda095 100644 --- a/.ci_support/osx_python3.6.yaml +++ b/.ci_support/osx_python3.6.yaml @@ -1,9 +1,15 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' +c_compiler: +- toolchain_c +cxx_compiler: +- toolchain_cxx macos_machine: - x86_64-apple-darwin13.4.0 macos_min_version: - '10.9' +numpy: +- '1.9' pin_run_as_build: python: min_pin: x.x diff --git a/.ci_support/win_c_compilervs2008cxx_compilervs2008python2.7.yaml b/.ci_support/win_c_compilervs2008cxx_compilervs2008python2.7.yaml new file mode 100644 index 0000000..e7b3ec1 --- /dev/null +++ b/.ci_support/win_c_compilervs2008cxx_compilervs2008python2.7.yaml @@ -0,0 +1,16 @@ +c_compiler: +- vs2008 +cxx_compiler: +- vs2008 +numpy: +- '1.11' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- '2.7' +zip_keys: +- - c_compiler + - cxx_compiler + - python diff --git a/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.5.yaml b/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.5.yaml new file mode 100644 index 0000000..6356873 --- /dev/null +++ b/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.5.yaml @@ -0,0 +1,16 @@ +c_compiler: +- vs2015 +cxx_compiler: +- vs2015 +numpy: +- '1.11' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- '3.5' +zip_keys: +- - c_compiler + - cxx_compiler + - python diff --git a/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.6.yaml b/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.6.yaml new file mode 100644 index 0000000..67b09d6 --- /dev/null +++ b/.ci_support/win_c_compilervs2015cxx_compilervs2015python3.6.yaml @@ -0,0 +1,16 @@ +c_compiler: +- vs2015 +cxx_compiler: +- vs2015 +numpy: +- '1.11' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- '3.6' +zip_keys: +- - c_compiler + - cxx_compiler + - python diff --git a/.ci_support/win_python2.7.yaml b/.ci_support/win_python2.7.yaml deleted file mode 100644 index dca2267..0000000 --- a/.ci_support/win_python2.7.yaml +++ /dev/null @@ -1,6 +0,0 @@ -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- '2.7' diff --git a/.ci_support/win_python3.5.yaml b/.ci_support/win_python3.5.yaml deleted file mode 100644 index d43136c..0000000 --- a/.ci_support/win_python3.5.yaml +++ /dev/null @@ -1,6 +0,0 @@ -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- '3.5' diff --git a/.ci_support/win_python3.6.yaml b/.ci_support/win_python3.6.yaml deleted file mode 100644 index ce1d020..0000000 --- a/.ci_support/win_python3.6.yaml +++ /dev/null @@ -1,6 +0,0 @@ -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- '3.6' diff --git a/.circleci/run_docker_build.sh b/.circleci/run_docker_build.sh index b2744ea..238396b 100755 --- a/.circleci/run_docker_build.sh +++ b/.circleci/run_docker_build.sh @@ -5,43 +5,68 @@ # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also # benefit from the improvement. -set -xeuo pipefail - FEEDSTOCK_ROOT=$(cd "$(dirname "$0")/.."; pwd;) RECIPE_ROOT=$FEEDSTOCK_ROOT/recipe docker info +config=$(cat < /dev/null && docker-machine active > /dev/null; then - export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) + HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) fi -ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" +rm -f "$FEEDSTOCK_ROOT/build_artifacts/conda-forge-build-done" -if [ -z "$CONFIG" ]; then - echo "Need to set CONFIG env variable" - exit 1 -fi +cat << EOF | docker run -i \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root \ + -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root \ + -e CONFIG="$CONFIG" \ + -e HOST_USER_ID="${HOST_USER_ID}" \ + -a stdin -a stdout -a stderr \ + condaforge/linux-anvil \ + bash || exit 1 + +set -e +set +x +export BINSTAR_TOKEN=${BINSTAR_TOKEN} +set -x +export PYTHONUNBUFFERED=1 + +echo "$config" > ~/.condarc +# A lock sometimes occurs with incomplete builds. The lock file is stored in build_artifacts. +conda clean --lock + +# Make sure we pull in the latest conda-build version too +conda install --yes --quiet conda-forge-ci-setup=1 conda-build +source run_conda_forge_build_setup + +conda build /home/conda/recipe_root -m /home/conda/feedstock_root/.ci_support/${CONFIG}.yaml --quiet || exit 1 +upload_or_check_non_existence /home/conda/recipe_root conda-forge --channel=main -m /home/conda/feedstock_root/.ci_support/${CONFIG}.yaml || exit 1 + +touch /home/conda/feedstock_root/build_artifacts/conda-forge-build-done +EOF -test -d "$ARTIFACTS" || mkdir "$ARTIFACTS" -DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" -rm -f "$DONE_CANARY" - -docker run -it \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root \ - -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root \ - -e CONFIG \ - -e BINSTAR_TOKEN \ - -e HOST_USER_ID \ - condaforge/linux-anvil \ - bash \ - /home/conda/feedstock_root/.circleci/build_steps.sh - -# verify that the end of the script was reached -test -f "$DONE_CANARY" \ No newline at end of file +# double-check that the build got to the end +# see https://github.com/conda-forge/conda-smithy/pull/337 +# for a possible fix +set -x +test -f "$FEEDSTOCK_ROOT/build_artifacts/conda-forge-build-done" || exit 1