mm-web3 0.5.4__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.4 → mm_web3-0.5.5}/.claude/settings.local.json +2 -1
  2. {mm_web3-0.5.4 → mm_web3-0.5.5}/.gitignore +1 -0
  3. mm_web3-0.5.5/ADR.md +3 -0
  4. {mm_web3-0.5.4 → mm_web3-0.5.5}/CLAUDE.md +6 -0
  5. mm_web3-0.5.5/PKG-INFO +8 -0
  6. {mm_web3-0.5.4 → mm_web3-0.5.5}/justfile +1 -0
  7. {mm_web3-0.5.4 → mm_web3-0.5.5}/pyproject.toml +12 -11
  8. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/account.py +1 -1
  9. {mm_web3-0.5.4 → mm_web3-0.5.5}/uv.lock +309 -181
  10. mm_web3-0.5.4/PKG-INFO +0 -8
  11. {mm_web3-0.5.4 → mm_web3-0.5.5}/.pre-commit-config.yaml +0 -0
  12. {mm_web3-0.5.4 → mm_web3-0.5.5}/README.md +0 -0
  13. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/__init__.py +0 -0
  14. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/calcs.py +0 -0
  15. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/config.py +0 -0
  16. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/log.py +0 -0
  17. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/network.py +0 -0
  18. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/node.py +0 -0
  19. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/proxy.py +0 -0
  20. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/py.typed +0 -0
  21. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/retry.py +0 -0
  22. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/utils.py +0 -0
  23. {mm_web3-0.5.4 → mm_web3-0.5.5}/src/mm_web3/validators.py +0 -0
  24. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/__init__.py +0 -0
  25. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/common.py +0 -0
  26. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_account.py +0 -0
  27. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_calcs.py +0 -0
  28. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_config.py +0 -0
  29. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_network.py +0 -0
  30. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_node.py +0 -0
  31. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_proxy.py +0 -0
  32. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_retry.py +0 -0
  33. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_utils.py +0 -0
  34. {mm_web3-0.5.4 → mm_web3-0.5.5}/tests/test_validators.py +0 -0
@@ -3,7 +3,8 @@
3
3
  "allow": [
4
4
  "Bash(just lint)",
5
5
  "mcp__ide__getDiagnostics",
6
- "Bash(tree:*)"
6
+ "Bash(tree:*)",
7
+ "WebFetch(domain:docs.astral.sh)"
7
8
  ],
8
9
  "deny": [],
9
10
  "ask": []
@@ -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.
@@ -11,3 +11,9 @@
11
11
  4. **Lint after changes** - After making code changes, always run `just lint` to verify code quality and fix any linter issues.
12
12
 
13
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,12 +1,12 @@
1
1
  [project]
2
2
  name = "mm-web3"
3
- version = "0.5.4"
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.1",
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
11
  ]
12
12
 
@@ -16,17 +16,18 @@ build-backend = "hatchling.build"
16
16
 
17
17
  [dependency-groups]
18
18
  dev = [
19
- "pytest~=8.4.1",
20
- "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",
21
25
  "pytest-xdist~=3.8.0",
22
26
  "pytest-httpserver~=1.1.3",
23
- "ruff~=0.14.2",
24
- "mypy~=1.18.2",
25
- "pip-audit~=2.9.0",
26
- "bandit~=1.8.6",
27
- "pre-commit~=4.3.0",
27
+ "ruff~=0.14.11",
28
28
  "python-dotenv~=1.2.1",
29
29
  "eth-account~=0.13.7",
30
+ "ty>=0.0.10",
30
31
  ]
31
32
 
32
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