Skip to content

Commit d864246

Browse files
authored
Merge pull request #4477 from firedrakeproject/connorjward/merge-release
2 parents 237c17e + bd78e5e commit d864246

File tree

70 files changed

+127417
-36501
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+127417
-36501
lines changed

.github/workflows/core.yml

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
type: string
99
required: true
1010
target_branch:
11-
description: The target branch (usually 'master' or 'release')
11+
description: The target branch (usually 'main' or 'release')
1212
type: string
1313
required: true
1414
run_tests:
@@ -39,7 +39,7 @@ on:
3939
type: string
4040
required: true
4141
target_branch:
42-
description: The target branch (usually 'master' or 'release')
42+
description: The target branch (usually 'main' or 'release')
4343
type: string
4444
required: true
4545
run_tests:
@@ -93,7 +93,9 @@ jobs:
9393
FIREDRAKE_CI: 1
9494
PYOP2_CI_TESTS: 1
9595
PYOP2_SPMD_STRICT: 1
96-
EXTRA_PYTEST_ARGS: --splitting-algorithm least_duration --timeout=600 --timeout-method=thread -o faulthandler_timeout=660
96+
# NOTE: One should occasionally update test_durations.json by running
97+
# 'make test_durations' inside a 'firedrake:latest' Docker image.
98+
EXTRA_PYTEST_ARGS: --splitting-algorithm least_duration --timeout=600 --timeout-method=thread -o faulthandler_timeout=660 --durations-path=./firedrake-repo/tests/test_durations.json
9799
PYTEST_MPI_MAX_NPROCS: 8
98100
steps:
99101
- name: Fix HOME
@@ -144,7 +146,7 @@ jobs:
144146
$(python3 ./firedrake-repo/scripts/firedrake-configure --arch ${{ matrix.arch }} --show-system-packages)
145147
apt-get -y install python3-venv
146148
: # Dependencies needed to run the test suite
147-
apt-get -y install parallel
149+
apt-get -y install fonts-dejavu graphviz graphviz-dev parallel poppler-utils
148150
149151
- name: Install PETSc
150152
run: |
@@ -205,7 +207,10 @@ jobs:
205207
pip install --verbose $EXTRA_PIP_FLAGS \
206208
--no-binary h5py \
207209
--extra-index-url https://download.pytorch.org/whl/cpu \
208-
"$(echo ./firedrake-repo/dist/firedrake-*.tar.gz)[ci,docs]"
210+
"$(echo ./firedrake-repo/dist/firedrake-*.tar.gz)"
211+
212+
pip install -U pip
213+
pip install --group ./firedrake-repo/pyproject.toml:ci
209214
210215
firedrake-clean
211216
pip list
@@ -235,7 +240,7 @@ jobs:
235240
: # Use pytest-xdist here so we can have a single collated output (not possible
236241
: # for parallel tests)
237242
firedrake-run-split-tests 1 1 -n 8 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/tsfc
238-
timeout-minutes: 60
243+
timeout-minutes: 10
239244

240245
- name: Run PyOP2 tests
241246
if: inputs.run_tests && (success() || steps.install.conclusion == 'success')
@@ -247,7 +252,7 @@ jobs:
247252
firedrake-run-split-tests 2 4 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/pyop2
248253
firedrake-run-split-tests 3 2 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/pyop2
249254
firedrake-run-split-tests 4 2 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/pyop2
250-
timeout-minutes: 15
255+
timeout-minutes: 10
251256

252257

253258
- name: Run Firedrake tests (nprocs = 1)
@@ -257,14 +262,14 @@ jobs:
257262
: # Use pytest-xdist here so we can have a single collated output (not possible
258263
: # for parallel tests)
259264
firedrake-run-split-tests 1 1 -n 8 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/firedrake
260-
timeout-minutes: 60
265+
timeout-minutes: 90
261266

262267
- name: Run tests (nprocs = 2)
263268
if: inputs.run_tests && (success() || steps.install.conclusion == 'success')
264269
run: |
265270
. venv/bin/activate
266271
firedrake-run-split-tests 2 4 "$EXTRA_PYTEST_ARGS" firedrake-repo/tests/firedrake
267-
timeout-minutes: 30
272+
timeout-minutes: 60
268273

269274
- name: Run tests (nprocs = 3)
270275
if: inputs.run_tests && (success() || steps.install.conclusion == 'success')
@@ -423,6 +428,8 @@ jobs:
423428
echo Error: there are untracked files in the repository
424429
echo The output from 'git status' is:
425430
git status
431+
echo The output from 'git diff' is:
432+
git diff
426433
exit 1
427434
fi
428435
@@ -542,12 +549,12 @@ jobs:
542549
deploy_website:
543550
name: Deploy GitHub pages (optional)
544551
needs: test_linux
545-
# Only deploy the website for master here, the release branch is managed
552+
# Only deploy the website for main here, the release branch is managed
546553
# by https://github.com/firedrakeproject/firedrakeproject.github.io
547554
if: |
548555
always() &&
549556
inputs.deploy_website &&
550-
inputs.target_branch == 'master' &&
557+
inputs.target_branch == 'main' &&
551558
needs.test_linux.outputs.docs_conclusion == 'success'
552559
permissions:
553560
pages: write
@@ -571,15 +578,15 @@ jobs:
571578
runs-on: ubuntu-latest
572579
environment:
573580
name: pypi
574-
permissions:
575-
id-token: write
576581
steps:
577582
- uses: actions/download-artifact@v4
578583
with:
579584
name: dist
580585
path: dist
581586
- name: Push to PyPI
582587
uses: pypa/gh-action-pypi-publish@release/v1
588+
with:
589+
password: ${{ secrets.PYPI_API_TOKEN }}
583590

584591
upload_testpypi:
585592
name: Upload to TestPyPI (optional)

.github/workflows/push.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Deploy after push
33
on:
44
push:
55
branches:
6-
- master
6+
- main
77
- release
88

99
jobs:

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,12 @@ __pycache__/
1515
/demos/immersed_fem/immersed_domain.msh
1616
/docs/build/
1717
/docs/notebooks/.ipynb_checkpoints/
18+
/docs/notebooks/tape.pdf
1819
/docs/source/apt_deps.txt
1920
/docs/source/firedrake.rst
2021
/docs/source/firedrake.*.rst
2122
/docs/source/homebrew_deps.txt
23+
/docs/source/minimal_apt_deps.txt
2224
/docs/source/obtaining_pyop2.rst
2325
/docs/source/petsc_configure_options.txt
2426
/docs/source/team.rst

0 commit comments

Comments
 (0)