1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
[build-system]
build-backend = "setuptools.build_meta"
requires = [
"build",
"numpy>=2,<3",
"pip>9.0.1",
"setuptools>=42",
"setuptools-scm[toml]>=3.4",
"wheel",
]
[project]
name = "gsw"
description = "Gibbs Seawater Oceanographic Package of TEOS-10"
license = "BSD-3-Clause"
license-files = [ "LICENSE.txt" ]
authors = [
{ name = "Eric Firing, Filipe Fernandes", email = "efiring@hawaii.edu" },
]
requires-python = ">=3.11"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering",
]
dynamic = [
"readme",
"version",
]
dependencies = [
"numpy>=2",
]
urls.documentation = "https://teos-10.github.io/GSW-Python/"
urls.homepage = "https://www.teos-10.org/"
urls.repository = "https://github.com/TEOS-10/GSW-python"
[tool.setuptools]
zip-safe = false
include-package-data = true
packages = [ "gsw", "gsw.tests" ]
[tool.setuptools.dynamic]
dependencies = { file = [ "requirements.txt" ] }
readme = { file = "README.md", content-type = "text/markdown" }
[tool.setuptools_scm]
write_to = "gsw/_version.py"
write_to_template = "__version__ = '{version}'"
tag_regex = "^(?P<prefix>v)?(?P<version>[^\\+]+)(?P<suffix>.*)?$"
[tool.ruff]
target-version = "py38"
line-length = 105
exclude = [
"tools",
]
lint.select = [
"A", # flake8-builtins
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"F", # flakes
"I", # import sorting
"NPY201", # numpy 2.0
"UP", # upgrade
]
lint.ignore = [
"E501", # line too long
"E713", # test for membership should be 'not in'
"F401", # module imported but unused
]
lint.per-file-ignores."docs/conf.py" = [
"A001", # variable is shadowing a python builtin
]
lint.per-file-ignores."gsw/_fixed_wrapped_ufuncs.py" = [
"F403", #'from x import *' used; unable to detect undefined names
"F405", # 'import' may be undefined, or defined from star imports
]
lint.per-file-ignores."gsw/_utilities.py" = [
"B904", # Within an ``except`` clause, raise exceptions with ``raise ... from err``
]
[tool.check-manifest]
ignore = [
"*.yml",
".coveragerc",
"docs",
"docs/*",
"*.enc",
"tools",
"tools/*",
"gsw/_version.py",
]
|