@@ -6,50 +6,50 @@ description = "An automated system for the portable solution of partial differen
66readme = " README.rst"
77license = {file = " LICENSE" }
88maintainers = [
9- {name = " Pablo D. Brubeck" },
10- {name = " Daiane I. Dolci" },
11- {name = " David A. Ham" , email = " david.ham@imperial.ac.uk" },
12- {name = " Josh Hope-Collins" },
13- {name = " Koki Sagiyama" },
14- {name = " Connor J. Ward" , email = " c.ward20@imperial.ac.uk" },
9+ {name = " Pablo D. Brubeck" },
10+ {name = " Daiane I. Dolci" },
11+ {name = " David A. Ham" , email = " david.ham@imperial.ac.uk" },
12+ {name = " Josh Hope-Collins" },
13+ {name = " Koki Sagiyama" },
14+ {name = " Connor J. Ward" , email = " c.ward20@imperial.ac.uk" },
1515]
1616requires-python = " >=3.10"
1717dependencies = [
18- " cachetools" ,
19- " decorator<=4.4.2" ,
20- " mpi4py>3; python_version >= '3.13'" ,
21- " mpi4py; python_version < '3.13'" ,
22- " h5py>3.12.1" ,
23- " libsupermesh" ,
24- # NOTE: If changing the PETSc/SLEPc version then firedrake-configure also needs
25- # changing (as well as other references to petsc4py and slepc4py here)
26- " petsc4py==3.22.2" ,
27- " numpy" ,
28- " packaging" ,
29- " pkgconfig" ,
30- " progress" ,
31- " pycparser" ,
32- " pytools[siphash]" ,
33- " requests" ,
34- " rtree>=1.2" ,
35- " scipy" ,
36- " sympy" ,
37- " fenics-ufl @ git+https://github.com/firedrakeproject/ufl.git" ,
38- " fenics-fiat @ git+https://github.com/firedrakeproject/fiat.git" ,
39- " pyadjoint-ad @ git+https://github.com/dolfin-adjoint/pyadjoint.git" ,
40- " loopy @ git+https://github.com/firedrakeproject/loopy.git@main" ,
18+ " cachetools" ,
19+ " decorator<=4.4.2" ,
20+ " mpi4py>3; python_version >= '3.13'" ,
21+ " mpi4py; python_version < '3.13'" ,
22+ " h5py>3.12.1" ,
23+ " libsupermesh" ,
24+ # NOTE: If changing the PETSc/SLEPc version then firedrake-configure also needs
25+ # changing (as well as other references to petsc4py and slepc4py here)
26+ " petsc4py==3.22.2" ,
27+ " numpy" ,
28+ " packaging" ,
29+ " pkgconfig" ,
30+ " progress" ,
31+ " pycparser" ,
32+ " pytools[siphash]" ,
33+ " requests" ,
34+ " rtree>=1.2" ,
35+ " scipy" ,
36+ " sympy" ,
37+ " fenics-ufl @ git+https://github.com/firedrakeproject/ufl.git" ,
38+ " fenics-fiat @ git+https://github.com/firedrakeproject/fiat.git" ,
39+ " pyadjoint-ad @ git+https://github.com/dolfin-adjoint/pyadjoint.git" ,
40+ " loopy @ git+https://github.com/firedrakeproject/loopy.git@main" ,
4141]
4242classifiers = [
43- " Development Status :: 5 - Production/Stable" ,
44- " License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)" ,
45- " Intended Audience :: Science/Research" ,
46- " Programming Language :: Python" ,
47- " Programming Language :: Python :: 3" ,
48- " Programming Language :: Python :: 3.10" ,
49- " Programming Language :: Python :: 3.11" ,
50- " Programming Language :: Python :: 3.12" ,
51- " Programming Language :: Python :: 3.13" ,
52- " Operating System :: Unix" ,
43+ " Development Status :: 5 - Production/Stable" ,
44+ " License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)" ,
45+ " Intended Audience :: Science/Research" ,
46+ " Programming Language :: Python" ,
47+ " Programming Language :: Python :: 3" ,
48+ " Programming Language :: Python :: 3.10" ,
49+ " Programming Language :: Python :: 3.11" ,
50+ " Programming Language :: Python :: 3.12" ,
51+ " Programming Language :: Python :: 3.13" ,
52+ " Operating System :: Unix" ,
5353]
5454
5555[project .urls ]
@@ -69,87 +69,92 @@ spydump = "pyop2.scripts.spydump:main"
6969[project .optional-dependencies ]
7070# Dependencies needed to run firedrake-check
7171test = [
72- " mpi-pytest" ,
73- " pytest" ,
72+ " mpi-pytest" ,
73+ " pytest" ,
7474]
7575# Dependencies needed to run the full test suite
7676ci = [
77- " ipympl" , # needed for notebook testing
78- " jax" ,
79- " matplotlib" ,
80- " mpi-pytest" ,
81- " nbval" ,
82- " ngsPETSc" ,
83- " pylit" ,
84- " pytest" ,
85- " pytest-split" , # needed for firedrake-run-split-tests
86- " pytest-timeout" ,
87- " pytest-xdist" ,
88- " slepc4py==3.22.2" ,
89- " torch" , # requires passing '--extra-index-url' to work
90- " vtk" ,
77+ " ipympl" , # needed for notebook testing
78+ " jax" ,
79+ " matplotlib" ,
80+ " mpi-pytest" ,
81+ " nbval" ,
82+ " ngsPETSc" ,
83+ " pylit" ,
84+ " pytest" ,
85+ " pytest-split" , # needed for firedrake-run-split-tests
86+ " pytest-timeout" ,
87+ " pytest-xdist" ,
88+ " slepc4py==3.22.2" ,
89+ " torch" , # requires passing '--extra-index-url' to work
90+ " vtk" ,
9191]
9292docker = [ # Used in firedrake-vanilla container
93- " ipympl" , # needed for notebook testing
94- " matplotlib" ,
95- " mpi-pytest" ,
96- " nbval" ,
97- " pylit" ,
98- " pytest" ,
99- " pytest-split" , # needed for firedrake-run-split-tests
100- " pytest-timeout" ,
101- " pytest-xdist" ,
102- " slepc4py==3.22.2" ,
93+ " ipympl" , # needed for notebook testing
94+ " matplotlib" ,
95+ " mpi-pytest" ,
96+ " nbval" ,
97+ " pylit" ,
98+ " pytest" ,
99+ " pytest-split" , # needed for firedrake-run-split-tests
100+ " pytest-timeout" ,
101+ " pytest-xdist" ,
102+ " slepc4py==3.22.2" ,
103103]
104104# Dependencies needed to build the docs
105105docs = [
106- " bibtexparser" ,
107- " matplotlib" , # needed to resolve API
108- " numpydoc" ,
109- " pylit" ,
110- " sphinx<8.2.0" , # https://github.com/firedrakeproject/firedrake/issues/4059
111- " sphinx-autobuild" ,
112- " sphinx-reredirects" ,
113- " sphinxcontrib-bibtex" ,
114- " sphinxcontrib-jquery" ,
115- " sphinxcontrib-svg2pdfconverter" ,
116- " sphinxcontrib-youtube" ,
117- " vtk" , # needed to resolve API
118- ]
119- # Developer dependencies. In particular the build dependencies that are needed to run 'make'.
120- dev = [
121- " Cython" ,
122- " mpi-pytest" ,
123- " pybind11" ,
124- " pytest" ,
125- " setuptools" ,
106+ " bibtexparser" ,
107+ " matplotlib" , # needed to resolve API
108+ " numpydoc" ,
109+ " pylit" ,
110+ " sphinx<8.2.0" , # https://github.com/firedrakeproject/firedrake/issues/4059
111+ " sphinx-autobuild" ,
112+ " sphinx-reredirects" ,
113+ " sphinxcontrib-bibtex" ,
114+ " sphinxcontrib-jquery" ,
115+ " sphinxcontrib-svg2pdfconverter" ,
116+ " sphinxcontrib-youtube" ,
117+ " vtk" , # needed to resolve API
126118]
127119
128120[build-system ]
129121requires = [
130- " Cython>=3.0" ,
131- " libsupermesh" ,
132- " mpi4py>3; python_version >= '3.13'" ,
133- " mpi4py; python_version < '3.13'" ,
134- " numpy" ,
135- " pkgconfig" ,
136- " pybind11" ,
137- " setuptools>61.2" ,
138- " petsc4py==3.22.2" ,
139- " rtree>=1.2" ,
122+ " Cython>=3.0" ,
123+ " libsupermesh" ,
124+ " mpi4py>3; python_version >= '3.13'" ,
125+ " mpi4py; python_version < '3.13'" ,
126+ " numpy" ,
127+ " pkgconfig" ,
128+ " pybind11" ,
129+ " setuptools>61.2" ,
130+ " petsc4py==3.22.2" ,
131+ " rtree>=1.2" ,
140132]
141133build-backend = " setuptools.build_meta"
142134
143135# TODO: Convert firedrake-zenodo to a proper entrypoint script.
144136[tool .setuptools ]
145137script-files = [
146- " firedrake/scripts/firedrake-zenodo" ,
147- " scripts/firedrake-run-split-tests" ,
138+ " firedrake/scripts/firedrake-zenodo" ,
139+ " scripts/firedrake-run-split-tests" ,
148140]
149141
150142[tool .setuptools .package-data ]
151143# Unless specified these files will not be installed along with the
152144# rest of the package
153- firedrake = [" evaluate.h" , " locate.c" , " icons/*.png" ]
154- firedrake_check = [" Makefile" , " tests/firedrake/conftest.py" , " tests/*/*/*.py" ]
155- pyop2 = [" *.h" , " *.pxd" , " *.pyx" , " codegen/c/*.c" ]
145+ firedrake = [
146+ " evaluate.h" ,
147+ " locate.c" ,
148+ " icons/*.png" ,
149+ ]
150+ firedrake_check = [
151+ " Makefile" ,
152+ " tests/firedrake/conftest.py" ,
153+ " tests/*/*/*.py" ,
154+ ]
155+ pyop2 = [
156+ " *.h" ,
157+ " *.pxd" ,
158+ " *.pyx" ,
159+ " codegen/c/*.c" ,
160+ ]
0 commit comments