generated from ImperialCollegeLondon/pip-tools-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
pyproject.toml
100 lines (90 loc) · 2.07 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]
build-backend = "setuptools.build_meta"
requires = [
"setuptools",
"setuptools-scm",
]
[tool.setuptools.packages.find]
exclude = ["htmlcov"] # Exclude the coverage report file from setuptools package finder
[project]
name = "swmmanywhere"
version = "0.0.1"
authors = [
{ name = "Barnaby Dobson", email = "[email protected]" },
{ name = "Imperial College London RSE Team", email = "[email protected]" }
]
requires-python = ">=3.10"
classifiers = [
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
dependencies = [
"cdsapi",
"cytoolz",
"fastparquet",
"fiona",
"geopandas",
"geopy",
"GitPython",
"joblib",
"jsonschema",
"loguru",
"matplotlib",
"netcdf4",
"netcomp@ git+https://github.com/barneydobson/NetComp.git",
"networkx>=3",
"numpy",
"osmnx",
"pandas",
"pyarrow",
"pydantic",
"pysheds",
"pyswmm",
"PyYAML",
"rasterio",
"rioxarray",
"SALib",
"SciPy",
"shapely",
"tqdm",
"xarray",
]
[project.optional-dependencies]
dev = [
"mypy",
"pip-tools",
"pre-commit",
"pytest",
"pytest-cov",
"pytest-mock",
"pytest-mypy",
"ruff",
]
[tool.mypy]
disallow_any_explicit = false
disallow_any_generics = false
warn_unreachable = true
warn_unused_ignores = false
disallow_untyped_defs = false
exclude = [".venv/"]
[[tool.mypy.overrides]]
module = "tests.*"
disallow_untyped_defs = false
[tool.pytest.ini_options]
# addopts = "-v --mypy -p no:warnings --cov=swmmanywhere --cov-report=html --doctest-modules --ignore=swmmanywhere/__main__.py"
[tool.ruff]
select = ["D", "E", "F", "I"] # pydocstyle, pycodestyle, Pyflakes, isort
[tool.ruff.per-file-ignores]
"tests/*" = ["D100", "D104"]
[tool.ruff.pydocstyle]
convention = "google"
[tool.codespell]
skip = "swmmanywhere/defs/iso_converter.yml,*.inp"
ignore-words-list = "gage,gages"
[tool.refurb]
ignore = [
184, # Because some frankly bizarre suggestions
109 # Because pyyaml doesn't support tuples
]