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.
Files changed (34) hide show
  1. {mm_web3-0.5.3 → mm_web3-0.5.5}/.claude/settings.local.json +4 -2
  2. {mm_web3-0.5.3 → mm_web3-0.5.5}/.gitignore +1 -0
  3. mm_web3-0.5.5/ADR.md +3 -0
  4. mm_web3-0.5.5/CLAUDE.md +19 -0
  5. mm_web3-0.5.5/PKG-INFO +8 -0
  6. {mm_web3-0.5.3 → mm_web3-0.5.5}/justfile +1 -0
  7. {mm_web3-0.5.3 → mm_web3-0.5.5}/pyproject.toml +12 -12
  8. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/account.py +1 -1
  9. {mm_web3-0.5.3 → mm_web3-0.5.5}/uv.lock +312 -186
  10. mm_web3-0.5.3/PKG-INFO +0 -9
  11. {mm_web3-0.5.3 → mm_web3-0.5.5}/.pre-commit-config.yaml +0 -0
  12. {mm_web3-0.5.3 → mm_web3-0.5.5}/README.md +0 -0
  13. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/__init__.py +0 -0
  14. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/calcs.py +0 -0
  15. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/config.py +0 -0
  16. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/log.py +0 -0
  17. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/network.py +0 -0
  18. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/node.py +0 -0
  19. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/proxy.py +0 -0
  20. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/py.typed +0 -0
  21. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/retry.py +0 -0
  22. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/utils.py +0 -0
  23. {mm_web3-0.5.3 → mm_web3-0.5.5}/src/mm_web3/validators.py +0 -0
  24. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/__init__.py +0 -0
  25. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/common.py +0 -0
  26. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_account.py +0 -0
  27. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_calcs.py +0 -0
  28. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_config.py +0 -0
  29. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_network.py +0 -0
  30. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_node.py +0 -0
  31. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_proxy.py +0 -0
  32. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_retry.py +0 -0
  33. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_utils.py +0 -0
  34. {mm_web3-0.5.3 → mm_web3-0.5.5}/tests/test_validators.py +0 -0
@@ -2,9 +2,11 @@
2
2
  "permissions": {
3
3
  "allow": [
4
4
  "Bash(just lint)",
5
- "mcp__ide__getDiagnostics"
5
+ "mcp__ide__getDiagnostics",
6
+ "Bash(tree:*)",
7
+ "WebFetch(domain:docs.astral.sh)"
6
8
  ],
7
9
  "deny": [],
8
10
  "ask": []
9
11
  }
10
- }
12
+ }
@@ -14,3 +14,4 @@ pip-wheel-metadata
14
14
  /build
15
15
  /tmp
16
16
  .DS_Store
17
+ requirements.txt
mm_web3-0.5.5/ADR.md ADDED
@@ -0,0 +1,3 @@
1
+ # Architecture Decision Records
2
+
3
+ Key design decisions for this project. Read this before suggesting changes.
@@ -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
@@ -0,0 +1,8 @@
1
+ Metadata-Version: 2.4
2
+ Name: mm-web3
3
+ Version: 0.5.5
4
+ Requires-Python: >=3.13
5
+ Requires-Dist: loguru>=0.7.3
6
+ Requires-Dist: mm-http~=0.2.3
7
+ Requires-Dist: mm-print~=0.2.2
8
+ Requires-Dist: mm-std~=0.6.0
@@ -16,6 +16,7 @@ test:
16
16
 
17
17
  lint *args: format pre-commit
18
18
  uv run ruff check {{args}} src tests
19
+ uv run ty check
19
20
  uv run mypy src
20
21
 
21
22
  audit:
@@ -1,14 +1,13 @@
1
1
  [project]
2
2
  name = "mm-web3"
3
- version = "0.5.3"
3
+ version = "0.5.5"
4
4
  description = ""
5
5
  requires-python = ">=3.13"
6
6
  dependencies = [
7
- "mm-std~=0.5.4",
8
- "mm-http~=0.2.1",
9
- "mm-print~=0.2.0",
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
- "pytest~=8.4.1",
21
- "pytest-asyncio~=1.2.0",
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.2",
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