aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/pyproject.toml
blob: 71d6eaf4b7823bf445216b802618caea3b0338f9 (plain) (blame)
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
[build-system]
requires = ["maturin>=1.4,<2.0"]
build-backend = "maturin"

[project]
name = "conventionalrp"
dynamic = ["version"]
description = "HydroRoll Conventional Role Play SDK"
authors = [{ name = "HsiangNianian", email = "leader@hydroroll.team" }]
dependencies = []
requires-python = ">=3.9"
readme.content-type = "text/x-rst"
readme.file = "README.rst"
license = { text = "AGPLv3.0" }
keywords = ["hydroroll"]
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Framework :: Robot Framework",
    "Framework :: Robot Framework :: Library",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3",
    "Programming Language :: Rust",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
]

[project.urls]
homepage = "https://hydroroll.team/"
repository = "https://github.com/HydroRoll-Team/conventional_role_play"
documentation = "https://crp.hydroroll.team/"

[tool.maturin]
features = ["pyo3/extension-module"]
module-name = "conventionalrp._core"
python-package = "conventionalrp"
python-source = "src"

[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
    ".bzr",
    ".direnv",
    ".eggs",
    ".git",
    ".git-rewrite",
    ".hg",
    ".ipynb_checkpoints",
    ".mypy_cache",
    ".nox",
    ".pants.d",
    ".pyenv",
    ".pytest_cache",
    ".pytype",
    ".ruff_cache",
    ".svn",
    ".tox",
    ".venv",
    ".vscode",
    "__pypackages__",
    "_build",
    "buck-out",
    "build",
    "dist",
    "node_modules",
    "site-packages",
    "venv",
]

# Same as Black.
line-length = 88
indent-width = 4

# Assume Python 3.8
target-version = "py39"

[tool.ruff.lint]
# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`)  codes by default.
select = ["E4", "E7", "E9", "F"]
ignore = []

# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []

# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"

[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "double"

# Like Black, indent with spaces, rather than tabs.
indent-style = "space"

# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false

# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"

[dependency-groups]
dev = [
    "docutils>=0.21.2",
    "furo>=2024.8.6",
    "myst-parser>=3.0.1",
    "ruff>=0.9.6",
    "sphinx>=7.4.7",
    "sphinx-autobuild>=2024.10.3",
    "sphinx-intl>=2.3.1",
    "sphinxcontrib-httpdomain>=1.8.1",
    "tomli>=2.2.1",
]