-
Notifications
You must be signed in to change notification settings - Fork 6
/
pyproject.toml
106 lines (93 loc) · 2.97 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
[tool.poetry]
name = "weather_provider_api"
version = "2.57.0"
description = "Weather Provider Libraries and API"
authors = ["Verbindingsteam", "Raoul Linnenbank <[email protected]>"]
license = "MPL-2.0"
readme = "README.md"
repository="https://github.com/alliander-opensource/wpla/"
include = [
{path = "var_maps/*.json", format = "wheel"}
]
[tool.poetry.dependencies]
python = ">=3.10,<3.12"
fastapi = "^0.112.1"
requests = "^2.32.3"
geopy = "^2.3.0"
numpy = "^1.26.2"
gunicorn = "^23.0.0"
lxml = "^5.3.0"
starlette-prometheus = "^0.9.0"
beautifulsoup4 = "^4.12.2"
netcdf4 = "^1.7.1"
tomli = "^2.0.1"
pandas = "^2.1.3"
xarray = "^2024.7.0"
cfgrib = "^0.9.14.0"
uvicorn = "^0.30.6"
slowapi = "^0.1.7"
loguru = "^0.7.2"
email-validator = "^2.2.0"
eccodes = "^1.7.1"
ecmwflibs = "0.6.3"
accept-types = "^0.4.1"
[tool.poetry.group.dev]
optional = true
[tool.poetry.group.dev.dependencies]
coverage = "^7.4.4"
pytest-cov = "^5.0.0"
pylint = "^3.1.0"
black = "^24.4.0"
ruff = {version = "^0.4.1", source = "pypi"}
pytest = "^8.3.2"
sphinx = "^8.0.2"
myst-parser = "^4.0.0"
piccolo-theme = "^0.23.0"
[tool.poetry.scripts]
wpla_update_era5sl = "weather_provider_api.scripts.update_era5sl_repository:main"
wpla_update_era5land = "weather_provider_api.scripts.update_era5land_repository:main"
wpla_update_arome = "weather_provider_api.scripts.update_arome_repository:main"
wpla_update_waarnemingen = "weather_provider_api.scripts.update_waarnemingen_register:main"
wpla_clear_era5sl = "weather_provider_api.scripts.erase_era5sl_repository:main"
wpla_clear_era5land = "weather_provider_api.scripts.erase_era5land_repository:main"
wpla_clear_arome = "weather_provider_api.scripts.erase_arome_repository:main"
wpla_clear_waarnemingen = "weather_provider_api.scripts.erase_waarnemingen_register:main"
wpla_run_api = "weather_provider_api.main:main"
[[tool.poetry.source]]
name = "PyPI"
priority = "primary"
[tool.pylint]
max-line-length = 120
[tool.black]
line-length = 120
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.ruff]
select = [
"ANN", # flake8-annotations
"E", # flake8
"F", # flake8
"I", # isort
"D", # pydocstyle
"S", # flake8-bandit
"NPY", # numpy-specific rules
"RUF", # ruff specific rules
]
ignore = [
"E501",
"E712",
"ANN101", # Missing type annotation for `self` in method
"ANN202", # Missing return type annotation for private function
"ANN204", # Missing return type annotation for special function
"ANN401", # Dynamically typed expressions (typing.Any) are disallowed
# pydocstyle
"D100", # Missing docstring in public module
"D104", # Missing docstring in public package
"D106", # Missing docstring in public nested class
]
[tool.ruff.per-file-ignores]
"__init__.py" = ["F401"]
"tests/**" = ["S", "ANN"]
[tool.ruff.pydocstyle]
convention = "google"