-
Notifications
You must be signed in to change notification settings - Fork 3
/
pyproject.toml
106 lines (92 loc) · 2.75 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 = "nemseer"
version = "1.0.7"
description = "A package for downloading and handling forecasts for the National Electricity Market (NEM) from the Australian Energy Market Operator (AEMO)."
authors = ["Abhijith Prakash"]
license = "GPL-3.0-or-later"
readme = "README.md"
# Main dependencies for the package via poetry. Package users will need these dependencies.
[tool.poetry.dependencies]
python = ">=3.8,<3.12"
attrs = "^21"
beautifulsoup4 = "*"
netCDF4 = "^1"
numpy = "*"
packaging = "^21.3"
pandas = "*"
psutil = "^5"
pyarrow = "*"
requests = "^2"
tqdm = "^4"
xarray = "*"
# Packages for developers for creating documentation
[tool.poetry.group.docs]
optional = true
[tool.poetry.group.docs.dependencies]
# MyST parser for Sphinx documentation with furo theme
Sphinx = "^5"
furo = "*"
myst-parser = "*"
sphinx-copybutton = "*"
# The packages below are required for compiling example notebooks
jupyter = "^1.0.0"
notebook = "^6.4.12"
myst-nb = "^0.16.0"
matplotlib = "^3"
plotly = "^5"
kaleido = "0.2"
hvplot = "^0.8"
nemosis = "^3"
# Packages for developers for debugging
[tool.poetry.group.debug]
optional = true
[tool.poetry.group.debug.dependencies]
ipdb = "*"
ipython = "*"
# Packages for developers for linting/autoformatting
[tool.poetry.group.style]
optional = true
[tool.poetry.group.style.dependencies]
# static: flake8 (style), mypy (typing), with type stubs for some libraries
# autoformatter: black (style), isort (import sort)
# pre-commit: tool to configure and install pre-commit hooks
flake8 = "*"
mypy = "*"
types-requests = "^2.28.4"
types-beautifulsoup4 = "^4.11.4"
types-python-dateutil = "^2.8.19"
types-psutil = "^5.9.5"
pandas-stubs = "^1.4.3.220724"
types-tqdm = "^4.64.4"
black = "^22.6.0"
isort = "^5.10.1"
pre-commit = "*"
# Packages for developers for testing
[tool.poetry.group.test]
optional = true
[tool.poetry.group.test.dependencies]
# pytest and pytest-cov for coverage
pytest = "^7"
pytest-cov = "^4"
grequests = "^0.6.0"
pytest-mock = "^3.8.2"
# Config for pytest and pytest-cov
[tool.pytest.ini_options]
# path to tests for pytest
testpaths = ["tests"]
# addopts = add options
# -ra means show extra test summary info for all except passed tests
# --cov points pytest-cov to the src/ dir
# --cov-branch runs branch coverage. See https://breadcrumbscollector.tech/how-to-use-code-coverage-in-python-with-pytest/
# --cov-repot html dumps HTML and xml summaries of pytest-cov in the "tests" folder
addopts = "-ra --cov=src/ --cov-branch --cov-report xml:tests/coverage.xml --cov-report html:tests/htmlcov"
# Config isort to be compatible with black
[tool.isort]
profile = "black"
# Config for mypy
[tool.mypy]
warn_return_any = true
warn_unused_configs = true
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"