-
Notifications
You must be signed in to change notification settings - Fork 6
/
pyproject.toml
124 lines (111 loc) · 2.46 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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
[tool.poetry]
name = "water-tracker"
version = "0.1.0"
description = ""
authors = ["Your Name <you@example.com>"]
readme = "README.md"
packages = [{ include = "water_tracker", from = "src" }]
[tool.poetry.dependencies]
python = "~3.10"
streamlit = "^1.20.0"
pandas = "<2.0.0"
requests = "^2.28.2"
numpy = "^1.24.2"
types-requests = "^2.28.11.17"
xarray = "^2023.3.0"
cdsapi = "^0.6.1"
python-dotenv = "^1.0.0"
netcdf4 = "^1.6.3"
scipy = "^1.10.1"
plotly = "^5.14.1"
geopandas = "^0.13.0"
shapely = "^2.0.1"
[tool.poetry.group.dev.dependencies]
black = "^23.3.0"
ruff = "^0.0.261"
mypy = "^1.1.1"
interrogate = "^1.5.0"
pre-commit = "^3.2.2"
pytest = "^7.3.1"
coverage = {extras = ["toml"], version = "^7.2.3"}
pytest-cov = "^4.0.0"
pytest-mock = "^3.10.0"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.black]
line-length = 79
[tool.ruff]
line-length = 79
target-version = "py310"
select = ["ALL"]
ignore = [
# flake8-boolean-trap
"FBT",
# bandit
"S",
# flake8-logging
"G",
# flake8-print
"T",
# McCabe complexity
"C901",
# do not assign a lambda expression, use a def
"E731",
# Too many arguments to function call
"PLR0913",
# Missing type annotation for `self` in method
"ANN101",
# suppressible-exception
"SIM105",
"INP001",
]
unfixable = [
# Remove unused-imports
"F401",
# Variable assigned but never used
"F841",
# Use {key} in {dict} instead of {key} in {dict}.keys()
"SIM118",
# move to type-checking block
"TCH003",
# found comented-out code
"ERA001",
]
namespace-packages = ["app", "app/*"]
[tool.ruff.pydocstyle]
convention = 'numpy'
[tool.ruff.flake8-annotations]
allow-star-arg-any=true
[tool.interrogate]
ignore-init-method = true
ignore-init-module = true
ignore-magic = true
ignore-semiprivate = false
ignore-private = false
ignore-property-decorators = false
ignore-module = true
ignore-nested-functions = true
ignore-nested-classes = true
ignore-setters = false
fail-under = 100
exclude = ["setup.py", "docs", "build", "tests", "scripts", "app"]
verbose = 1
quiet = false
whitelist-regex = []
color = true
omit-covered-files = false
[tool.pytest.ini_options]
addopts = [
"--import-mode=importlib",
"--cov",
]
testpaths = ["tests"]
pythonpath = ["src"]
[tool.coverage.paths]
source = ["water_tracker", "*/site-packages"]
[tool.coverage.run]
branch = true
source = ["water_tracker"]
[tool.coverage.report]
show_missing = true