Skip to content

Commit 62a9cb2

Browse files
committed
format pyproject
1 parent 21915f7 commit 62a9cb2

File tree

1 file changed

+107
-181
lines changed

1 file changed

+107
-181
lines changed

pyproject.toml

Lines changed: 107 additions & 181 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,67 @@
11
[build-system]
2+
requires = [ "hatch-vcs", "hatchling",]
23
build-backend = "hatchling.build"
34

4-
requires = [ "hatch-vcs", "hatchling" ]
5-
65
[project]
76
name = "aleph-sdk-python"
87
description = "Lightweight Python Client library for the Aleph.im network"
98
readme = "README.md"
10-
license = { file = "LICENSE.txt" }
11-
authors = [
12-
{ name = "Aleph.im Team", email = "[email protected]" },
13-
]
149
classifiers = [
15-
"Development Status :: 4 - Beta",
16-
"Framework :: aiohttp",
17-
"Intended Audience :: Developers",
18-
"License :: OSI Approved :: MIT License",
19-
"Operating System :: MacOS :: MacOS X",
20-
"Operating System :: POSIX :: Linux",
21-
"Programming Language :: Python :: 3 :: Only",
22-
"Programming Language :: Python :: 3.8",
23-
"Programming Language :: Python :: 3.9",
24-
"Programming Language :: Python :: 3.10",
25-
"Programming Language :: Python :: 3.11",
26-
"Programming Language :: Python :: 3.12",
27-
"Topic :: Software Development :: Libraries",
10+
"Development Status :: 4 - Beta",
11+
"Framework :: aiohttp",
12+
"Intended Audience :: Developers",
13+
"License :: OSI Approved :: MIT License",
14+
"Operating System :: MacOS :: MacOS X",
15+
"Operating System :: POSIX :: Linux",
16+
"Programming Language :: Python :: 3 :: Only",
17+
"Programming Language :: Python :: 3.8",
18+
"Programming Language :: Python :: 3.9",
19+
"Programming Language :: Python :: 3.10",
20+
"Programming Language :: Python :: 3.11",
21+
"Programming Language :: Python :: 3.12",
22+
"Topic :: Software Development :: Libraries",
2823
]
29-
dynamic = [ "version" ]
3024
dependencies = [
31-
"aiohttp>=3.8.3",
32-
"aioresponses>=0.7.6",
33-
"aleph-message>=0.6",
34-
"aleph-superfluid>=0.2.1",
35-
"base58==2.1.1", # Needed now as default with _load_account changement
36-
"coincurve; python_version<'3.11'",
37-
"coincurve>=19; python_version>='3.11'",
38-
"eth-abi>=4; python_version>='3.11'",
39-
"eth-typing==4.3.1",
40-
"jwcrypto==1.5.6",
41-
"pynacl==1.5", # Needed now as default with _load_account changement
42-
"python-magic",
43-
"typing-extensions",
44-
"web3==6.3",
45-
]
46-
47-
optional-dependencies.all = [
48-
"aleph-sdk-python[cosmos,dns,docs,ledger,mqtt,nuls2,substrate,solana,tezos,encryption]",
49-
]
50-
optional-dependencies.cosmos = [
51-
"cosmospy",
52-
]
53-
optional-dependencies.dns = [
54-
"aiodns",
55-
]
56-
optional-dependencies.docs = [
57-
"sphinxcontrib-plantuml",
58-
]
59-
optional-dependencies.encryption = [
60-
"eciespy; python_version<'3.11'",
61-
"eciespy>=0.3.13; python_version>='3.11'",
62-
]
63-
optional-dependencies.ledger = [
64-
"ledgereth==0.10",
65-
]
66-
optional-dependencies.mqtt = [
67-
"aiomqtt<=0.1.3",
68-
"certifi",
69-
"click",
70-
]
71-
optional-dependencies.nuls2 = [
72-
"aleph-nuls2",
73-
]
74-
optional-dependencies.solana = [
75-
"base58",
76-
"pynacl",
77-
]
78-
optional-dependencies.substrate = [
79-
"py-sr25519-bindings",
80-
"substrate-interface",
81-
]
82-
optional-dependencies.tezos = [
83-
"pytezos-crypto==3.13.4.1",
84-
"pynacl",
85-
]
86-
urls.Documentation = "https://aleph.im/"
87-
urls.Homepage = "https://github.com/aleph-im/aleph-sdk-python"
25+
"aiohttp>=3.8.3",
26+
"aioresponses>=0.7.6",
27+
"aleph-message>=0.6",
28+
"aleph-superfluid>=0.2.1",
29+
"base58==2.1.1",
30+
'coincurve>=19; python_version >= "3.11"',
31+
'coincurve; python_version < "3.11"',
32+
'eth-abi>=4; python_version >= "3.11"',
33+
"eth-typing==4.3.1",
34+
"jwcrypto==1.5.6",
35+
"pynacl==1.5",
36+
"python-magic",
37+
"typing-extensions",
38+
"web3==6.3",
39+
]
40+
dynamic = [ "version",]
41+
42+
[project.license]
43+
file = "LICENSE.txt"
44+
45+
[[project.authors]]
46+
name = "Aleph.im Team"
47+
48+
49+
[project.urls]
50+
Documentation = "https://aleph.im/"
51+
Homepage = "https://github.com/aleph-im/aleph-sdk-python"
52+
53+
[project.optional-dependencies]
54+
all = [ "aleph-sdk-python[cosmos,dns,docs,encryption,ledger,mqtt,nuls2,solana,substrate,tezos]",]
55+
cosmos = [ "cosmospy",]
56+
dns = [ "aiodns",]
57+
docs = [ "sphinxcontrib-plantuml",]
58+
encryption = [ 'eciespy>=0.3.13; python_version >= "3.11"', 'eciespy; python_version < "3.11"',]
59+
ledger = [ "ledgereth==0.10",]
60+
mqtt = [ "aiomqtt<=0.1.3", "certifi", "click",]
61+
nuls2 = [ "aleph-nuls2",]
62+
solana = [ "base58", "pynacl",]
63+
substrate = [ "py-sr25519-bindings", "substrate-interface",]
64+
tezos = [ "pynacl", "pytezos-crypto==3.13.4.1",]
8865

