forked from hiero-ledger/hiero-sdk-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
110 lines (96 loc) · 2.63 KB
/
pyproject.toml
File metadata and controls
110 lines (96 loc) · 2.63 KB
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
[project]
name = "hiero-sdk-python"
dynamic = ["version"]
description = "A Hiero SDK in pure Python"
maintainers = [
{ name = "Nadine Loepfe", email = "nadine.loepfe@hashgraph.com" },
{ name = "Sophie Bulloch", email = "exploreriii57@gmail.com" }
]
authors = [
{ name = "Nadine Loepfe", email = "nadine.loepfe@hashgraph.com" },
{ name = "Richard Bair", email = "rbair23@users.noreply.github.com" }
]
license = { file = "LICENSE" }
readme = "README.md"
requires-python = ">=3.10, <4"
dependencies = [
"protobuf>=4.21.12,<7",
"grpcio>=1.76.0,<2",
"cryptography>=44.0.1,<47",
"requests>=2.31.0,<3",
"pycryptodome>=3.18.0,<4",
"eth-abi>=5.1.0,<6",
"python-dotenv>=1.2.1,<3",
]
classifiers = [
"Development Status :: 2 - Pre-Alpha",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Operating System :: OS Independent",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries",
]
[project.optional-dependencies]
eth = [
"eth-keys>=0.7.0,<0.8",
"rlp>=4.0.1,<5",
]
tck = ["flask>=3.0.0,<4"]
[dependency-groups]
dev = [
"grpcio-tools>=1.76.0,<2",
"pytest>=8.3.4,<10",
"pytest-cov>=7.0.0,<8",
]
lint = [
"ruff>=0.14.9,<1",
"mypy>=1.18.2,<2",
"typing-extensions>=4.15.0,<5",
]
[tool.uv]
default-groups = ["dev", "lint"]
[build-system]
requires = ["pdm-backend", "setuptools", "setuptools_scm", "grpcio-tools"]
build-backend = "pdm.backend"
[tool.setuptools_scm]
version_scheme = "python-simplified-semver"
local_scheme = "dirty-tag"
[tool.pdm]
version = { source = "scm" }
[tool.pdm.build]
package-dir = "src"
excludes = ["**/.pytest_cache"]
[tool.pytest.ini_options]
pythonpath = ["src", "."]
testpaths = ["tests"]
[tool.ruff]
line-length = 120
target-version = "py314"
[tool.ruff.lint]
select = [
"D", # docstrings
"E", # pycodestyle errors
"F", # pyflakes
"I", # import sorting
"B", # bugbear (real bugs)
"UP", # pyupgrade (modern syntax)
"SIM", # simplify logic
"PERF", # performance traps
"ARG", # unused function arguments
"RET", # return consistency
"RSE", # exception correctness
]
ignore = [
"D212", # disable "summary on same line"
"E501", # line length -> formatter
"B008", # function calls in argument defaults
]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
[tool.ruff.lint.pydocstyle]
convention = "google"