diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 9ffb709..89ab23f 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -6,15 +6,21 @@ jobs: - job: linux pool: vmImage: ubuntu-16.04 - timeoutInMinutes: 360 strategy: - maxParallel: 8 matrix: - linux_: - CONFIG: linux_ - UPLOAD_PACKAGES: True + linux_64_: + CONFIG: linux_64_ + UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: condaforge/linux-anvil-comp7 + maxParallel: 8 + 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: | @@ -26,7 +32,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 deleted file mode 100755 index d08eca1..0000000 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ /dev/null @@ -1,85 +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. -# -*- mode: yaml -*- - -jobs: -- job: osx - pool: - vmImage: macOS-10.13 - timeoutInMinutes: 360 - strategy: - maxParallel: 8 - matrix: - osx_python2.7: - CONFIG: osx_python2.7 - UPLOAD_PACKAGES: True - osx_python3.6: - CONFIG: osx_python3.6 - UPLOAD_PACKAGES: True - osx_python3.7: - CONFIG: osx_python3.7 - UPLOAD_PACKAGES: True - osx_python3.8: - CONFIG: osx_python3.8 - UPLOAD_PACKAGES: True - - steps: - # TODO: Fast finish on azure pipelines? - - script: | - echo "Fast Finish" - - - - script: | - echo "Removing homebrew from Azure to avoid conflicts." - curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall > ~/uninstall_homebrew - chmod +x ~/uninstall_homebrew - ~/uninstall_homebrew -fq - rm ~/uninstall_homebrew - displayName: Remove homebrew - - - bash: | - echo "##vso[task.prependpath]$CONDA/bin" - sudo chown -R $USER $CONDA - displayName: Add conda to PATH - - - script: | - source activate base - conda install -n base -c conda-forge --quiet --yes conda-forge-ci-setup=2 conda-build - displayName: 'Add conda-forge-ci-setup=2' - - - script: | - source activate base - echo "Configuring conda." - - setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml - export CI=azure - source run_conda_forge_build_setup - conda update --yes --quiet --override-channels -c conda-forge -c defaults --all - env: { - OSX_FORCE_SDK_DOWNLOAD: "1" - } - displayName: Configure conda and conda-build - - - script: | - source activate base - mangle_compiler ./ ./recipe ./.ci_support/${CONFIG}.yaml - displayName: Mangle compiler - - - script: | - source activate base - make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml - displayName: Generate build number clobber file - - - script: | - source activate base - conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --clobber-file ./.ci_support/clobber_${CONFIG}.yaml - displayName: Build recipe - - - script: | - source activate base - export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME - upload_package ./ ./recipe ./.ci_support/${CONFIG}.yaml - displayName: Upload package - env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) - condition: not(eq(variables['UPLOAD_PACKAGES'], 'False')) \ No newline at end of file diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml deleted file mode 100755 index 63b21e6..0000000 --- a/.azure-pipelines/azure-pipelines-win.yml +++ /dev/null @@ -1,115 +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. -# -*- mode: yaml -*- - -jobs: -- job: win - pool: - vmImage: vs2017-win2016 - timeoutInMinutes: 360 - strategy: - maxParallel: 4 - matrix: - win_python2.7: - CONFIG: win_python2.7 - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - win_python3.6: - CONFIG: win_python3.6 - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - win_python3.7: - CONFIG: win_python3.7 - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - win_python3.8: - CONFIG: win_python3.8 - CONDA_BLD_PATH: D:\\bld\\ - UPLOAD_PACKAGES: True - steps: - # TODO: Fast finish on azure pipelines? - - script: | - ECHO ON - - - - script: | - choco install vcpython27 -fdv -y --debug - condition: contains(variables['CONFIG'], 'vs2008') - displayName: Install vcpython27.msi (if needed) - - # Cygwin's git breaks conda-build. (See https://github.com/conda-forge/conda-smithy-feedstock/pull/2.) - # - script: rmdir C:\cygwin /s /q - # continueOnError: true - - - powershell: | - Set-PSDebug -Trace 1 - - $batchcontent = @" - ECHO ON - SET vcpython=C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0 - - DIR "%vcpython%" - - CALL "%vcpython%\vcvarsall.bat" %* - "@ - - $batchDir = "C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC" - $batchPath = "$batchDir" + "\vcvarsall.bat" - New-Item -Path $batchPath -ItemType "file" -Force - - Set-Content -Value $batchcontent -Path $batchPath - - Get-ChildItem -Path $batchDir - - Get-ChildItem -Path ($batchDir + '\..') - - condition: contains(variables['CONFIG'], 'vs2008') - displayName: Patch vs2008 (if needed) - - - task: CondaEnvironment@1 - inputs: - packageSpecs: 'python=3.6 conda-build conda conda-forge::conda-forge-ci-setup=2' # Optional - installOptions: "-c conda-forge" - updateConda: false - displayName: Install conda-build and activate environment - - - script: set PYTHONUNBUFFERED=1 - - # Configure the VM - - script: setup_conda_rc .\ .\recipe .\.ci_support\%CONFIG%.yaml - - # Configure the VM. - - script: | - set "CI=azure" - run_conda_forge_build_setup - displayName: conda-forge build setup - - - - script: | - rmdir C:\strawberry /s /q - continueOnError: true - displayName: remove strawberryperl - - # Special cased version setting some more things! - - script: | - conda.exe build recipe -m .ci_support\%CONFIG%.yaml - displayName: Build recipe (vs2008) - env: - VS90COMNTOOLS: "C:\\Program Files (x86)\\Common Files\\Microsoft\\Visual C++ for Python\\9.0\\VC\\bin" - PYTHONUNBUFFERED: 1 - condition: contains(variables['CONFIG'], 'vs2008') - - - script: | - conda.exe build recipe -m .ci_support\%CONFIG%.yaml - displayName: Build recipe - env: - PYTHONUNBUFFERED: 1 - condition: not(contains(variables['CONFIG'], 'vs2008')) - - - script: | - set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" - upload_package .\ .\recipe .ci_support\%CONFIG%.yaml - displayName: Upload package - env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) - condition: not(eq(variables['UPLOAD_PACKAGES'], 'False')) diff --git a/.ci_support/linux_.yaml b/.ci_support/linux_64_.yaml similarity index 100% rename from .ci_support/linux_.yaml rename to .ci_support/linux_64_.yaml 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 b21baf1..ba61268 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -19,7 +19,7 @@ conda-build: CONDARC -conda install --yes --quiet conda-forge-ci-setup=2 conda-build -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}" @@ -38,10 +38,12 @@ source run_conda_forge_build_setup make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + --suppress-variables \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" +validate_recipe_outputs "${FEEDSTOCK_NAME}" if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then - upload_package "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" + upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 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 066a857..e4d5bab 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 @@ -52,21 +56,27 @@ mkdir -p "$ARTIFACTS" DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" rm -f "$DONE_CANARY" +# Allow people to specify extra default arguments to `docker run` (e.g. `--rm`) +DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}" if [ -z "${CI}" ]; then - DOCKER_RUN_ARGS="-it " + DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" fi export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" docker run ${DOCKER_RUN_ARGS} \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root:ro,z \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z \ -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z \ -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 BINSTAR_TOKEN \ + -e FEEDSTOCK_TOKEN \ + -e STAGING_BINSTAR_TOKEN \ $DOCKER_IMAGE \ bash \ /home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh 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 1abd6b0..9bc4103 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Home: https://github.com/Unidata/MetPy Package license: BSD-3-Clause -Feedstock license: BSD 3-Clause +Feedstock license: BSD-3-Clause Summary: MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data. diff --git a/conda-forge.yml b/conda-forge.yml index 9ae75e2..2fd4d3c 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,8 +1,5 @@ appveyor: secure: {BINSTAR_TOKEN: tumuXLL8PU75WMnRDemRy02ruEq2RpNxeK3dz0MjFssnosPm2v4EFjfNB4PTotA1} -compiler_stack: comp7 -max_py_ver: '37' -max_r_ver: '35' travis: secure: {BINSTAR_TOKEN: gCydVXHgGeRPwrZ24KgFLc+eJwNGMr+0zPAbWKpRPePG5OwaZamnBPogcC43i6OjtcCJTKcheAZgoDwzmMGDJseJ9rF0anrwy+wU32o8Qk2PbAZXaxSEcwLK+MHKZk3qn1j/NMNDQqMIQd9g57lzeVWRsQ9MiOO7Zg1G7T5REWqaeoYHY9m50TfD0/9NpRTL9UqId2hI57F4ZMJynAkhJgQlrfjCeDLBuf8M5USjk2dnegahO5/ZxZljo5gvTLoLJdH8eErsJYCAUc1724iJuS9ODmYfPru6ypUDnC8qKEvkfDEGK/1uk6p9xq5qA5p4Q3N16cVrgET+CsByRDKiB0jDWI12U8PSSa7t8+DF/IukKa04Vm38cjuG7GHfajKa3ob0IcDwv5DuCoJymbhykNw6zNaek4Lj7d/0IBfgrkGnh5VYbbW73rnpjTsuyVEqGFhYUGGWShEZKslw9mq7UxztzhEVplDQG08di0zqQb18OxPAHlnp/t76VRSPz+lvoZvggO0eobqMVMdF/E1Fmb/A4C+8QLx4zK+FZaS513icWQgeZdR27L20hXtJbqNaIPjyPUV+vdvDb2QdnVgtGU0s1Y9PQ1FfL9bPqw+2ixMX9gJhpMZg3gB8yN7h38C+ZoTyNuXpSDdLVDTy0ebMA8FPCKOw9ixZCSEgYLDOyY4=} provider: diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 8a019f7..e9582cb 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,5 @@ {% set name = "MetPy" %} -{% set version = "0.12.1" %} +{% set version = "0.12.2" %} package: name: {{ name|lower }} @@ -7,12 +7,12 @@ package: source: url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz - sha256: 2031007f12748c3aedad85694f71ffb3caf9933b72b5a330b59ea454285d0f50 + sha256: 54993d3a9b7f9986d64cc9783ad6947b1d95e3877bc99fa368c3bb1d6f381282 build: - noarch: python - script: "{{ PYTHON }} -m pip install . --no-deps -vv" - number: 0 + noarch: python + script: {{ PYTHON }} -m pip install . --no-deps -vv + number: 0 requirements: host: @@ -47,7 +47,7 @@ about: license: BSD-3-Clause license_family: BSD license_file: LICENSE - summary: 'MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data.' + summary: MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data. description: | The space MetPy aims for is GEMPAK (and maybe NCL)-like functionality, in a way that plugs easily into the existing scientific Python ecosystem