8966
[tool.hatch.metadata]
9067
allow-direct-references = true
@@ -93,158 +70,107 @@ allow-direct-references = true
9370
source = "vcs"
9471

9572
[tool.hatch.build.targets.wheel]
96-
packages = [
97-
"src/aleph",
98-
"pyproject.toml",
99-
"README.md",
100-
"LICENSE.txt",
101-
]
73+
packages = [ "src/aleph", "pyproject.toml", "README.md", "LICENSE.txt",]
10274

10375
[tool.hatch.build.targets.sdist]
104-
include = [
105-
"src/aleph",
106-
"pyproject.toml",
107-
"README.md",
108-
"LICENSE.txt",
109-
]
76+
include = [ "src/aleph", "pyproject.toml", "README.md", "LICENSE.txt",]
11077

11178
[[tool.hatch.envs.all.matrix]]
112-
python = [ "3.9", "3.10", "3.11" ]
79+
python = [ "3.9", "3.10", "3.11",]
11380

11481
[tool.hatch.envs.testing]
115-
features = [
116-
"cosmos",
117-
"dns",
118-
"ledger",
119-
"nuls2",
120-
"substrate",
121-
"solana",
122-
"tezos",
123-
"encryption",
124-
]
82+
features = [ "cosmos", "dns", "ledger", "nuls2", "substrate", "solana", "tezos", "encryption",]
12583
dependencies = [
126-
"pytest==8.0.1",
127-
"pytest-cov==4.1.0",
128-
"pytest-mock==3.12.0",
129-
"pytest-asyncio==0.23.5",
130-
"pytest-aiohttp==1.0.5",
131-
"aioresponses==0.7.6",
132-
"fastapi",
133-
"httpx",
134-
"secp256k1",
84+
"pytest==8.0.1",
85+
"pytest-cov==4.1.0",
86+
"pytest-mock==3.12.0",
87+
"pytest-asyncio==0.23.5",
88+
"pytest-aiohttp==1.0.5",
89+
"aioresponses==0.7.6",
90+
"fastapi",
91+
"httpx",
92+
"secp256k1",
13593
]
94+
13695
[tool.hatch.envs.testing.scripts]
13796
test = "pytest {args:} ./src/ ./tests/ ./examples/"
13897
test-cov = "pytest --cov {args:} ./src/ ./tests/ ./examples/"
139-
cov-report = [
140-
"- coverage combine",
141-
"coverage report",
142-
]
143-
cov = [
144-
"test-cov",
145-
"cov-report",
146-
]
98+
cov-report = [ "- coverage combine", "coverage report",]
99+
cov = [ "test-cov", "cov-report",]
147100

