-
Notifications
You must be signed in to change notification settings - Fork 2
/
pyproject.toml
100 lines (93 loc) · 3.13 KB
/
pyproject.toml
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
[build-system]
requires = ["setuptools>=64.0.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "hatyan"
version = "2.9.1"
maintainers = [{ name = "Jelmer Veenstra", email = "[email protected]" }]
description = "Tidal analysis and prediction tool of Rijkswaterstaat"
readme = "README.md"
keywords = ["hatyan", "tidal analysis", "tidal prediction"]
license = { text = "LGPLv3" }
requires-python = ">=3.8"
dependencies = [
#scipy<1.5.4 env creation failed in https://github.com/Deltares/hatyan/issues/71
"scipy>=1.5.4",
#numpy 1.21 is EOL since june 2023
"numpy>=1.22.0",
#TODO: contour colorbar on uniform values fails with matplotlib<3.7.0, several other features with matplotlib<3.6.0
#matplotlib<3.5.2 raises "ValueError: Multi-dimensional indexing" in hatyan.plot_timeseries()
"matplotlib>=3.5.2",
#TODO: pandas>=1.4.0 is required by xarray>=2023.3.0
#pandas<2.0.0 supports non-nanosecond timestep and therefore larger min/max range
"pandas>=2.0.0",
#TODO: netcdf4<1.5.4 pip install fails in py39
#netcdf4<1.5.3 from setup.cfg
"netcdf4>=1.5.3",
#pyproj<3.1.0 not pip installable in py38
"pyproj>=3.1.0",
#requests<2.28.0 not tested on hmc
"requests>=2.28.0",
#TODO: xarray<2023.4.0 conflicts with pandas<2.0.0 for resampling, only available for py39
#xarray>=2022.6.0 is quite old version from dfm_tools
"xarray>=2022.6.0",
#rws-ddlpy<0.5.0 supports timezones for input dates
"rws-ddlpy>=0.5.0",
#click<7.1 is not available on github release page
"click>7.1",
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"Operating System :: OS Independent",
"Topic :: Scientific/Engineering :: Information Analysis",
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
[project.urls]
Home = "https://github.com/deltares/hatyan"
Code = "https://github.com/deltares/hatyan"
Issues = "https://github.com/deltares/hatyan/issues"
[project.optional-dependencies]
dev = [
"bump2version>=0.5.11",
"flake8",
"pytest",
"pytest-cov",
"twine",
"build",
]
docs = [
"sphinx>=1.8.1",
"sphinx_mdinclude",
"nbsphinx",
"pydata-sphinx-theme",
#"pandoc", # installed with choco on github
]
examples = [
"jupyter",
"notebook",
]
[project.scripts]
hatyan = "hatyan.cli:cli"
[tool.setuptools.package-data]
hatyan = ["data/*"]
[tool.pytest.ini_options]
console_output_style = "count"
testpaths = ["tests"]
python_files = "test_*.py"
addopts = "-v --tb=short --durations=0"
filterwarnings = ["ignore::UserWarning"]
markers = [
"unittest: mark a test as unittest. Used for testing single methods",
"systemtest: mark a test as systemtest. Used for testing at a higher level, verifying a given input returns the expected output",
"acceptance: mark a test as acceptance. Used for non-functional requirements and data that needs to be human-verified",
]
[tool.flake8]
exclude = "docs"