-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
100 lines (89 loc) · 2.98 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]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "minerva"
description = "A agent-based simulation for procedurally-generated story worlds."
authors = [{ name = "Shi Johnson-Bey", email = "[email protected]" }]
readme = "README.md"
dynamic = ["version"]
requires-python = ">=3.9"
keywords = [
"social simulation",
"games",
"simulation",
"artificial intelligence",
"agent-based modeling",
"multi-agent systems",
"emergent narrative",
"narrative generation",
"interactive storytelling",
"settlement simulation",
]
license = { file = "LICENSE.md" }
classifiers = [
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Games/Entertainment :: Simulation",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Scientific/Engineering :: Artificial Life",
"Topic :: Sociology",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Application Frameworks",
"Typing :: Typed",
]
dependencies = [
"ordered-set>=4.1.0",
"tqdm>=4.66.0",
"pydantic>=2.0.0",
"pygame-ce>=2.5.0",
"pygame-gui>=0.6.12",
"numpy>=2.0.0",
"tracery3==1.0.1",
"rich>=13.9.2",
"jinja2>=3.1.4",
]
[project.optional-dependencies]
development = ["isort", "black", "build", "pytest"]
[project.urls]
"Homepage" = "https://github.com/ShiJbey/minerva"
"Bug Tracker" = "https://github.com/ShiJbey/minerva/issues"
"Repository" = "https://github.com/ShiJBey/minerva.git"
"Changelog" = "https://github.com/ShiJbey/minerva/blob/main/CHANGELOG.md"
[tool.setuptools.dynamic]
version = { attr = "minerva.__version__" }
[tool.setuptools.packages.find]
where = ["src"]
[tool.isort]
profile = "black"
default_section = "THIRDPARTY"
known_first_party = "minerva"
src_paths = ["src/minerva", "tests", "samples"]
[tool.pytest.ini_options]
minversion = "6.0"
testpaths = ["tests"]
[tool.pylint.design]
# Minimum number of public methods for a class (see R0903).
min-public-methods = 0
# Maximum number of public methods for a class (see R0904).
max-public-methods = 25
# Maximum number of attributes for a class (see R0902).
max-attributes = 10
# Maximum number of arguments for function / method.
max-args = 8
[tool.pylint.'MESSAGES CONTROL']
disable = ["c-extension-no-member", "fixme"]
[tool.pylint.basic]
# Allow us to use "_T1, _T2, _T3, ..." as typevar names
typevar-rgx = "^_{0,2}(?!T[A-Z])(?:[A-Z]+|(?:[A-Z]+[a-z]+)+T?(?<!Type))(?:_co(?:ntra)?)?_?[0-9]*$"
[tool.pylint.similarities]
# Increases the default threshold for declaring code similarity
min-similarity-lines = 30