Skip to content

Commit

Permalink
Merge branch 'master' into 8.1.x-deconflict
Browse files Browse the repository at this point in the history
  • Loading branch information
MetRonnie authored May 11, 2023
2 parents ce6b7bf + 3d49d4f commit 7d23448
Show file tree
Hide file tree
Showing 97 changed files with 4,058 additions and 3,554 deletions.
31 changes: 0 additions & 31 deletions .github/ISSUE_TEMPLATE/bug-report.md

This file was deleted.

20 changes: 0 additions & 20 deletions .github/ISSUE_TEMPLATE/feature-request.md

This file was deleted.

18 changes: 0 additions & 18 deletions .github/PULL_REQUEST_TEMPLATE.md

This file was deleted.

3 changes: 1 addition & 2 deletions .github/workflows/1_create_release_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v4
with:
# return to 3.x once compatible with 3.10+ (pyuv)
python-version: '3.9'
python-version: '3.x'

- name: Create & checkout PR branch
uses: cylc/release-actions/stage-1/checkout-pr-branch@v1
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/2_auto_publish_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v4
with:
# return to 3.x once compatible with 3.10+ (pyuv)
python-version: '3.9'
python-version: '3.x'

- name: Get the version number
uses: cylc/release-actions/stage-2/get-version-from-pr@v1
Expand All @@ -39,7 +38,7 @@ jobs:
uses: cylc/release-actions/build-python-package@v1

- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@v1.6.4
uses: pypa/gh-action-pypi-publish@v1.8.6
with:
user: __token__ # uses the API token feature of PyPI - least permissions possible
password: ${{ secrets.PYPI_TOKEN }}
Expand Down
114 changes: 114 additions & 0 deletions .github/workflows/branch_sync.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
name: Sync PR

on:
push:
branches:
- '8.*.x'
workflow_dispatch:
inputs:
branch:
description: Branch to merge into master
required: true

jobs:
sync:
runs-on: ubuntu-latest
timeout-minutes: 5
env:
BRANCH: ${{ inputs.branch || github.ref_name }}
steps:
- name: Check branch name
shell: python
run: |
import os
import sys
branch = os.environ['BRANCH'].strip()
if not branch:
sys.exit("::error::Branch name cannot be empty")
if branch.endswith('deconflict'):
sys.exit("::error::Do not run this workflow for already-created deconflict branches")
with open(os.environ['GITHUB_ENV'], 'a') as F:
print(f'BRANCH={branch}', file=F)
print(f'DECONFLICT_BRANCH={branch}-deconflict', file=F)
- name: Check for existing PR
id: check-pr
shell: python
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
import os
import json
import subprocess
import sys
for env_var in ('BRANCH', 'DECONFLICT_BRANCH'):
branch = os.environ[env_var]
cmd = f'gh pr list -B master -H {branch} -s open --json url -R ${{ github.repository }}'
ret = subprocess.run(
cmd, shell=True, capture_output=True, text=True
)
print(ret.stdout)
if ret.stderr:
print(f"::error::{ret.stderr}")
if ret.returncode:
sys.exit(ret.returncode)
if json.loads(ret.stdout):
print(f"::notice::Found existing PR for {branch}")
sys.exit(0)
print("No open PRs found")
with open(os.environ['GITHUB_OUTPUT'], 'a') as f:
print('continue=true', file=f)
- name: Checkout
if: steps.check-pr.outputs.continue
uses: actions/checkout@v3
with:
fetch-depth: 0
ref: master

- name: Configure git
if: steps.check-pr.outputs.continue
uses: cylc/release-actions/configure-git@v1

- name: Attempt merge
id: merge
if: steps.check-pr.outputs.continue
continue-on-error: true
run: git merge "origin/${BRANCH}"

