forked from assume-framework/assume
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
124 lines (107 loc) · 3.54 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
# SPDX-FileCopyrightText: ASSUME Developers
#
# SPDX-License-Identifier: AGPL-3.0-or-later
[tool.poetry]
name = "assume-framework"
version = "0.3.7"
description = "ASSUME - Agent-Based Electricity Markets Simulation Toolbox"
authors = ["ASSUME Developers <[email protected]>"]
license = "AGPL-3.0-or-later"
readme = "README.md"
homepage = "https://assume.readthedocs.io"
repository = "https://github.com/assume-framework/assume"
keywords = ["agent based simulation", "energy market", "reinforcement learning", "market simulation", "simulation"]
classifiers=[
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Operating System :: OS Independent",
"Framework :: AsyncIO",
"Topic :: Scientific/Engineering",
"Topic :: Software Development :: Libraries :: Python Modules",
]
packages = [
{ include="assume", from="." },
{ include="assume_cli", from="." },
]
[tool.poetry.dependencies]
python = "^3.10"
argcomplete = "^3.1.4"
nest-asyncio = "^1.5.6"
mango-agents-assume = "^1.1.1-8"
tqdm = "^4.64.1"
python-dateutil = "^2.8.2"
sqlalchemy = "^2.0.9"
pandas = {version = "^2.0.0"}
psycopg2-binary = "^2.9.5"
pyyaml = "^6.0"
pyyaml-include = "^1.3.1"
pyomo = {version = "^6.6.1", optional = true}
black = {version = "^23.3.0", optional = true}
isort = {version = "^5.12.0", optional = true}
mypy = {version = "^1.1.1", optional = true}
matplotlib = {version = "^3.7.2", optional = true}
pypsa = {version = "^0.26.3", optional = true}
pytest = {version = "^7.2.2", optional = true}
pytest-cov = {version = "^4.1.0", optional = true}
pytest-asyncio = {version = "^0.21.1", optional = true}
torch = {version = "^2.0.1", optional = true}
glpk = {version = "^0.4.7", optional = true}
windpowerlib = {version = "^0.2.1", optional = true}
pvlib = {version = "^0.10.2", optional = true}
holidays = {version = "^0.37", optional = true}
demandlib = {version = "^0.1.9", optional = true}
[tool.poetry.group.dev.dependencies]
black = "^23.3.0"
isort = "^5.12.0"
mypy = "^1.1.1"
pytest = "^7.2.2"
pytest-cov = "^4.1.0"
pytest-asyncio = "^0.21.1"
[tool.poetry.extras]
learning = ["torch"]
optimization = ["glpk","pyomo", "pypsa"]
oeds = ["windpowerlib", "pvlib", "demandlib", "holidays"]
full = ["torch", "glpk","pyomo", "pypsa", "windpowerlib", "pvlib", "demandlib", "holidays"]
test = ["black", "isort", "matplotlib", "pytest", "pytest-cov", "pytest-asyncio", "glpk", "mypy"]
[tool.poetry.scripts]
assume = "assume_cli.cli:cli"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.isort]
profile = "black"
[tool.pytest]
testpaths = "tests"
[tool.pytest.ini_options]
asyncio_mode = "auto"
filterwarnings = [
"ignore:Call to deprecated create function FieldDescriptor",
"ignore:Call to deprecated create function Descriptor",
"ignore:Call to deprecated create function FileDescriptor",
"ignore:Call to deprecated create function EnumValueDescriptor",
"ignore:Call to deprecated create function EnumDescriptor",
]
markers = [
"slow: marks tests as slow (deselect with '-m \"not slow\"')",
"require_learning",
]
addopts = "--ignore=assume-db"
[tool.coverage.run]
omit = ["tests/*"]
source = ["assume"]
[tool.coverage.report]
# https://stackoverflow.com/a/5850364
exclude_lines = ["if __name__ == .__main__.:"]
[tool.mypy]
warn_unused_configs = true
warn_redundant_casts = true
warn_unused_ignores = true
warn_no_return = true
warn_unreachable = true
strict_equality = true
# output
show_error_context = true
show_column_numbers = true
show_error_codes = true
pretty = true
ignore_missing_imports = true