22build-backend = " setuptools.build_meta"
33requires = [
44 " build" ,
5- ' numpy<3, >=2.0.0rc1; python_version >= " 3.9" ' ,
6- ' oldest-supported-numpy; python_version < " 3.9" ' ,
5+ " numpy>=2.0.0rc1,<3 ; python_version>=' 3.9' " ,
6+ " oldest-supported-numpy; python_version<' 3.9' " ,
77 " pip>9.0.1" ,
88 " setuptools>=42" ,
9- " setuptools_scm [toml]>=3.4" ,
9+ " setuptools-scm [toml]>=3.4" ,
1010 " wheel" ,
1111]
1212
1313[project ]
1414name = " gsw"
1515description = " Gibbs Seawater Oceanographic Package of TEOS-10"
16- license = {text = " BSD-3-Clause" }
16+ license = { text = " BSD-3-Clause" }
1717authors = [
18- { name =
" Eric Firing, Filipe Fernandes" ,
email =
" [email protected] " },
18+ { name =
" Eric Firing, Filipe Fernandes" ,
email =
" [email protected] " },
1919]
2020requires-python = " >=3.8"
2121classifiers = [
@@ -30,6 +30,7 @@ classifiers = [
3030 " Programming Language :: Python :: 3.10" ,
3131 " Programming Language :: Python :: 3.11" ,
3232 " Programming Language :: Python :: 3.12" ,
33+ " Programming Language :: Python :: 3.13" ,
3334 " Topic :: Scientific/Engineering" ,
3435]
3536dynamic = [
@@ -39,71 +40,67 @@ dynamic = [
3940dependencies = [
4041 " numpy>=1.21" ,
4142]
42- [project .urls ]
43- documentation = " https://teos-10.github.io/GSW-Python/"
44- homepage = " https://www.teos-10.org/"
45- repository = " https://github.com/TEOS-10/GSW-python"
43+ urls.documentation = " https://teos-10.github.io/GSW-Python/"
44+ urls.homepage = " https://www.teos-10.org/"
45+ urls.repository = " https://github.com/TEOS-10/GSW-python"
4646
4747[tool .setuptools ]
48- license-files = [" LICENSE.txt" ]
48+ license-files = [ " LICENSE.txt" ]
4949zip-safe = false
5050include-package-data = true
51- packages = [" gsw" , " gsw.tests" ]
52-
51+ packages = [ " gsw" , " gsw.tests" ]
5352
5453[tool .setuptools .dynamic ]
55- dependencies = {file = [" requirements.txt" ] }
56- readme = {file = " README.md" , content-type = " text/markdown" }
54+ dependencies = { file = [ " requirements.txt" ] }
55+ readme = { file = " README.md" , content-type = " text/markdown" }
5756
5857[tool .setuptools_scm ]
5958write_to = " gsw/_version.py"
6059write_to_template = " __version__ = '{version}'"
6160tag_regex = " ^(?P<prefix>v)?(?P<version>[^\\ +]+)(?P<suffix>.*)?$"
6261
6362[tool .ruff ]
64- lint.select = [
65- " A" , # flake8-builtins
66- " B" , # flake8-bugbear
67- " C4" , # flake8-comprehensions
68- " F" , # flakes
69- " I" , # import sorting
70- " UP" , # upgrade
71- " NPY201" , # numpy 2.0
72- ]
7363target-version = " py38"
7464line-length = 105
7565
76- lint.ignore = [
77- " F401" , # module imported but unused
78- " E501" , # line too long
79- " E713" , # test for membership should be 'not in'
80- ]
81-
8266exclude = [
8367 " tools" ,
8468]
8569
86- [tool .ruff .lint .per-file-ignores ]
87- "docs/conf.py" = [
88- " A001" , # variable is shadowing a python builtin
70+ lint.select = [
71+ " A" , # flake8-builtins
72+ " B" , # flake8-bugbear
73+ " C4" , # flake8-comprehensions
74+ " F" , # flakes
75+ " I" , # import sorting
76+ " NPY201" , # numpy 2.0
77+ " UP" , # upgrade
8978]
90- "gsw/_fixed_wrapped_ufuncs.py" = [
91- " F403" , # 'from x import *' used; unable to detect undefined names
92- " F405" , # 'import' may be undefined, or defined from star imports
79+ lint.ignore = [
80+ " E501" , # line too long
81+ " E713" , # test for membership should be 'not in'
82+ " F401" , # module imported but unused
9383]
9484
95- "gsw/_utilities.py" = [
96- " B904" , # Within an ``except`` clause, raise exceptions with ``raise ... from err``
85+ lint.per-file-ignores."docs/conf.py" = [
86+ " A001" , # variable is shadowing a python builtin
87+ ]
88+ lint.per-file-ignores."gsw/_fixed_wrapped_ufuncs.py" = [
89+ " F403" , # 'from x import *' used; unable to detect undefined names
90+ " F405" , # 'import' may be undefined, or defined from star imports
91+ ]
92+ lint.per-file-ignores."gsw/_utilities.py" = [
93+ " B904" , # Within an ``except`` clause, raise exceptions with ``raise ... from err``
9794]
9895
9996[tool .check-manifest ]
10097ignore = [
101- " *.yml" ,
102- " .coveragerc" ,
103- " docs" ,
104- " docs/*" ,
105- " *.enc" ,
106- " tools" ,
107- " tools/*" ,
108- " gsw/_version.py" ,
98+ " *.yml" ,
99+ " .coveragerc" ,
100+ " docs" ,
101+ " docs/*" ,
102+ " *.enc" ,
103+ " tools" ,
104+ " tools/*" ,
105+ " gsw/_version.py" ,
109106]
0 commit comments