- name: Diff
id: diff
if: steps.merge.outcome == 'success'
run: |
if [[ "$(git rev-parse HEAD)" == "$(git rev-parse origin/master)" ]]; then
echo "::notice::master is up to date with $BRANCH"
exit 0
fi
if git diff HEAD^ --exit-code --stat; then
echo "::notice::No diff between master and $BRANCH"
exit 0
fi
echo "continue=true" >> $GITHUB_OUTPUT
- name: Create deconflict branch
if: steps.merge.outcome == 'failure'
run: |
git merge --abort
git checkout -b "$DECONFLICT_BRANCH" "origin/${BRANCH}"
git push origin "$DECONFLICT_BRANCH"
echo "BRANCH=${DECONFLICT_BRANCH}" >> $GITHUB_ENV
- name: Open PR
if: steps.merge.outcome == 'failure' || steps.diff.outputs.continue
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh pr create --head "$BRANCH" \
--title "🤖 Merge ${BRANCH} into master" \
--body "Please do a **normal merge**, not squash merge\n\n---\n\nTriggered by ${GITHUB_EVENT_NAME}"
gh pr edit "$BRANCH" --add-label "sync" || true
6 changes: 3 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@ jobs:
strategy:
matrix:
os: ['ubuntu-latest']
python: ['3.7', '3.8', '3.9', '3.10']
python: ['3.7', '3.8', '3.9', '3.10', '3.11']
include:
- os: 'macos-latest'
python: '3.7'
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Setup Python
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_fast.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
fail-fast: false # Don't let a failed MacOS run stop the Ubuntu runs
matrix:
os: ['ubuntu-latest']
python-version: ['3.7', '3.8', '3.9', '3.10']
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
include:
- os: 'macos-latest'
python-version: '3.7'
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test_functional.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@ jobs:
# NOTE: includes must define ALL of the matrix values
include:
# latest python
- name: 'py-3.10'
- name: 'py-3.11'
os: 'ubuntu-latest'
python-version: '3.10'
python-version: '3.11'
test-base: 'tests/f'
chunk: '1/4'
platform: '_local_background*'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_manylinux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
matrix:
manylinux: ['1']
os: ['ubuntu-20.04'] # run on the oldest linux we have access to
python-version: ['3.7', '3.8', '3.9', '3.10']
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']

steps:
- name: Checkout
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/test_tutorial_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,16 @@ concurrency:

jobs:
test:
strategy:
matrix:
python-version: ['3.7', '3']
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: configure python
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: ${{ matrix.python-version }}

- name: checkout
uses: actions/checkout@v3
Expand Down
40 changes: 32 additions & 8 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,22 +11,42 @@ updated. Only the first match gets replaced, so it's fine to leave the old
ones in. -->

-------------------------------------------------------------------------------
## __cylc-8.1.5 (<span actions:bind='release-date'>Upcoming</span>)__
## __cylc-8.2.0 (<span actions:bind='release-date'>Upcoming</span>)__

### Enhancements

[#5405](https://github.com/cylc/cylc-flow/pull/5405) - Improve scan command
help, and add scheduler PID to the output.

[#5461](https://github.com/cylc/cylc-flow/pull/5461) - preserve colour
formatting when starting workflows in distributed mode using `run hosts`.

[#5291](https://github.com/cylc/cylc-flow/pull/5291) - re-implement old-style
clock triggers as wall_clock xtriggers.

[#5439](https://github.com/cylc/cylc-flow/pull/5439) - Small CLI short option chages:
Add the `-n` short option for `--workflow-name` to `cylc vip`; rename the `-n`
short option for `--no-detach` to `-N`; add `-r` as a short option for
`--run-name`.

### Fixes

[#5524](https://github.com/cylc/cylc-flow/pull/5524) - Logging includes timestamps
for `cylc play` when called by `cylc vip` or `cylc vr`.
[#5328](https://github.com/cylc/cylc-flow/pull/5328) -
Efficiency improvements to reduce task management overheads on the Scheduler.

-------------------------------------------------------------------------------
## __cylc-8.1.5 (<span actions:bind='release-date'>Awaiting Release</span>)__
## __cylc-8.1.5 (<span actions:bind='release-date'>Upcoming</span>)__

### Fixes

[#5228](https://github.com/cylc/cylc-flow/pull/5228) -
Enabled the "stop", "poll", "kill" and "message" commands to be issued from
the UI whilst the workflow is in the process of shutting down.

[#5524](https://github.com/cylc/cylc-flow/pull/5524) - Logging includes timestamps
for `cylc play` when called by `cylc vip` or `cylc vr`.

-------------------------------------------------------------------------------
## __cylc-8.1.4 (<span actions:bind='release-date'>Released 2023-05-04</span>)__

### Fixes
Expand Down Expand Up @@ -148,13 +168,17 @@ workflows with many-to-many dependencies (e.g. `<a> => <b>`).
- Allows Cylc commands (including validate, list, view, config, and graph) to load template variables
configured by `cylc install` and `cylc play`.

[#5184](https://github.com/cylc/cylc-flow/pull/5184) - scan for active
runs of the same workflow at install time.

[#5121](https://github.com/cylc/cylc-flow/pull/5121) - Added a single
command to validate, install and play a workflow.

[#5032](https://github.com/cylc/cylc-flow/pull/5032) - set a default limit of
[#5184](https://github.com/cylc/cylc-flow/pull/5184) - Scan for active
runs of the same workflow at install time.

[#5084](https://github.com/cylc/cylc-flow/pull/5084) - Assign the most recent
previous flow numbers to tasks triggered when no flows are present (e.g. on
restarting a finished workflow).

[#5032](https://github.com/cylc/cylc-flow/pull/5032) - Set a default limit of
100 for the "default" queue.

[#5055](https://github.com/cylc/cylc-flow/pull/5055) and
Expand Down
Loading

0 comments on commit 7d23448

Please sign in to comment.