mm-web3 0.5.3__tar.gz → 0.5.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mm_web3-0.5.3 → mm_web3-0.5.5}/.claude/settings.local.json +4 -2
- {mm_web3-0.5.3 → mm_web3-0.5.5}/.gitignore +1 -0
- mm_web3-0.5.5/ADR.md +3 -0
- mm_web3-0.5.5/CLAUDE.md +19 -0
- mm_web3-0.5.5/PKG-INFO +8 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/justfile +1 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/pyproject.toml +12 -12
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/account.py +1 -1
- {mm_web3-0.5.3 → mm_web3-0.5.5}/uv.lock +312 -186
- mm_web3-0.5.3/PKG-INFO +0 -9
- {mm_web3-0.5.3 → mm_web3-0.5.5}/.pre-commit-config.yaml +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/README.md +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/__init__.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/calcs.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/config.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/log.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/network.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/node.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/proxy.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/py.typed +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/retry.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/utils.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/validators.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/__init__.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/common.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_account.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_calcs.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_config.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_network.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_node.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_proxy.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_retry.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_utils.py +0 -0
- {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_validators.py +0 -0
mm_web3-0.5.5/ADR.md
ADDED
mm_web3-0.5.5/CLAUDE.md
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Claude Guidelines
|
|
2
|
+
|
|
3
|
+
## Critical Guidelines
|
|
4
|
+
|
|
5
|
+
1. **Always communicate in English** - Regardless of the language the user speaks, always respond in English. All code, comments, and documentation must be in English.
|
|
6
|
+
|
|
7
|
+
2. **Minimal documentation** - Only add comments/documentation when it simplifies understanding and isn't obvious from the code itself. Keep it strictly relevant and concise.
|
|
8
|
+
|
|
9
|
+
3. **Critical thinking** - Always critically evaluate user ideas. Users can make mistakes. Think first about whether the user's idea is good before implementing.
|
|
10
|
+
|
|
11
|
+
4. **Lint after changes** - After making code changes, always run `just lint` to verify code quality and fix any linter issues.
|
|
12
|
+
|
|
13
|
+
5. **No disabling linter rules** - Never use special disabling comments (like `# noqa`, `# type: ignore`, `# ruff: noqa`, etc.) to turn off linter rules without explicit permission. If you believe a rule should be disabled, ask first.
|
|
14
|
+
|
|
15
|
+
## Required Reading
|
|
16
|
+
|
|
17
|
+
Before working on this codebase, read these documents:
|
|
18
|
+
1. `README.md` - Project overview and API
|
|
19
|
+
2. `ADR.md` - Architectural decisions and rationale
|
mm_web3-0.5.5/PKG-INFO
ADDED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "mm-web3"
|
|
3
|
-
version = "0.5.
|
|
3
|
+
version = "0.5.5"
|
|
4
4
|
description = ""
|
|
5
5
|
requires-python = ">=3.13"
|
|
6
6
|
dependencies = [
|
|
7
|
-
"mm-std~=0.
|
|
8
|
-
"mm-http~=0.2.
|
|
9
|
-
"mm-print~=0.2.
|
|
7
|
+
"mm-std~=0.6.0",
|
|
8
|
+
"mm-http~=0.2.3",
|
|
9
|
+
"mm-print~=0.2.2",
|
|
10
10
|
"loguru>=0.7.3",
|
|
11
|
-
"pydantic~=2.12.3",
|
|
12
11
|
]
|
|
13
12
|
|
|
14
13
|
[build-system]
|
|
@@ -17,17 +16,18 @@ build-backend = "hatchling.build"
|
|
|
17
16
|
|
|
18
17
|
[dependency-groups]
|
|
19
18
|
dev = [
|
|
20
|
-
"
|
|
21
|
-
"
|
|
19
|
+
"bandit~=1.9.2",
|
|
20
|
+
"mypy~=1.19.1",
|
|
21
|
+
"pip-audit~=2.10.0",
|
|
22
|
+
"pre-commit~=4.5.1",
|
|
23
|
+
"pytest~=9.0.2",
|
|
24
|
+
"pytest-asyncio~=1.3.0",
|
|
22
25
|
"pytest-xdist~=3.8.0",
|
|
23
26
|
"pytest-httpserver~=1.1.3",
|
|
24
|
-
"ruff~=0.14.
|
|
25
|
-
"mypy~=1.18.2",
|
|
26
|
-
"pip-audit~=2.9.0",
|
|
27
|
-
"bandit~=1.8.6",
|
|
28
|
-
"pre-commit~=4.3.0",
|
|
27
|
+
"ruff~=0.14.11",
|
|
29
28
|
"python-dotenv~=1.2.1",
|
|
30
29
|
"eth-account~=0.13.7",
|
|
30
|
+
"ty>=0.0.10",
|
|
31
31
|
]
|
|
32
32
|
|
|
33
33
|
[tool.mypy]
|
|
@@ -41,7 +41,7 @@ class PrivateKeyMap(dict[str, str]):
|
|
|
41
41
|
raise TypeError("All keys in PrivateKeyMap must be strings")
|
|
42
42
|
if not all(isinstance(v, str) for v in value.values()):
|
|
43
43
|
raise TypeError("All values in PrivateKeyMap must be strings")
|
|
44
|
-
return cls(value)
|
|
44
|
+
return cls(value) # ty: ignore[no-matching-overload] # false positive
|
|
45
45
|
raise TypeError("Invalid type for PrivateKeyMap. Expected dict or PrivateKeyMap.")
|
|
46
46
|
|
|
47
47
|
@staticmethod
|