148101
[tool.hatch.envs.linting]
149102
detached = true
150103
dependencies = [
151-
"black==24.2.0",
152-
"mypy==1.9.0",
153-
"mypy-extensions==1.0.0",
154-
"ruff==0.4.8",
155-
"isort==5.13.2",
156-
"pyproject-fmt==2.2.1",
104+
"black==24.2.0",
105+
"mypy==1.9.0",
106+
"mypy-extensions==1.0.0",
107+
"ruff==0.4.8",
108+
"isort==5.13.2",
109+
"pyproject-fmt==2.2.1",
157110
]
111+
158112
[tool.hatch.envs.linting.scripts]
159113
typing = "mypy --config-file=pyproject.toml {args:} ./src/ ./tests/ ./examples/"
160114
style = [
161-
"ruff check {args:.} ./src/ ./tests/ ./examples/",
162-
"black --check --diff {args:} ./src/ ./tests/ ./examples/",
163-
"isort --check-only --profile black {args:} ./src/ ./tests/ ./examples/",
164-
"pyproject-fmt --check pyproject.toml",
115+
"ruff check {args:.} ./src/ ./tests/ ./examples/",
116+
"black --check --diff {args:} ./src/ ./tests/ ./examples/",
117+
"isort --check-only --profile black {args:} ./src/ ./tests/ ./examples/",
118+
"pyproject-fmt --check pyproject.toml",
165119
]
166120
fmt = [
167-
"black {args:} ./src/ ./tests/ ./examples/",
168-
"ruff check --fix {args:.} ./src/ ./tests/ ./examples/",
169-
"isort --profile black {args:} ./src/ ./tests/ ./examples/",
170-
"pyproject-fmt pyproject.toml",
171-
"style",
172-
]
173-
all = [
174-
"style",
175-
"typing",
121+
"black {args:} ./src/ ./tests/ ./examples/",
122+
"ruff check --fix {args:.} ./src/ ./tests/ ./examples/",
123+
"isort --profile black {args:} ./src/ ./tests/ ./examples/",
124+
"pyproject-fmt pyproject.toml",
125+
"style",
176126
]
127+
all = [ "style", "typing",]
177128

178129
[tool.isort]
179130
profile = "black"
180131

181132
[tool.pytest.ini_options]
182133
minversion = "6.0"
183-
pythonpath = [ "src" ]
184-
addopts = "-vv -m \"not ledger_hardware\""
185-
norecursedirs = [ "*.egg", "dist", "build", ".tox", ".venv", "*/site-packages/*" ]
186-
testpaths = [ "tests/unit" ]
187-
markers = { ledger_hardware = "marks tests as requiring ledger hardware" }
134+
pythonpath = [ "src",]
135+
addopts = '-vv -m "not ledger_hardware"'
136+
norecursedirs = [ "*.egg", "dist", "build", ".tox", ".venv", "*/site-packages/*",]
137+
testpaths = [ "tests/unit",]
138+
139+
[tool.pytest.ini_options.markers]
140+
ledger_hardware = "marks tests as requiring ledger hardware"
188141

189142
[tool.coverage.run]
190143
branch = true
191144
parallel = true
192-
source = [
193-
"src/",
194-
]
195-
omit = [
196-
"*/site-packages/*",
197-
]
145+
source = [ "src/",]
146+
omit = [ "*/site-packages/*",]
198147

199148
[tool.coverage.paths]
200-
source = [
201-
"src/",
202-
]
203-
omit = [
204-
"*/site-packages/*",
205-
]
149+
source = [ "src/",]
150+
omit = [ "*/site-packages/*",]
206151

207152
[tool.coverage.report]
208153
show_missing = true
209154
skip_empty = true
210155
exclude_lines = [
211-
# Have to re-enable the standard pragma
212-
"pragma: no cover",
213-
214-
# Don't complain about missing debug-only code:
215-
"def __repr__",
216-
"if self\\.debug",
217-
218-
# Don't complain if tests don't hit defensive assertion code:
219-
"raise AssertionError",
220-
"raise NotImplementedError",
221-
222-
# Don't complain if non-runnable code isn't run:
223-
"if 0:",
224-
"if __name__ == .__main__.:",
225-
226-
# Don't complain about ineffective code:
227-
"pass",
156+
"pragma: no cover",
157+
"def __repr__",
158+
"if self\\.debug",
159+
"raise AssertionError",
160+
"raise NotImplementedError",
161+
"if 0:",
162+
"if __name__ == .__main__.:",
163+
"pass",
228164
]
229165

230166
[tool.mypy]
231167
python_version = 3.9
232168
mypy_path = "src"
233-
exclude = [
234-
"conftest.py",
235-
]
169+
exclude = [ "conftest.py",]
236170
show_column_numbers = true
237171
check_untyped_defs = true
238-
239-
# Import discovery
240-
# Install types for third-party library stubs (e.g. from typeshed repository)
241172
install_types = true
242173
non_interactive = true
243-
# Suppresses error messages about imports that cannot be resolved (no py.typed file, no stub file, etc).
244174
ignore_missing_imports = true
245-
# Don't follow imports
246175
follow_imports = "silent"
247-
248-
# Miscellaneous strictness flags
249-
# Allows variables to be redefined with an arbitrary type, as long as the redefinition is in the same block and nesting level as the original definition.
250176
allow_redefinition = true

0 commit comments

Comments
 (0)