diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index f2765a7..6002926 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -6,19 +6,28 @@ jobs: - job: linux pool: vmImage: ubuntu-16.04 - timeoutInMinutes: 360 strategy: - maxParallel: 8 matrix: - linux_python3.6.____cpython: - CONFIG: linux_python3.6.____cpython - UPLOAD_PACKAGES: True - DOCKER_IMAGE: condaforge/linux-anvil-comp7 - linux_python3.7.____cpython: - CONFIG: linux_python3.7.____cpython - UPLOAD_PACKAGES: True - DOCKER_IMAGE: condaforge/linux-anvil-comp7 + linux_64_python3.6.____cpython: + CONFIG: linux_64_python3.6.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_64_python3.7.____cpython: + CONFIG: linux_64_python3.7.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_64_python3.8.____cpython: + CONFIG: linux_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + timeoutInMinutes: 360 + steps: + - script: | + rm -rf /opt/ghc + df -h + displayName: Manage disk space + # configure qemu binfmt-misc running. This allows us to run docker containers # embedded qemu-static - script: | @@ -30,7 +39,10 @@ jobs: - script: | export CI=azure export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) .scripts/run_docker_build.sh displayName: Run docker build env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) \ No newline at end of file + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) \ No newline at end of file diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index 3b064bf..3b6ec89 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -5,17 +5,19 @@ jobs: - job: osx pool: - vmImage: macOS-10.14 - timeoutInMinutes: 360 + vmImage: macOS-10.15 strategy: - maxParallel: 8 matrix: - osx_python3.6.____cpython: - CONFIG: osx_python3.6.____cpython - UPLOAD_PACKAGES: True - osx_python3.7.____cpython: - CONFIG: osx_python3.7.____cpython - UPLOAD_PACKAGES: True + osx_64_python3.6.____cpython: + CONFIG: osx_64_python3.6.____cpython + UPLOAD_PACKAGES: 'True' + osx_64_python3.7.____cpython: + CONFIG: osx_64_python3.7.____cpython + UPLOAD_PACKAGES: 'True' + osx_64_python3.8.____cpython: + CONFIG: osx_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + timeoutInMinutes: 360 steps: # TODO: Fast finish on azure pipelines? @@ -23,7 +25,10 @@ jobs: export CI=azure export OSX_FORCE_SDK_DOWNLOAD="1" export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) ./.scripts/run_osx_build.sh displayName: Run OSX build env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) \ No newline at end of file + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) \ No newline at end of file diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index e0eea7a..1244454 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -6,24 +6,22 @@ jobs: - job: win pool: vmImage: vs2017-win2016 - timeoutInMinutes: 360 strategy: - maxParallel: 4 matrix: - win_python3.6.____cpython: - CONFIG: win_python3.6.____cpython - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - win_python3.7.____cpython: - CONFIG: win_python3.7.____cpython - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - steps: - # TODO: Fast finish on azure pipelines? - - script: | - ECHO ON - + win_64_python3.6.____cpython: + CONFIG: win_64_python3.6.____cpython + UPLOAD_PACKAGES: 'True' + win_64_python3.7.____cpython: + CONFIG: win_64_python3.7.____cpython + UPLOAD_PACKAGES: 'True' + win_64_python3.8.____cpython: + CONFIG: win_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + timeoutInMinutes: 360 + variables: + CONDA_BLD_PATH: D:\\bld\\ + steps: - script: | choco install vcpython27 -fdv -y --debug condition: contains(variables['CONFIG'], 'vs2008') @@ -60,7 +58,7 @@ jobs: - task: CondaEnvironment@1 inputs: - packageSpecs: 'python=3.6 conda-build conda conda-forge::conda-forge-ci-setup=3 pip' # Optional + packageSpecs: 'python=3.6 conda-build conda "conda-forge-ci-setup=3" pip' # Optional installOptions: "-c conda-forge" updateConda: true displayName: Install conda-build and activate environment @@ -99,12 +97,20 @@ jobs: env: PYTHONUNBUFFERED: 1 condition: not(contains(variables['CONFIG'], 'vs2008')) + - script: | + set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" + call activate base + validate_recipe_outputs "%FEEDSTOCK_NAME%" + displayName: Validate Recipe Outputs - script: | set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" + set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" call activate base - upload_package .\ ".\recipe" .ci_support\%CONFIG%.yaml + upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml displayName: Upload package env: BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) condition: and(succeeded(), not(eq(variables['UPLOAD_PACKAGES'], 'False'))) \ No newline at end of file diff --git a/.ci_support/linux_python3.6.____cpython.yaml b/.ci_support/linux_64_python3.6.____cpython.yaml similarity index 72% rename from .ci_support/linux_python3.6.____cpython.yaml rename to .ci_support/linux_64_python3.6.____cpython.yaml index e7b2e5f..06d5c45 100644 --- a/.ci_support/linux_python3.6.____cpython.yaml +++ b/.ci_support/linux_64_python3.6.____cpython.yaml @@ -1,11 +1,13 @@ arpack: -- 3.6.3 +- '3.7' bzip2: - '1' c_compiler: - gcc c_compiler_version: -- '7' +- '9' +cdt_name: +- cos6 channel_sources: - conda-forge,defaults channel_targets: @@ -15,25 +17,25 @@ curl: cxx_compiler: - gxx cxx_compiler_version: -- '7' +- '9' docker_image: -- condaforge/linux-anvil-comp7 +- quay.io/condaforge/linux-anvil-comp7 glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 json_c: - '0.13' libprotobuf: -- '3.11' +- '3.13' libxml2: - '2.9' lzo: - '2' numpy: -- '1.14' +- '1.16' openblas: -- 0.3.6 +- 0.3.* pin_run_as_build: arpack: max_pin: x.x.x @@ -49,8 +51,6 @@ pin_run_as_build: max_pin: x.x lzo: max_pin: x - openblas: - max_pin: x.x.x python: min_pin: x.x max_pin: x.x @@ -62,7 +62,16 @@ python: - 3.6.* *_cpython snappy: - '1' +target_platform: +- linux-64 xz: - '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - cdt_name + - docker_image +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/linux_python3.7.____cpython.yaml b/.ci_support/linux_64_python3.7.____cpython.yaml similarity index 72% rename from .ci_support/linux_python3.7.____cpython.yaml rename to .ci_support/linux_64_python3.7.____cpython.yaml index d56cb1e..8fea76e 100644 --- a/.ci_support/linux_python3.7.____cpython.yaml +++ b/.ci_support/linux_64_python3.7.____cpython.yaml @@ -1,11 +1,13 @@ arpack: -- 3.6.3 +- '3.7' bzip2: - '1' c_compiler: - gcc c_compiler_version: -- '7' +- '9' +cdt_name: +- cos6 channel_sources: - conda-forge,defaults channel_targets: @@ -15,25 +17,25 @@ curl: cxx_compiler: - gxx cxx_compiler_version: -- '7' +- '9' docker_image: -- condaforge/linux-anvil-comp7 +- quay.io/condaforge/linux-anvil-comp7 glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 json_c: - '0.13' libprotobuf: -- '3.11' +- '3.13' libxml2: - '2.9' lzo: - '2' numpy: -- '1.14' +- '1.16' openblas: -- 0.3.6 +- 0.3.* pin_run_as_build: arpack: max_pin: x.x.x @@ -49,8 +51,6 @@ pin_run_as_build: max_pin: x.x lzo: max_pin: x - openblas: - max_pin: x.x.x python: min_pin: x.x max_pin: x.x @@ -62,7 +62,16 @@ python: - 3.7.* *_cpython snappy: - '1' +target_platform: +- linux-64 xz: - '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - cdt_name + - docker_image +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/linux_64_python3.8.____cpython.yaml b/.ci_support/linux_64_python3.8.____cpython.yaml new file mode 100644 index 0000000..a9b7d2d --- /dev/null +++ b/.ci_support/linux_64_python3.8.____cpython.yaml @@ -0,0 +1,77 @@ +arpack: +- '3.7' +bzip2: +- '1' +c_compiler: +- gcc +c_compiler_version: +- '9' +cdt_name: +- cos6 +channel_sources: +- conda-forge,defaults +channel_targets: +- conda-forge main +curl: +- '7' +cxx_compiler: +- gxx +cxx_compiler_version: +- '9' +docker_image: +- quay.io/condaforge/linux-anvil-comp7 +glpk: +- '4.65' +hdf5: +- 1.10.6 +json_c: +- '0.13' +libprotobuf: +- '3.13' +libxml2: +- '2.9' +lzo: +- '2' +numpy: +- '1.16' +openblas: +- 0.3.* +pin_run_as_build: + arpack: + max_pin: x.x.x + bzip2: + max_pin: x + curl: + max_pin: x + glpk: + max_pin: x.x + json-c: + max_pin: x.x + libxml2: + max_pin: x.x + lzo: + max_pin: x + python: + min_pin: x.x + max_pin: x.x + xz: + max_pin: x.x + zlib: + max_pin: x.x +python: +- 3.8.* *_cpython +snappy: +- '1' +target_platform: +- linux-64 +xz: +- '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - cdt_name + - docker_image +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/migrations/hdf51106.yaml b/.ci_support/migrations/hdf51106.yaml new file mode 100644 index 0000000..dc5b3f1 --- /dev/null +++ b/.ci_support/migrations/hdf51106.yaml @@ -0,0 +1,7 @@ +__migrator: + build_number: 1 + kind: version + migration_number: 1 +hdf5: +- 1.10.6 +migrator_ts: 1587001869.689825 diff --git a/.ci_support/osx_python3.6.____cpython.yaml b/.ci_support/osx_64_python3.6.____cpython.yaml similarity index 81% rename from .ci_support/osx_python3.6.____cpython.yaml rename to .ci_support/osx_64_python3.6.____cpython.yaml index f06a2a9..70bebd3 100644 --- a/.ci_support/osx_python3.6.____cpython.yaml +++ b/.ci_support/osx_64_python3.6.____cpython.yaml @@ -1,13 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' arpack: -- 3.6.3 +- '3.7' bzip2: - '1' c_compiler: - clang c_compiler_version: -- '9' +- '11' channel_sources: - conda-forge,defaults channel_targets: @@ -17,27 +17,25 @@ curl: cxx_compiler: - clangxx cxx_compiler_version: -- '9' +- '11' glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 json_c: - '0.13' libprotobuf: -- '3.11' +- '3.13' libxml2: - '2.9' lzo: - '2' macos_machine: - x86_64-apple-darwin13.4.0 -macos_min_version: -- '10.9' numpy: -- '1.14' +- '1.16' openblas: -- 0.3.6 +- 0.3.* pin_run_as_build: arpack: max_pin: x.x.x @@ -53,8 +51,6 @@ pin_run_as_build: max_pin: x.x lzo: max_pin: x - openblas: - max_pin: x.x.x python: min_pin: x.x max_pin: x.x @@ -66,7 +62,14 @@ python: - 3.6.* *_cpython snappy: - '1' +target_platform: +- osx-64 xz: - '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/osx_python3.7.____cpython.yaml b/.ci_support/osx_64_python3.7.____cpython.yaml similarity index 81% rename from .ci_support/osx_python3.7.____cpython.yaml rename to .ci_support/osx_64_python3.7.____cpython.yaml index aba0044..8073f17 100644 --- a/.ci_support/osx_python3.7.____cpython.yaml +++ b/.ci_support/osx_64_python3.7.____cpython.yaml @@ -1,13 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' arpack: -- 3.6.3 +- '3.7' bzip2: - '1' c_compiler: - clang c_compiler_version: -- '9' +- '11' channel_sources: - conda-forge,defaults channel_targets: @@ -17,27 +17,25 @@ curl: cxx_compiler: - clangxx cxx_compiler_version: -- '9' +- '11' glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 json_c: - '0.13' libprotobuf: -- '3.11' +- '3.13' libxml2: - '2.9' lzo: - '2' macos_machine: - x86_64-apple-darwin13.4.0 -macos_min_version: -- '10.9' numpy: -- '1.14' +- '1.16' openblas: -- 0.3.6 +- 0.3.* pin_run_as_build: arpack: max_pin: x.x.x @@ -53,8 +51,6 @@ pin_run_as_build: max_pin: x.x lzo: max_pin: x - openblas: - max_pin: x.x.x python: min_pin: x.x max_pin: x.x @@ -66,7 +62,14 @@ python: - 3.7.* *_cpython snappy: - '1' +target_platform: +- osx-64 xz: - '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/osx_64_python3.8.____cpython.yaml b/.ci_support/osx_64_python3.8.____cpython.yaml new file mode 100644 index 0000000..c243d8f --- /dev/null +++ b/.ci_support/osx_64_python3.8.____cpython.yaml @@ -0,0 +1,75 @@ +MACOSX_DEPLOYMENT_TARGET: +- '10.9' +arpack: +- '3.7' +bzip2: +- '1' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge,defaults +channel_targets: +- conda-forge main +curl: +- '7' +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +glpk: +- '4.65' +hdf5: +- 1.10.6 +json_c: +- '0.13' +libprotobuf: +- '3.13' +libxml2: +- '2.9' +lzo: +- '2' +macos_machine: +- x86_64-apple-darwin13.4.0 +numpy: +- '1.16' +openblas: +- 0.3.* +pin_run_as_build: + arpack: + max_pin: x.x.x + bzip2: + max_pin: x + curl: + max_pin: x + glpk: + max_pin: x.x + json-c: + max_pin: x.x + libxml2: + max_pin: x.x + lzo: + max_pin: x + python: + min_pin: x.x + max_pin: x.x + xz: + max_pin: x.x + zlib: + max_pin: x.x +python: +- 3.8.* *_cpython +snappy: +- '1' +target_platform: +- osx-64 +xz: +- '5.2' +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/win_python3.6.____cpython.yaml b/.ci_support/win_64_python3.6.____cpython.yaml similarity index 87% rename from .ci_support/win_python3.6.____cpython.yaml rename to .ci_support/win_64_python3.6.____cpython.yaml index db345bd..d765740 100644 --- a/.ci_support/win_python3.6.____cpython.yaml +++ b/.ci_support/win_64_python3.6.____cpython.yaml @@ -13,13 +13,13 @@ cxx_compiler: glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 libxml2: - '2.9' lzo: - '2' numpy: -- '1.14' +- '1.16' pin_run_as_build: bzip2: max_pin: x @@ -42,9 +42,14 @@ python: - 3.6.* *_cpython snappy: - '1' +target_platform: +- win-64 vc: - '14' xz: - '5.2' +zip_keys: +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/win_python3.7.____cpython.yaml b/.ci_support/win_64_python3.7.____cpython.yaml similarity index 87% rename from .ci_support/win_python3.7.____cpython.yaml rename to .ci_support/win_64_python3.7.____cpython.yaml index 44c165b..81f239e 100644 --- a/.ci_support/win_python3.7.____cpython.yaml +++ b/.ci_support/win_64_python3.7.____cpython.yaml @@ -13,13 +13,13 @@ cxx_compiler: glpk: - '4.65' hdf5: -- 1.10.5 +- 1.10.6 libxml2: - '2.9' lzo: - '2' numpy: -- '1.14' +- '1.16' pin_run_as_build: bzip2: max_pin: x @@ -42,9 +42,14 @@ python: - 3.7.* *_cpython snappy: - '1' +target_platform: +- win-64 vc: - '14' xz: - '5.2' +zip_keys: +- - python + - numpy zlib: - '1.2' diff --git a/.ci_support/win_64_python3.8.____cpython.yaml b/.ci_support/win_64_python3.8.____cpython.yaml new file mode 100644 index 0000000..0c1e696 --- /dev/null +++ b/.ci_support/win_64_python3.8.____cpython.yaml @@ -0,0 +1,55 @@ +bzip2: +- '1' +c_compiler: +- vs2017 +channel_sources: +- conda-forge,defaults +channel_targets: +- conda-forge main +curl: +- '7' +cxx_compiler: +- vs2017 +glpk: +- '4.65' +hdf5: +- 1.10.6 +libxml2: +- '2.9' +lzo: +- '2' +numpy: +- '1.16' +pin_run_as_build: + bzip2: + max_pin: x + curl: + max_pin: x + glpk: + max_pin: x.x + libxml2: + max_pin: x.x + lzo: + max_pin: x + python: + min_pin: x.x + max_pin: x.x + xz: + max_pin: x.x + zlib: + max_pin: x.x +python: +- 3.8.* *_cpython +snappy: +- '1' +target_platform: +- win-64 +vc: +- '14' +xz: +- '5.2' +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/.gitattributes b/.gitattributes index ac943c1..9060b27 100644 --- a/.gitattributes +++ b/.gitattributes @@ -17,7 +17,7 @@ bld.bat text eol=crlf .gitattributes linguist-generated=true .gitignore linguist-generated=true .travis.yml linguist-generated=true -.scripts linguist-generated=true +.scripts/* linguist-generated=true LICENSE.txt linguist-generated=true README.md linguist-generated=true azure-pipelines.yml linguist-generated=true diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 5b14787..aa9727b 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -19,8 +19,7 @@ conda-build: CONDARC -conda install --yes --quiet conda-forge-ci-setup=3 conda-build pip -c conda-forge - +conda install --yes --quiet "conda-forge-ci-setup=3" conda-build pip -c conda-forge # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -30,11 +29,25 @@ source run_conda_forge_build_setup # make the build number clobber make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" -conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" -if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then - upload_package "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" +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_ROOT}" -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_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + --suppress-variables ${EXTRA_CB_OPTIONS:-} \ + --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" + validate_recipe_outputs "${FEEDSTOCK_NAME}" + + if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then + upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" + fi fi touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" \ No newline at end of file diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 253723c..36dacd6 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -13,6 +13,10 @@ PROVIDER_DIR="$(basename $THISDIR)" FEEDSTOCK_ROOT=$(cd "$(dirname "$0")/.."; pwd;) RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" +if [ -z ${FEEDSTOCK_NAME} ]; then + export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) +fi + docker info # In order for the conda-build process in the container to write to the mounted @@ -41,8 +45,12 @@ fi if [ -z "${DOCKER_IMAGE}" ]; then SHYAML_INSTALLED="$(shyaml -h || echo NO)" if [ "${SHYAML_INSTALLED}" == "NO" ]; then - echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Falling back to condaforge/linux-anvil-comp7" - DOCKER_IMAGE="condaforge/linux-anvil-comp7" + echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" + DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) + if [ "${DOCKER_IMAGE}" = "" ]; then + echo "No docker_image entry found in ${CONFIG}. Falling back to condaforge/linux-anvil-comp7" + DOCKER_IMAGE="condaforge/linux-anvil-comp7" + fi else DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil-comp7 )" fi @@ -60,15 +68,21 @@ fi export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" docker run ${DOCKER_RUN_ARGS} \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root:ro,z \ - -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ + -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ -e CONFIG \ - -e BINSTAR_TOKEN \ -e HOST_USER_ID \ -e UPLOAD_PACKAGES \ -e GIT_BRANCH \ -e UPLOAD_ON_BRANCH \ -e CI \ + -e FEEDSTOCK_NAME \ + -e CPU_COUNT \ + -e BUILD_WITH_CONDA_DEBUG \ + -e BUILD_OUTPUT_ID \ + -e BINSTAR_TOKEN \ + -e FEEDSTOCK_TOKEN \ + -e STAGING_BINSTAR_TOKEN \ $DOCKER_IMAGE \ bash \ /home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 775799b..c299b79 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -23,7 +23,7 @@ source ${HOME}/miniforge3/etc/profile.d/conda.sh conda activate base echo -e "\n\nInstalling conda-forge-ci-setup=3 and conda-build." -conda install -n base --quiet --yes conda-forge-ci-setup=3 conda-build pip +conda install -n base --quiet --yes "conda-forge-ci-setup=3" conda-build pip @@ -47,9 +47,11 @@ set -e echo -e "\n\nMaking the build clobber file and running the build." make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml -conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --clobber-file ./.ci_support/clobber_${CONFIG}.yaml + +conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --suppress-variables --clobber-file ./.ci_support/clobber_${CONFIG}.yaml ${EXTRA_CB_OPTIONS:-} +validate_recipe_outputs "${FEEDSTOCK_NAME}" if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then echo -e "\n\nUploading the packages." - upload_package ./ ./recipe ./.ci_support/${CONFIG}.yaml + upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml fi \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE.txt index cba42cf..5f30279 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,5 +1,5 @@ BSD 3-clause license -Copyright (c) 2015-2019, conda-forge +Copyright (c) 2015-2020, conda-forge contributors All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/README.md b/README.md index 30cc143..271567b 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,14 @@ Home: http://shogun.ml Package license: GPL-3.0 -Feedstock license: BSD 3-Clause +Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/shogun-feedstock/blob/master/LICENSE.txt) Summary: Unified and efficient Machine Learning +Development: https://github.com/shogun-toolbox/shogun/wiki + +Documentation: http://shogun.ml/examples/latest/index.html + The Shogun Machine learning toolbox offers a wide range of efficient and unified Machine Learning methods. @@ -31,45 +35,66 @@ Current build status - + - + - + - + - + - + + + + + + + + + + @@ -78,12 +103,6 @@ Current build status - - - -
VariantStatus
linux_python3.6.____cpythonlinux_64_python3.6.____cpython - variant + variant
linux_python3.7.____cpythonlinux_64_python3.7.____cpython - variant + variant
osx_python3.6.____cpythonlinux_64_python3.8.____cpython - variant + variant
osx_python3.7.____cpythonosx_64_python3.6.____cpython - variant + variant
win_python3.6.____cpythonosx_64_python3.7.____cpython - variant + variant
win_python3.7.____cpythonosx_64_python3.8.____cpython - variant + variant + +
win_64_python3.6.____cpython + + variant + +
win_64_python3.7.____cpython + + variant + +
win_64_python3.8.____cpython + + variant
Linux_ppc64le - ppc64le disabled -
Current release info diff --git a/azure-pipelines.yml b/azure-pipelines.yml index e5306da..6b346f5 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -4,5 +4,5 @@ jobs: - template: ./.azure-pipelines/azure-pipelines-linux.yml - - 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-win.yml + - template: ./.azure-pipelines/azure-pipelines-osx.yml \ No newline at end of file diff --git a/build-locally.py b/build-locally.py index 8f7ecca..3453cfe 100755 --- a/build-locally.py +++ b/build-locally.py @@ -12,6 +12,10 @@ def setup_environment(ns): os.environ["CONFIG"] = ns.config os.environ["UPLOAD_PACKAGES"] = "False" + if ns.debug: + os.environ["BUILD_WITH_CONDA_DEBUG"] = "1" + if ns.output_id: + os.environ["BUILD_OUTPUT_ID"] = ns.output_id def run_docker_build(ns): @@ -51,6 +55,14 @@ def verify_config(ns): def main(args=None): p = ArgumentParser("build-locally") p.add_argument("config", default=None, nargs="?") + p.add_argument( + "--debug", + action="store_true", + help="Setup debug environment using `conda debug`", + ) + p.add_argument( + "--output-id", help="If running debug, specify the output to setup." + ) ns = p.parse_args(args=args) verify_config(ns) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index bde5fdd..ef4d0dd 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -29,7 +29,7 @@ source: {% set lc, vs, ve, prefix, parbuild = "\\", "$", "", "$PREFIX", "-j $CPU_COUNT" %} # [unix] {% set lc, vs, ve, prefix, parbuild = "^", "%", "%", "%LIBRARY_PREFIX%", "" %} # [win] build: - number: 3 + number: 4 features: - blas_{{ blas_variant }} # [not win] skip: true # [win32 or (win and vc<14)] @@ -44,7 +44,7 @@ build: pylib=$(ldd $PYTHON | grep $PREFIX | grep 'libpython.*\.so' | cut -d' ' -f3) # [linux] cmake .. {{ lc }} - -G"{{vs}}CMAKE_GENERATOR{{ve}}" {{ lc }} + -G"{{ vs }}CMAKE_GENERATOR{{ ve }}" {{ lc }} -DCMAKE_PREFIX_PATH="{{ prefix }}" {{ lc }} -DCMAKE_INSTALL_PREFIX="{{ prefix }}" {{ lc }} -DCMAKE_BUILD_TYPE=Release {{ lc }} @@ -53,7 +53,7 @@ build: -DENABLE_TESTING=OFF {{ lc }} -DENABLE_COVERAGE=OFF {{ lc }} -DUSE_SVMLIGHT=OFF {{ lc }} - -DPYTHON_EXECUTABLE={{vs}}PYTHON{{ve}} {{ lc }} + -DPYTHON_EXECUTABLE={{ vs }}PYTHON{{ ve }} {{ lc }} -DPYTHON_INCLUDE_DIR=$pyinc \ # [unix] -DPYTHON_LIBRARY=$pylib \ # [unix] -DLIBSHOGUN=OFF {{ lc }}