From 14ed3a4474812d2bd7bb7ff9ba8fc2943535ce11 Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Wed, 10 Nov 2021 22:43:41 +0000 Subject: [PATCH 1/3] updated v8.0b3 --- recipe/meta.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index f911440..940e63a 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,17 +1,17 @@ {% set name = "cylc-flow" %} -{% set version = "8.0b2" %} +{% set version = "8.0b3" %} package: name: {{ name|lower }} - version: "{{ version }}" + version: {{ version }} source: url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz - sha256: db5ed370ac520a6de4321afa92aacaf3ca47d82b338ca41407402cca3b1985e9 + sha256: 8b694afb63f66ce4d9268e920f76a0c4d43d11f70efed4e3e0ff0f52928b5db4 build: number: 0 - skip: True # [py<37 or not unix] + skip: true # [py<37 or not unix] script: {{ PYTHON }} -m pip install . --no-deps --ignore-installed -vv requirements: @@ -49,7 +49,7 @@ about: license: GPL-3.0-only license_family: GPL license_file: LICENSE.txt - summary: 'A workflow engine for cycling systems' + summary: A workflow engine for cycling systems description: | Cylc ("silk") orchestrates complex distributed suites of interdependent cycling (or non-cycling) tasks. It was originally designed to automate From 3f8c6c651a7a5d5d755e9beee0c42b54950c7faa Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Wed, 10 Nov 2021 22:44:13 +0000 Subject: [PATCH 2/3] MNT: Re-rendered with conda-build 3.21.6, conda-smithy 3.14.3, and conda-forge-pinning 2021.11.10.21.33.30 --- .azure-pipelines/azure-pipelines-linux.yml | 5 +++++ .azure-pipelines/azure-pipelines-osx.yml | 5 +++++ .ci_support/linux_64_python3.7.____cpython.yaml | 2 +- .ci_support/linux_64_python3.8.____cpython.yaml | 2 +- .ci_support/linux_64_python3.9.____cpython.yaml | 2 +- .ci_support/osx_64_python3.7.____cpython.yaml | 2 +- .ci_support/osx_64_python3.8.____cpython.yaml | 2 +- .ci_support/osx_64_python3.9.____cpython.yaml | 2 +- .gitattributes | 1 + .scripts/build_steps.sh | 6 ++++-- .scripts/run_docker_build.sh | 7 +++++-- .scripts/run_osx_build.sh | 8 +++++--- README.md | 3 ++- build-locally.py | 5 +++++ 14 files changed, 38 insertions(+), 14 deletions(-) diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 3adf3ac..8edf22a 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -40,6 +40,11 @@ jobs: export CI=azure export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) + if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then + export IS_PR_BUILD="True" + else + export IS_PR_BUILD="False" + fi .scripts/run_docker_build.sh displayName: Run docker build env: diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index 46f2d97..7c4c40e 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -26,6 +26,11 @@ jobs: export OSX_FORCE_SDK_DOWNLOAD="1" export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) + if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then + export IS_PR_BUILD="True" + else + export IS_PR_BUILD="False" + fi ./.scripts/run_osx_build.sh displayName: Run OSX build env: diff --git a/.ci_support/linux_64_python3.7.____cpython.yaml b/.ci_support/linux_64_python3.7.____cpython.yaml index ae99d55..5a90251 100644 --- a/.ci_support/linux_64_python3.7.____cpython.yaml +++ b/.ci_support/linux_64_python3.7.____cpython.yaml @@ -1,7 +1,7 @@ cdt_name: - cos6 channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main docker_image: diff --git a/.ci_support/linux_64_python3.8.____cpython.yaml b/.ci_support/linux_64_python3.8.____cpython.yaml index f0c7b1c..0d069a8 100644 --- a/.ci_support/linux_64_python3.8.____cpython.yaml +++ b/.ci_support/linux_64_python3.8.____cpython.yaml @@ -1,7 +1,7 @@ cdt_name: - cos6 channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main docker_image: diff --git a/.ci_support/linux_64_python3.9.____cpython.yaml b/.ci_support/linux_64_python3.9.____cpython.yaml index 5373535..0fff9b0 100644 --- a/.ci_support/linux_64_python3.9.____cpython.yaml +++ b/.ci_support/linux_64_python3.9.____cpython.yaml @@ -1,7 +1,7 @@ cdt_name: - cos6 channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main docker_image: diff --git a/.ci_support/osx_64_python3.7.____cpython.yaml b/.ci_support/osx_64_python3.7.____cpython.yaml index 163d3ce..3de984b 100644 --- a/.ci_support/osx_64_python3.7.____cpython.yaml +++ b/.ci_support/osx_64_python3.7.____cpython.yaml @@ -1,7 +1,7 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main macos_machine: diff --git a/.ci_support/osx_64_python3.8.____cpython.yaml b/.ci_support/osx_64_python3.8.____cpython.yaml index 63cee21..76bbd40 100644 --- a/.ci_support/osx_64_python3.8.____cpython.yaml +++ b/.ci_support/osx_64_python3.8.____cpython.yaml @@ -1,7 +1,7 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main macos_machine: diff --git a/.ci_support/osx_64_python3.9.____cpython.yaml b/.ci_support/osx_64_python3.9.____cpython.yaml index 51915a8..ab5e193 100644 --- a/.ci_support/osx_64_python3.9.____cpython.yaml +++ b/.ci_support/osx_64_python3.9.____cpython.yaml @@ -1,7 +1,7 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main macos_machine: diff --git a/.gitattributes b/.gitattributes index 9060b27..ce52713 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/.scripts/build_steps.sh b/.scripts/build_steps.sh index 80f7fc4..92125dd 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -25,7 +25,8 @@ conda-build: root-dir: ${FEEDSTOCK_ROOT}/build_artifacts CONDARC -BUILD_CMD=build +GET_BOA=boa +BUILD_CMD=mambabuild conda install --yes --quiet "conda-forge-ci-setup=3" conda-build pip ${GET_BOA:-} -c conda-forge @@ -46,6 +47,7 @@ source run_conda_forge_build_setup make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" + ( endgroup "Configuring conda" ) 2> /dev/null if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then @@ -70,7 +72,7 @@ else ( startgroup "Uploading packages" ) 2> /dev/null - if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then + if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" fi diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 244ccd1..0c6515f 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -75,12 +75,15 @@ fi ( startgroup "Start Docker" ) 2> /dev/null export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" +export IS_PR_BUILD="${IS_PR_BUILD:-False}" +docker pull "${DOCKER_IMAGE}" docker run ${DOCKER_RUN_ARGS} \ -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ -e CONFIG \ -e HOST_USER_ID \ -e UPLOAD_PACKAGES \ + -e IS_PR_BUILD \ -e GIT_BRANCH \ -e UPLOAD_ON_BRANCH \ -e CI \ @@ -91,9 +94,9 @@ docker run ${DOCKER_RUN_ARGS} \ -e BINSTAR_TOKEN \ -e FEEDSTOCK_TOKEN \ -e STAGING_BINSTAR_TOKEN \ - $DOCKER_IMAGE \ + "${DOCKER_IMAGE}" \ bash \ - /home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh + "/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh" # verify that the end of the script was reached test -f "$DONE_CANARY" diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 96d0278..d6de123 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -9,15 +9,17 @@ MINIFORGE_HOME=${MINIFORGE_HOME:-${HOME}/miniforge3} ( startgroup "Installing a fresh version of Miniforge" ) 2> /dev/null MINIFORGE_URL="https://github.com/conda-forge/miniforge/releases/latest/download" -MINIFORGE_FILE="Miniforge3-MacOSX-x86_64.sh" +MINIFORGE_FILE="Miniforge3-MacOSX-$(uname -m).sh" curl -L -O "${MINIFORGE_URL}/${MINIFORGE_FILE}" +rm -rf ${MINIFORGE_HOME} bash $MINIFORGE_FILE -b -p ${MINIFORGE_HOME} ( endgroup "Installing a fresh version of Miniforge" ) 2> /dev/null ( startgroup "Configuring conda" ) 2> /dev/null -BUILD_CMD=build +GET_BOA=boa +BUILD_CMD=mambabuild source ${MINIFORGE_HOME}/etc/profile.d/conda.sh conda activate base @@ -62,7 +64,7 @@ validate_recipe_outputs "${FEEDSTOCK_NAME}" ( startgroup "Uploading packages" ) 2> /dev/null -if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then +if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml fi diff --git a/README.md b/README.md index 372b2cf..724c7de 100644 --- a/README.md +++ b/README.md @@ -119,7 +119,8 @@ conda search cylc-flow --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 00eeb34..8b74348 100755 --- a/build-locally.py +++ b/build-locally.py @@ -13,6 +13,7 @@ def setup_environment(ns): os.environ["CONFIG"] = ns.config os.environ["UPLOAD_PACKAGES"] = "False" + os.environ["IS_PR_BUILD"] = "True" if ns.debug: os.environ["BUILD_WITH_CONDA_DEBUG"] = "1" if ns.output_id: @@ -21,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): From 45df99a924219161e7b34c5e78f65e27994c9326 Mon Sep 17 00:00:00 2001 From: Oliver Sanders Date: Thu, 11 Nov 2021 10:54:32 +0000 Subject: [PATCH 3/3] 8.0b3 adjustments * Update dependencies. * Update metadata. * Split package into `cylc-flow-base` (required deps only) and `cylc-flow` (all optional deps). --- recipe/meta.yaml | 71 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 47 insertions(+), 24 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 940e63a..79210a6 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -12,50 +12,73 @@ source: build: number: 0 skip: true # [py<37 or not unix] - script: {{ PYTHON }} -m pip install . --no-deps --ignore-installed -vv requirements: host: - pip - python run: - - aiofiles >=0.7.0,<0.8.0 - - ansimarkup >=1.0.0 - - colorama >=0.4,<1.0 - - graphene >=2.1,<3 - - jinja2 ==2.11.0,<2.12 - - metomi-isodatetime >=1!2.0.2, <1!2.1.0 - - protobuf >=3.15.0,<3.16.0 - - psutil >=5.6.0 - python - - pyuv >=1.4.0,<1.5.0 - - pyzmq >=19.0.0,<19.1.0 - - setuptools >=49 - - urwid >=2,<3 - # TODO: optional dependencies, see discussion here https://github.com/conda-forge/cylc-flow-feedstock/pull/4 - - empy >=3.3,<3.4 - - pandas >=1.0 - - pympler - - matplotlib-base test: imports: - cylc.flow commands: - cylc --version + - cylc version --long + - cylc extract-resources etc/job.sh # check packaging of non-python files + +outputs: + # base package with only required dependencies + - name: {{ name }}-base + build: + script: python -m pip install . --no-deps --ignore-installed -vv + requirements: + host: + - pip + - python + run: + - python + - aiofiles >=0.7.0,<0.8.0 + - ansimarkup >=1.0.0 + - colorama >=0.4,<1.0 + - graphene >=2.1,<3 + - jinja2 ==2.11.0,<2.12 + - metomi-isodatetime >=1!2.0.2, <1!2.1.0 + - protobuf >=3.15.0,<3.16.0 + - psutil >=5.6.0 + - pyuv >=1.4.0,<1.5.0 + - pyzmq >=19.0.0,<19.1.0 + - setuptools >=49 + - urwid >=2,<3 + + # full package with all dependencies installed + - name: {{ name }} + build: + script: python -m pip install .[empy,report-timings] --no-deps --ignore-installed -vv + requirements: + host: + - pip + - python + run: + - python + - {{ pin_subpackage(name + "-base", exact=True) }} + - empy >=3.3,<3.4 + - graphviz # for static graphing + - pandas >=1.0,<2 + - matplotlib-base about: - home: https://cylc.github.io/ + home: https://cylc.org/ license: GPL-3.0-only license_family: GPL license_file: LICENSE.txt summary: A workflow engine for cycling systems description: | - Cylc ("silk") orchestrates complex distributed suites of interdependent - cycling (or non-cycling) tasks. It was originally designed to automate - environmental forecasting systems at NIWA, however Cylc is a general - workflow engine; it is not specialized to forecasting in any way. - doc_url: https://cylc.github.io/documentation.html + Cylc ("silk") is a workflow engine for cycling systems - it orchestrates + distributed workflows of interdependent cycling tasks that may continue to + run indefinitely. + doc_url: https://cylc.github.io/cylc-doc/ dev_url: https://github.com/cylc/cylc-flow extra: