File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -133,17 +133,6 @@ jobs:
133133 exit 1
134134 fi
135135
136- # Raise an error if any 'TODO RELEASE' comments remain
137- - name : Check no 'TODO RELEASE' comments (release only)
138- if : inputs.target_branch == 'release'
139- working-directory : firedrake-repo
140- run : |
141- if [ -z "$( grep -r --exclude-dir='.*' 'TODO RELEASE' )" ]; then
142- exit 0
143- else
144- exit 1
145- fi
146-
147136 - name : Install system dependencies (2)
148137 run : |
149138 apt-get -y install \
Original file line number Diff line number Diff line change 11name : Publish release
22
33on :
4- release :
5- types : [released]
4+ workflow_call :
5+ inputs :
6+ branch :
7+ description : The branch to release from
8+ type : string
9+ required : true
10+ version :
11+ description : The version number to release
12+ type : string
13+ required : true
614
715jobs :
8- deploy :
16+ check :
17+ name : Pre-release checks
18+ runs-on : ubuntu-latest
19+ steps :
20+ - uses : actions/checkout@v5
21+ with :
22+ path : firedrake-repo
23+ ref : ${{ inputs.branch }}
24+
25+ - name : Check no 'TODO RELEASE' comments remain
26+ working-directory : firedrake-repo
27+ run : |
28+ if [ -z "$( grep -r --exclude-dir='.*' 'TODO RELEASE' )" ]; then
29+ exit 0
30+ else
31+ exit 1
32+ fi
33+
34+ - name : Check version number matches
35+ working-directory : firedrake-repo
36+ run : |
37+ if [ -z "$( grep 'version = \"${{ inputs.version }}\"' pyproject.toml )" ]; then
38+ exit 1
39+ else
40+ exit 0
41+ fi
42+
43+ pypi :
944 uses : ./.github/workflows/core.yml
45+ needs : check
1046 with :
11- source_ref : release
47+ source_ref : ${{ inputs.branch }}
1248 target_branch : release
1349 run_tests : false
1450 upload_pypi : true
1551 secrets : inherit
1652
53+ github_release :
54+ name : Create GitHub release
55+ needs : pypi
56+ runs-on : ubuntu-latest
57+ permissions :
58+ contents : write
59+ steps :
60+ - name : Create release
61+ env :
62+ GH_TOKEN : ${{ github.token }}
63+ run : gh release create ${{ inputs.version }} --title ${{ inputs.version }} --generate-notes
64+
1765 docker :
1866 name : Build Docker containers
1967 uses : ./.github/workflows/docker.yml
68+ needs : pypi
2069 with :
21- tag : ${{ github.ref_name }}
22- branch : ${{ github.ref_name }}
23- build_dev : false
70+ tag : ${{ inputs.version }}
71+ branch : ${{ inputs.branch }}
2472 secrets : inherit
Original file line number Diff line number Diff line change @@ -62,7 +62,7 @@ firedrake-configure
6262To simplify the installation process, Firedrake provides a utility script called
6363``firedrake-configure ``. This script can be downloaded by executing::
6464
65- $ curl -O https://raw.githubusercontent.com/firedrakeproject/firedrake/refs/tags/2025.4.2 /scripts/firedrake-configure
65+ $ curl -O https://raw.githubusercontent.com/firedrakeproject/firedrake/release /scripts/firedrake-configure
6666
6767Unlike the now deprecated ``firedrake-install `` script, ``firedrake-configure ``
6868**does not install Firedrake for you **. It is simply a helper script that emits
Original file line number Diff line number Diff line change 11[project ]
22name = " firedrake"
33# <year>.<month>.<patch>
4- version = " 2025.4.2"
4+ # TODO RELEASE: remove '.dev0'
5+ version = " 2025.4.3.dev0"
56description = " An automated system for the portable solution of partial differential equations using the finite element method"
67readme = " README.rst"
78license = " LGPL-3.0-or-later"
@@ -20,7 +21,8 @@ dependencies = [
2021 " mpi4py>3; python_version >= '3.13'" ,
2122 " mpi4py; python_version < '3.13'" ,
2223 " fenics-ufl>=2025.1.0" ,
23- " firedrake-fiat>=2025.4.0" ,
24+ # TODO RELEASE
25+ " firedrake-fiat @ git+https://github.com/firedrakeproject/fiat.git@release" ,
2426 " h5py>3.12.1" ,
2527 " libsupermesh" ,
2628 " loopy>2024.1" ,
Original file line number Diff line number Diff line change @@ -20,24 +20,12 @@ class InvalidConfigurationException(Exception):
2020
2121
2222def main ():
23- check_firedrake_version ()
2423 check_min_python_version ()
2524 check_petsc_version ()
2625 check_slepc_version ()
2726 check_petsc_version_spec ()
2827
2928
30- def check_firedrake_version ():
31- firedrake_version = check_file_contains_pattern (
32- REPO_ROOT / "pyproject.toml" ,
33- "version = \" (.*)\" "
34- )
35- check_file_contains_pattern (
36- REPO_ROOT / "docs/source/install.rst" ,
37- f"https://raw.githubusercontent.com/firedrakeproject/firedrake/refs/tags/{ firedrake_version } /scripts/firedrake-configure"
38- )
39-
40-
4129def check_min_python_version () -> None :
4230 min_python_version = check_file_contains_pattern (
4331 REPO_ROOT / "pyproject.toml" ,
You can’t perform that action at this time.
0 commit comments