mm-btc 0.5.1__tar.gz → 0.5.3__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 (28) hide show
  1. {mm_btc-0.5.1 → mm_btc-0.5.3}/PKG-INFO +2 -3
  2. {mm_btc-0.5.1 → mm_btc-0.5.3}/README.md +1 -2
  3. {mm_btc-0.5.1 → mm_btc-0.5.3}/justfile +3 -1
  4. {mm_btc-0.5.1 → mm_btc-0.5.3}/pyproject.toml +2 -3
  5. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/blockstream.py +1 -1
  6. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cli.py +1 -2
  7. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/address_cmd.py +1 -1
  8. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/create_tx_cmd.py +4 -4
  9. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/decode_tx_cmd.py +1 -1
  10. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/mnemonic_cmd.py +3 -3
  11. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/utxo_cmd.py +1 -1
  12. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/conftest.py +1 -1
  13. {mm_btc-0.5.1 → mm_btc-0.5.3}/uv.lock +87 -52
  14. mm_btc-0.5.1/README.txt +0 -9
  15. {mm_btc-0.5.1 → mm_btc-0.5.3}/.env.example +0 -0
  16. {mm_btc-0.5.1 → mm_btc-0.5.3}/.gitignore +0 -0
  17. {mm_btc-0.5.1 → mm_btc-0.5.3}/dict.dic +0 -0
  18. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/__init__.py +0 -0
  19. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/__init__.py +0 -0
  20. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/cli/cmd/__init__.py +0 -0
  21. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/py.typed +0 -0
  22. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/tx.py +0 -0
  23. {mm_btc-0.5.1 → mm_btc-0.5.3}/src/mm_btc/wallet.py +0 -0
  24. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/__init__.py +0 -0
  25. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/cmd/__init__.py +0 -0
  26. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/cmd/test_mnemonic_cmd.py +0 -0
  27. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/test_blockstream.py +0 -0
  28. {mm_btc-0.5.1 → mm_btc-0.5.3}/tests/test_wallet.py +0 -0
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mm-btc
3
- Version: 0.5.1
3
+ Version: 0.5.3
4
4
  Requires-Python: >=3.13
5
5
  Requires-Dist: bitcoinlib~=0.7.4
6
6
  Requires-Dist: bit~=0.8.0
7
7
  Requires-Dist: hdwallet~=3.4.0
8
- Requires-Dist: mm-cryptocurrency~=0.4.2
9
- Requires-Dist: mm-print>=0.0.3
8
+ Requires-Dist: mm-web3~=0.5.1
10
9
  Requires-Dist: mnemonic~=0.21
11
10
  Requires-Dist: typer~=0.16.0
@@ -141,8 +141,7 @@ Supported Bitcoin address types:
141
141
  - `bitcoinlib` - Bitcoin utilities
142
142
  - `mnemonic` - BIP39 mnemonic generation
143
143
  - `typer` - CLI framework
144
- - `mm-print` - Pretty printing utilities
145
- - `mm-cryptocurrency` - Cryptocurrency utilities
144
+ - `mm-web3` - Cryptocurrency utilities
146
145
 
147
146
 
148
147
  ## References
@@ -20,7 +20,9 @@ lint: format
20
20
  uv run mypy src
21
21
 
22
22
  audit:
23
- uv run pip-audit
23
+ uv export --no-dev --all-extras --format requirements-txt --no-emit-project > requirements.txt
24
+ uv run pip-audit -r requirements.txt --disable-pip
25
+ rm requirements.txt
24
26
  uv run bandit -r -c "pyproject.toml" src
25
27
 
26
28
  publish: build
@@ -1,16 +1,15 @@
1
1
  [project]
2
2
  name = "mm-btc"
3
- version = "0.5.1"
3
+ version = "0.5.3"
4
4
  description = ""
5
5
  requires-python = ">=3.13"
6
6
  dependencies = [
7
+ "mm-web3~=0.5.1",
7
8
  "hdwallet~=3.4.0",
8
9
  "bit~=0.8.0",
9
10
  "bitcoinlib~=0.7.4",
10
11
  "mnemonic~=0.21",
11
12
  "typer~=0.16.0",
12
- "mm-print>=0.0.3",
13
- "mm-cryptocurrency~=0.4.2",
14
13
  ]
15
14
  [project.scripts]
16
15
  mm-btc = "mm_btc.cli.cli:app"
@@ -1,8 +1,8 @@
1
1
  from collections.abc import Sequence
2
2
 
3
- from mm_cryptocurrency import random_proxy
4
3
  from mm_http import HttpResponse, http_request
5
4
  from mm_result import Result
5
+ from mm_web3 import random_proxy
6
6
  from pydantic import BaseModel
7
7
 
8
8
  MAINNET_BASE_URL = "https://blockstream.info/api"
@@ -5,7 +5,6 @@ from typing import Annotated
5
5
 
6
6
  import mm_print
7
7
  import typer
8
- import typer.core
9
8
 
10
9
  from mm_btc.wallet import AddressType
11
10
 
@@ -68,7 +67,7 @@ def utxo_command(address: str) -> None:
68
67
 
69
68
  def version_callback(value: bool) -> None:
70
69
  if value:
71
- mm_print.print_plain(f"mm-btc: v{importlib.metadata.version('mm-btc')}")
70
+ mm_print.plain(f"mm-btc: v{importlib.metadata.version('mm-btc')}")
72
71
  raise typer.Exit
73
72
 
74
73
 
@@ -7,4 +7,4 @@ from mm_btc.wallet import is_testnet_address
7
7
  async def run(address: str) -> None:
8
8
  client = BlockstreamClient(testnet=is_testnet_address(address))
9
9
  res = await client.get_address(address)
10
- mm_print.print_json(res.value_or_error())
10
+ mm_print.json(res.value_or_error())
@@ -2,13 +2,13 @@ from pathlib import Path
2
2
 
3
3
  import mm_print
4
4
  from bit import PrivateKey, PrivateKeyTestnet
5
- from mm_cryptocurrency import BaseConfig
5
+ from mm_web3 import Web3CliConfig
6
6
 
7
7
  from mm_btc.wallet import is_testnet_address
8
8
 
9
9
 
10
- class Config(BaseConfig):
11
- class Output(BaseConfig):
10
+ class Config(Web3CliConfig):
11
+ class Output(Web3CliConfig):
12
12
  address: str
13
13
  amount: int
14
14
 
@@ -25,4 +25,4 @@ def run(config_path: Path) -> None:
25
25
  outputs = [(o.address, o.amount, "satoshi") for o in config.outputs]
26
26
 
27
27
  tx = key.create_transaction(outputs)
28
- mm_print.print_json(tx)
28
+ mm_print.json(tx)
@@ -5,4 +5,4 @@ from mm_btc.tx import decode_tx
5
5
 
6
6
  def run(tx_hex: str, testnet: bool = False) -> None:
7
7
  res = decode_tx(tx_hex, testnet)
8
- mm_print.print_json(res)
8
+ mm_print.json(res)
@@ -29,12 +29,12 @@ def run(args: Args) -> None:
29
29
  path = get_derivation_path_prefix(args.path, args.testnet)
30
30
  accounts = derive_accounts(mnemonic, passphrase, path, args.address_type, args.limit)
31
31
 
32
- mm_print.print_plain(f"{mnemonic}")
32
+ mm_print.plain(f"{mnemonic}")
33
33
  if passphrase:
34
- mm_print.print_plain(f"{passphrase}")
34
+ mm_print.plain(f"{passphrase}")
35
35
  for acc in accounts:
36
36
  private = acc.private if args.hex else acc.wif
37
- mm_print.print_plain(f"{acc.path} {acc.address} {private}")
37
+ mm_print.plain(f"{acc.path} {acc.address} {private}")
38
38
 
39
39
 
40
40
  def get_derivation_path_prefix(path: str, testnet: bool) -> str:
@@ -7,4 +7,4 @@ from mm_btc.wallet import is_testnet_address
7
7
  async def run(address: str) -> None:
8
8
  client = BlockstreamClient(testnet=is_testnet_address(address))
9
9
  res = await client.get_utxo(address)
10
- mm_print.print_json(res.value_or_error())
10
+ mm_print.json(res.value_or_error())
@@ -2,7 +2,7 @@ import os
2
2
 
3
3
  import pytest
4
4
  from dotenv import load_dotenv
5
- from mm_cryptocurrency import fetch_proxies_sync
5
+ from mm_web3 import fetch_proxies_sync
6
6
  from typer.testing import CliRunner
7
7
 
8
8
  load_dotenv()
@@ -13,7 +13,7 @@ wheels = [
13
13
 
14
14
  [[package]]
15
15
  name = "aiohttp"
16
- version = "3.12.11"
16
+ version = "3.12.12"
17
17
  source = { registry = "https://pypi.org/simple" }
18
18
  dependencies = [
19
19
  { name = "aiohappyeyeballs" },
@@ -24,25 +24,25 @@ dependencies = [
24
24
  { name = "propcache" },
25
25
  { name = "yarl" },
26
26
  ]
27
- sdist = { url = "https://files.pythonhosted.org/packages/93/6b/850a842871ab7be0d00686750d0ee9d8fb8e7be981e4e5700bb6c88f1b8f/aiohttp-3.12.11.tar.gz", hash = "sha256:a5149ae1b11ce4cf8b122846bfa3d7c5f29fe3bfe6745ab21b3eea9615bc5564", size = 7814403, upload-time = "2025-06-07T15:53:26.157Z" }
27
+ sdist = { url = "https://files.pythonhosted.org/packages/f2/84/ea27e6ad14747d8c51afe201fb88a5c8282b6278256d30a6f71f730add88/aiohttp-3.12.12.tar.gz", hash = "sha256:05875595d2483d96cb61fa9f64e75262d7ac6251a7e3c811d8e26f7d721760bd", size = 7818643, upload-time = "2025-06-10T05:22:00.247Z" }
28
28
  wheels = [
29
- { url = "https://files.pythonhosted.org/packages/87/ac/15e21c6a17b5183d1617505b125c773f554a56e06be577a289151a8e5ce7/aiohttp-3.12.11-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:5fadc4b67f972a701805aa501cd9d22cdbeda21f9c9ae85e60678f84b1727a16", size = 694170, upload-time = "2025-06-07T15:52:07.973Z" },
30
- { url = "https://files.pythonhosted.org/packages/02/5b/347f8aff5793829b3a31a927bd039ec4f22221a32c459b9d19fe880921e3/aiohttp-3.12.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:144d67c29ae36f052584fc45a363e92798441a5af5762d83037aade3e2aa9dc5", size = 471832, upload-time = "2025-06-07T15:52:09.954Z" },
31
- { url = "https://files.pythonhosted.org/packages/4b/e5/9ed82f5b6a2dca30940e90820ce2f8203e15111de464bba0980e2c7e169b/aiohttp-3.12.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6b73299e4bf37d14c6e4ca5ce7087b44914a8d9e1f40faedc271f28d64ec277e", size = 464133, upload-time = "2025-06-07T15:52:12.447Z" },
32
- { url = "https://files.pythonhosted.org/packages/3c/8d/edcddc41d4f1157a2536143476070ae66de2b839af3724655c2a6358670a/aiohttp-3.12.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1226325e98e6d3cdfdaca639efdc3af8e82cd17287ae393626d1bd60626b0e93", size = 1702942, upload-time = "2025-06-07T15:52:14.373Z" },
33
- { url = "https://files.pythonhosted.org/packages/b1/2e/efcb6a35d0646ced659edc3172e8e9384246d2cd0b0f3080fc3c441cb511/aiohttp-3.12.11-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:7a0ecae011f2f779271407f2959877230670de3c48f67e5db9fbafa9fddbfa3a", size = 1684207, upload-time = "2025-06-07T15:52:16.349Z" },
34
- { url = "https://files.pythonhosted.org/packages/56/f7/0324c499b7c610633d2f5e8af5457fd3a0584f5f4827bc46b673866596ac/aiohttp-3.12.11-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a8a711883eedcd55f2e1ba218d8224b9f20f1dfac90ffca28e78daf891667e3a", size = 1736275, upload-time = "2025-06-07T15:52:18.88Z" },
35
- { url = "https://files.pythonhosted.org/packages/98/0f/b7aa0fd1ed777b5d6fb62c0dcf82effb717e8b51c802067fc3bcb703e003/aiohttp-3.12.11-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2601c1fcd9b67e632548cfd3c760741b31490502f6f3e5e21287678c1c6fa1b2", size = 1785648, upload-time = "2025-06-07T15:52:20.902Z" },
36
- { url = "https://files.pythonhosted.org/packages/2c/2a/7defcf31010a2964bf17f6c9d9190e3be889f0c5edc3ff2cdac6e60764d7/aiohttp-3.12.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d5b11ea794ee54b33d0d817a1aec0ef0dd2026f070b493bc5a67b7e413b95d4", size = 1707981, upload-time = "2025-06-07T15:52:23.011Z" },
37
- { url = "https://files.pythonhosted.org/packages/b6/9e/ff3d9a01f533752e81fd92bfe1301ae5a7bd5a306d752ad54f8bc61570fa/aiohttp-3.12.11-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:109b3544138ce8a5aca598d5e7ff958699e3e19ee3675d27d5ee9c2e30765a4a", size = 1621683, upload-time = "2025-06-07T15:52:25.22Z" },
38
- { url = "https://files.pythonhosted.org/packages/2c/98/446c96927f2e7d2eaea95660a60eb6077771d00df834430cec002cadd96b/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b795085d063d24c6d09300c85ddd6b9c49816d5c498b40b6899ca24584e936e4", size = 1674706, upload-time = "2025-06-07T15:52:27.767Z" },
39
- { url = "https://files.pythonhosted.org/packages/e1/2a/038cb4af5e58994bc9315d0cb6a906d20ddfffb8eb3d0dfcfe8fe95b1939/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:ebcbc113f40e4c9c0f8d2b6b31a2dd2a9768f3fa5f623b7e1285684e24f5159f", size = 1706372, upload-time = "2025-06-07T15:52:30.399Z" },
40
- { url = "https://files.pythonhosted.org/packages/28/18/dc16cc7cb9b8baf9308f23ecf1e787d916238d01060bea272d5c29e9aa6b/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:590e5d792150d75fa34029d0555b126e65ad50d66818a996303de4af52b65b32", size = 1648967, upload-time = "2025-06-07T15:52:32.935Z" },
41
- { url = "https://files.pythonhosted.org/packages/44/f5/f427ef971e00088c7f0f5a4a7e405732e0ce0b87dfc3eec0f1a8c16863d2/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:9c2a4dec596437b02f0c34f92ea799d6e300184a0304c1e54e462af52abeb0a8", size = 1725099, upload-time = "2025-06-07T15:52:35.019Z" },
42
- { url = "https://files.pythonhosted.org/packages/d4/0a/34fc018d4e193115b512bc08f6afaf79c23609a6487e47f0d593d1d9df41/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:aace119abc495cc4ced8745e3faceb0c22e8202c60b55217405c5f389b569576", size = 1758571, upload-time = "2025-06-07T15:52:37.701Z" },
43
- { url = "https://files.pythonhosted.org/packages/b6/69/b466ec346506384a93bcb864ab75a21b6520c64fcc3720ab2056470a657f/aiohttp-3.12.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:cd749731390520a2dc1ce215bcf0ee1018c3e2e3cd834f966a02c0e71ad7d637", size = 1707461, upload-time = "2025-06-07T15:52:40.321Z" },
44
- { url = "https://files.pythonhosted.org/packages/f4/fc/3437d3e40581bc7d0816e134fdcae3c7e5c3f21dbdcfbd54402af3973b1c/aiohttp-3.12.11-cp313-cp313-win32.whl", hash = "sha256:65952736356d1fbc9efdd17492dce36e2501f609a14ccb298156e392d3ad8b83", size = 420053, upload-time = "2025-06-07T15:52:42.364Z" },
45
- { url = "https://files.pythonhosted.org/packages/6c/cf/cd84df67147c986315c63fef29a6ecadf03bf5528340b8c82eedd988cf57/aiohttp-3.12.11-cp313-cp313-win_amd64.whl", hash = "sha256:854132093e12dd77f5c07975581c42ae51a6a8868dcbbb509c77d1963c3713b7", size = 445988, upload-time = "2025-06-07T15:52:44.475Z" },
29
+ { url = "https://files.pythonhosted.org/packages/ee/3e/396a7d1c47aa7a74612b186dc716857506c61afac72337a7a96215c2a124/aiohttp-3.12.12-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ea5d604318234427929d486954e3199aded65f41593ac57aa0241ab93dda3d15", size = 694901, upload-time = "2025-06-10T05:20:26.58Z" },
30
+ { url = "https://files.pythonhosted.org/packages/cc/97/235e48eadf73a1854b4d4da29b88d00049309d897d55a511e1cbe4412603/aiohttp-3.12.12-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e03ff38250b8b572dce6fcd7b6fb6ee398bb8a59e6aa199009c5322d721df4fc", size = 472552, upload-time = "2025-06-10T05:20:28.957Z" },
31
+ { url = "https://files.pythonhosted.org/packages/6b/73/cd7c9439e8cab4113650541017c6524bd0e675b219dfdbbf945a78305e3f/aiohttp-3.12.12-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:71125b1fc2b6a94bccc63bbece620906a4dead336d2051f8af9cbf04480bc5af", size = 464853, upload-time = "2025-06-10T05:20:31.652Z" },
32
+ { url = "https://files.pythonhosted.org/packages/d1/33/eea88ee55ed4b3f74732d9fc773e6fcf134a2971a19c7ecc49a291e7e57f/aiohttp-3.12.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:784a66f9f853a22c6b8c2bd0ff157f9b879700f468d6d72cfa99167df08c5c9c", size = 1703671, upload-time = "2025-06-10T05:20:33.969Z" },
33
+ { url = "https://files.pythonhosted.org/packages/2a/e3/a67ecf9c154b13bad9e2a86ea3782a4b73e889343ffde8c1aadcf9099c09/aiohttp-3.12.12-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a5be0b58670b54301404bd1840e4902570a1c3be00358e2700919cb1ea73c438", size = 1684934, upload-time = "2025-06-10T05:20:36.721Z" },
34
+ { url = "https://files.pythonhosted.org/packages/89/f0/3aaea866531be2f2fcf3a87607e1f55fa72e6ce5acd6b058941a4fc35e15/aiohttp-3.12.12-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8f13566fc7bf5a728275b434bc3bdea87a7ed3ad5f734102b02ca59d9b510f", size = 1737004, upload-time = "2025-06-10T05:20:39.533Z" },
35
+ { url = "https://files.pythonhosted.org/packages/a7/7a/15867a4c7d39d8fd9bd02191cf60b1d06415fc407bbd4ff2f9660845f1cb/aiohttp-3.12.12-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d736e57d1901683bc9be648aa308cb73e646252c74b4c639c35dcd401ed385ea", size = 1786378, upload-time = "2025-06-10T05:20:42.03Z" },
36
+ { url = "https://files.pythonhosted.org/packages/bd/61/82b15f87088b35705e01fce55806241b45a1099b3470bbca0bed8ee98662/aiohttp-3.12.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2007eaa7aae9102f211c519d1ec196bd3cecb1944a095db19eeaf132b798738", size = 1708707, upload-time = "2025-06-10T05:20:44.474Z" },
37
+ { url = "https://files.pythonhosted.org/packages/28/f2/aed0786d5a1c2ed1f5a13ff2a98baacc27206b81d93812da28fc49d8a5d0/aiohttp-3.12.12-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a813e61583cab6d5cdbaa34bc28863acdb92f9f46e11de1b3b9251a1e8238f6", size = 1622410, upload-time = "2025-06-10T05:20:46.957Z" },
38
+ { url = "https://files.pythonhosted.org/packages/17/54/8305f49a960376136ada977be1370fddb584c63d40bd1b9bef59469f28c7/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e408293aa910b0aea48b86a28eace41d497a85ba16c20f619f0c604597ef996c", size = 1675435, upload-time = "2025-06-10T05:20:49.379Z" },
39
+ { url = "https://files.pythonhosted.org/packages/bb/dc/0a55350025bc297265cfa6c6b1b1f7508f4226ca3238697cbe5e772a7d76/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:f3d31faf290f5a30acba46b388465b67c6dbe8655d183e9efe2f6a1d594e6d9d", size = 1707099, upload-time = "2025-06-10T05:20:51.974Z" },
40
+ { url = "https://files.pythonhosted.org/packages/d8/70/d949a1612b996e49d540c10ed77a0a1465c482a590e9a59c1c7897746119/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0b84731697325b023902aa643bd1726d999f5bc7854bc28b17ff410a81151d4b", size = 1649693, upload-time = "2025-06-10T05:20:54.973Z" },
41
+ { url = "https://files.pythonhosted.org/packages/c1/ea/fb87beb7135e25576a1e6fbe98106c037d9fcf1543f19108f9ceb73c192c/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:a324c6852b6e327811748446e56cc9bb6eaa58710557922183175816e82a4234", size = 1725825, upload-time = "2025-06-10T05:20:57.433Z" },
42
+ { url = "https://files.pythonhosted.org/packages/f1/1f/adbeb3e440d49b733cef499ace94723ab1fe9fb516425e219379e03b7c9a/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:22fd867fbd72612dcf670c90486dbcbaf702cb807fb0b42bc0b7a142a573574a", size = 1759300, upload-time = "2025-06-10T05:21:00.444Z" },
43
+ { url = "https://files.pythonhosted.org/packages/f2/c1/2fe007ad930f409d0d7fd9916cd55ec9b78b6a611a237424266ed71da48b/aiohttp-3.12.12-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:3e092f1a970223794a4bf620a26c0e4e4e8e36bccae9b0b5da35e6d8ee598a03", size = 1708189, upload-time = "2025-06-10T05:21:02.969Z" },
44
+ { url = "https://files.pythonhosted.org/packages/85/5e/ed3ed640fafae3972eae6cd26f66240108cf62452ac8128d59970d538cb1/aiohttp-3.12.12-cp313-cp313-win32.whl", hash = "sha256:7f5f5eb8717ef8ba15ab35fcde5a70ad28bbdc34157595d1cddd888a985f5aae", size = 420783, upload-time = "2025-06-10T05:21:06.287Z" },
45
+ { url = "https://files.pythonhosted.org/packages/a6/db/57d2bb4af52dd0c6f62c42c7d34b82495b2902e50440134f70bfb7ee0fdd/aiohttp-3.12.12-cp313-cp313-win_amd64.whl", hash = "sha256:ace2499bdd03c329c054dc4b47361f2b19d5aa470f7db5c7e0e989336761b33c", size = 446721, upload-time = "2025-06-10T05:21:08.738Z" },
46
46
  ]
47
47
 
48
48
  [[package]]
@@ -473,6 +473,19 @@ wheels = [
473
473
  { url = "https://files.pythonhosted.org/packages/53/84/8a89614b2e7eeeaf0a68a4046d6cfaea4544c8619ea02595ebeec9b2bae3/license_expression-30.4.1-py3-none-any.whl", hash = "sha256:679646bc3261a17690494a3e1cada446e5ee342dbd87dcfa4a0c24cc5dce13ee", size = 111457, upload-time = "2025-01-14T05:11:38.658Z" },
474
474
  ]
475
475
 
476
+ [[package]]
477
+ name = "loguru"
478
+ version = "0.7.3"
479
+ source = { registry = "https://pypi.org/simple" }
480
+ dependencies = [
481
+ { name = "colorama", marker = "sys_platform == 'win32'" },
482
+ { name = "win32-setctime", marker = "sys_platform == 'win32'" },
483
+ ]
484
+ sdist = { url = "https://files.pythonhosted.org/packages/3a/05/a1dae3dffd1116099471c643b8924f5aa6524411dc6c63fdae648c4f1aca/loguru-0.7.3.tar.gz", hash = "sha256:19480589e77d47b8d85b2c827ad95d49bf31b0dcde16593892eb51dd18706eb6", size = 63559, upload-time = "2024-12-06T11:20:56.608Z" }
485
+ wheels = [
486
+ { url = "https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl", hash = "sha256:31a33c10c8e1e10422bfd431aeb5d351c7cf7fa671e3c4df004162264b28220c", size = 61595, upload-time = "2024-12-06T11:20:54.538Z" },
487
+ ]
488
+
476
489
  [[package]]
477
490
  name = "markdown-it-py"
478
491
  version = "3.0.0"
@@ -524,14 +537,13 @@ wheels = [
524
537
 
525
538
  [[package]]
526
539
  name = "mm-btc"
527
- version = "0.5.1"
540
+ version = "0.5.3"
528
541
  source = { editable = "." }
529
542
  dependencies = [
530
543
  { name = "bit" },
531
544
  { name = "bitcoinlib" },
532
545
  { name = "hdwallet" },
533
- { name = "mm-cryptocurrency" },
534
- { name = "mm-print" },
546
+ { name = "mm-web3" },
535
547
  { name = "mnemonic" },
536
548
  { name = "typer" },
537
549
  ]
@@ -554,8 +566,7 @@ requires-dist = [
554
566
  { name = "bit", specifier = "~=0.8.0" },
555
567
  { name = "bitcoinlib", specifier = "~=0.7.4" },
556
568
  { name = "hdwallet", specifier = "~=3.4.0" },
557
- { name = "mm-cryptocurrency", specifier = "~=0.4.2" },
558
- { name = "mm-print", specifier = ">=0.0.3" },
569
+ { name = "mm-web3", specifier = "~=0.5.1" },
559
570
  { name = "mnemonic", specifier = "~=0.21" },
560
571
  { name = "typer", specifier = "~=0.16.0" },
561
572
  ]
@@ -573,61 +584,67 @@ dev = [
573
584
  { name = "ruff", specifier = "~=0.11.13" },
574
585
  ]
575
586
 
576
- [[package]]
577
- name = "mm-cryptocurrency"
578
- version = "0.4.2"
579
- source = { registry = "https://pypi.org/simple" }
580
- dependencies = [
581
- { name = "mm-http" },
582
- { name = "mm-print" },
583
- { name = "mm-result" },
584
- ]
585
- wheels = [
586
- { url = "https://files.pythonhosted.org/packages/8c/11/785df7e03a1d7e4e23526aedc015682ee170e347176862a37240664e6da6/mm_cryptocurrency-0.4.2-py3-none-any.whl", hash = "sha256:76c2b3f917e95e85f26ae399f3148c5a2a55f07781ed74efcf7ee933a327744b", size = 7171, upload-time = "2025-06-09T14:30:35.44Z" },
587
- ]
588
-
589
587
  [[package]]
590
588
  name = "mm-http"
591
- version = "0.0.2"
589
+ version = "0.1.0"
592
590
  source = { registry = "https://pypi.org/simple" }
593
591
  dependencies = [
594
592
  { name = "aiohttp" },
595
593
  { name = "aiohttp-socks" },
596
594
  { name = "mm-result" },
597
- { name = "pydantic" },
598
595
  { name = "pydash" },
599
596
  { name = "requests", extra = ["socks"] },
600
597
  ]
598
+ sdist = { url = "https://files.pythonhosted.org/packages/58/da/13e75c1fd5bf19b76076552bd8a403a4a5c0976c1cbb68d124b0c1138d1e/mm_http-0.1.0.tar.gz", hash = "sha256:5afeb49a4d1221413e153ec27fa995c5b0646ea1fc2a4abe67c0cc2ca4e5e44a", size = 47073, upload-time = "2025-06-12T09:00:47.278Z" }
601
599
  wheels = [
602
- { url = "https://files.pythonhosted.org/packages/84/d4/10fdb8dd190b6413fd069147610848f6ed09f45107cd5b072d39bab47714/mm_http-0.0.2-py3-none-any.whl", hash = "sha256:93e6b5a8639327738c864b170c759582fd8291da300cea25bedc872299589cfd", size = 4648, upload-time = "2025-06-09T09:47:43.286Z" },
600
+ { url = "https://files.pythonhosted.org/packages/c8/d7/1ef3e282a823a21d350a25182400393680e58e8add168f815e76ac4386d0/mm_http-0.1.0-py3-none-any.whl", hash = "sha256:3cedc4d8e5e4e6013405fa96a91378c2d66e28f3f389e2ddb127b02061a0c24e", size = 4331, upload-time = "2025-06-12T09:00:43.097Z" },
603
601
  ]
604
602
 
605
603
  [[package]]
606
604
  name = "mm-print"
607
- version = "0.0.3"
605
+ version = "0.1.1"
608
606
  source = { registry = "https://pypi.org/simple" }
609
607
  dependencies = [
610
608
  { name = "mm-std" },
611
609
  { name = "rich" },
610
+ { name = "tomlkit" },
612
611
  ]
613
612
  wheels = [
614
- { url = "https://files.pythonhosted.org/packages/e1/15/83503548eb52c01176a558a739490008ec8af0a1e0543dcd321f7d67e7d7/mm_print-0.0.3-py3-none-any.whl", hash = "sha256:6417e0ce5a49df7353d9bacf5f6a3bd2027da78addf264f14f0233f2c97b12b7", size = 1982, upload-time = "2025-06-09T08:04:12.462Z" },
613
+ { url = "https://files.pythonhosted.org/packages/5f/6c/5a44d4ca8a357f86767fe1940df67b125ea4c6d7cadbcecb5deebd5a91c6/mm_print-0.1.1-py3-none-any.whl", hash = "sha256:8fa3664fb5d7d55af6f1598317ff764e2c55e3d3a505725a85997e236dc8d11b", size = 2217, upload-time = "2025-06-11T07:34:12.772Z" },
615
614
  ]
616
615
 
617
616
  [[package]]
618
617
  name = "mm-result"
619
- version = "0.0.4"
618
+ version = "0.1.1"
620
619
  source = { registry = "https://pypi.org/simple" }
620
+ sdist = { url = "https://files.pythonhosted.org/packages/48/03/82a800b72e611aab08e3bed14dfb59b7b26c3438e1bd7e6a747727f64831/mm_result-0.1.1.tar.gz", hash = "sha256:b00f75f5f4d03a47db99394847b462cb013c3eb111d60aa31e39c5405d5eceb6", size = 31041, upload-time = "2025-06-12T08:56:55.271Z" }
621
621
  wheels = [
622
- { url = "https://files.pythonhosted.org/packages/a6/6b/b287f7d618080ddbe6bbc8091da47ee316c581a3baa22555e108affd7d71/mm_result-0.0.4-py3-none-any.whl", hash = "sha256:edb12be3bd49eca224335067b110fb5a1901d68d52c2a371cdda32d5274a06b7", size = 4907, upload-time = "2025-06-09T15:32:07.204Z" },
622
+ { url = "https://files.pythonhosted.org/packages/9e/07/8b51ebac3c01536b98cc5a7a35dc3e71ab0deadee95f4bf13d1a23eddbc2/mm_result-0.1.1-py3-none-any.whl", hash = "sha256:d4b45025a08f2f50658aaf2756adfd55c91b0e8ef69a922bfaecd411234e6498", size = 4832, upload-time = "2025-06-12T08:56:53.447Z" },
623
623
  ]
624
624
 
625
625
  [[package]]
626
626
  name = "mm-std"
627
- version = "0.5.2"
627
+ version = "0.5.3"
628
628
  source = { registry = "https://pypi.org/simple" }
629
+ sdist = { url = "https://files.pythonhosted.org/packages/8a/1b/7991ecaf40417757fb8e383ed9cc600c0b3ac731f5c6f9132bd596448213/mm_std-0.5.3.tar.gz", hash = "sha256:e23d548706f32534450f2310d1259f5d84d54e7cc4f33920ad2dba86e8c2f7c6", size = 27823, upload-time = "2025-06-11T06:15:39.037Z" }
629
630
  wheels = [
630
- { url = "https://files.pythonhosted.org/packages/7b/24/943ad33ac75a0a478bbb3e95b4691f34f4359b2a3a5ee4585abd621cd797/mm_std-0.5.2-py3-none-any.whl", hash = "sha256:fa524bb1ffd9db6815f20979fbff440ef6725b65560dc1fc7f59cbc7a073fa35", size = 6465, upload-time = "2025-06-09T14:17:48.952Z" },
631
+ { url = "https://files.pythonhosted.org/packages/56/22/57aa730c90899e5eff6de212c64d2bcf7d8526f3f2fb2d815718db332f36/mm_std-0.5.3-py3-none-any.whl", hash = "sha256:84f25e3a3dc4b10cab30c63be18ca195928a4cabda01b3cee9a27ba5520b2b92", size = 7532, upload-time = "2025-06-11T06:15:37.551Z" },
632
+ ]
633
+
634
+ [[package]]
635
+ name = "mm-web3"
636
+ version = "0.5.1"
637
+ source = { registry = "https://pypi.org/simple" }
638
+ dependencies = [
639
+ { name = "loguru" },
640
+ { name = "mm-http" },
641
+ { name = "mm-print" },
642
+ { name = "mm-std" },
643
+ { name = "pydantic" },
644
+ ]
645
+ sdist = { url = "https://files.pythonhosted.org/packages/9f/60/75f9b37a8df1fc13b58e996ad1415d5d0248c0082679c3c9d9206b7c2d2d/mm_web3-0.5.1.tar.gz", hash = "sha256:4a3624359ed775027da4fc7c828a478968fb863f5127cc0d1b5bf2b78ffe75a8", size = 81523, upload-time = "2025-06-16T07:58:26.815Z" }
646
+ wheels = [
647
+ { url = "https://files.pythonhosted.org/packages/cb/16/476324d3bf5df27ad0e3731b2b521f46ca4aec5d66c71f1c47b8d708a29c/mm_web3-0.5.1-py3-none-any.whl", hash = "sha256:c28572a70285e2ed1be4167f2ea094b8e88acce52de2b62ffbe60bf033488110", size = 15058, upload-time = "2025-06-16T07:58:25.701Z" },
631
648
  ]
632
649
 
633
650
  [[package]]
@@ -941,7 +958,7 @@ wheels = [
941
958
 
942
959
  [[package]]
943
960
  name = "pydantic"
944
- version = "2.11.5"
961
+ version = "2.11.7"
945
962
  source = { registry = "https://pypi.org/simple" }
946
963
  dependencies = [
947
964
  { name = "annotated-types" },
@@ -949,9 +966,9 @@ dependencies = [
949
966
  { name = "typing-extensions" },
950
967
  { name = "typing-inspection" },
951
968
  ]
952
- sdist = { url = "https://files.pythonhosted.org/packages/f0/86/8ce9040065e8f924d642c58e4a344e33163a07f6b57f836d0d734e0ad3fb/pydantic-2.11.5.tar.gz", hash = "sha256:7f853db3d0ce78ce8bbb148c401c2cdd6431b3473c0cdff2755c7690952a7b7a", size = 787102, upload-time = "2025-05-22T21:18:08.761Z" }
969
+ sdist = { url = "https://files.pythonhosted.org/packages/00/dd/4325abf92c39ba8623b5af936ddb36ffcfe0beae70405d456ab1fb2f5b8c/pydantic-2.11.7.tar.gz", hash = "sha256:d989c3c6cb79469287b1569f7447a17848c998458d49ebe294e975b9baf0f0db", size = 788350, upload-time = "2025-06-14T08:33:17.137Z" }
953
970
  wheels = [
954
- { url = "https://files.pythonhosted.org/packages/b5/69/831ed22b38ff9b4b64b66569f0e5b7b97cf3638346eb95a2147fdb49ad5f/pydantic-2.11.5-py3-none-any.whl", hash = "sha256:f9c26ba06f9747749ca1e5c94d6a85cb84254577553c8785576fd38fa64dc0f7", size = 444229, upload-time = "2025-05-22T21:18:06.329Z" },
971
+ { url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl", hash = "sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b", size = 444782, upload-time = "2025-06-14T08:33:14.905Z" },
955
972
  ]
956
973
 
957
974
  [[package]]
@@ -1131,7 +1148,7 @@ wheels = [
1131
1148
 
1132
1149
  [[package]]
1133
1150
  name = "requests"
1134
- version = "2.32.3"
1151
+ version = "2.32.4"
1135
1152
  source = { registry = "https://pypi.org/simple" }
1136
1153
  dependencies = [
1137
1154
  { name = "certifi" },
@@ -1139,9 +1156,9 @@ dependencies = [
1139
1156
  { name = "idna" },
1140
1157
  { name = "urllib3" },
1141
1158
  ]
1142
- sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
1159
+ sdist = { url = "https://files.pythonhosted.org/packages/e1/0a/929373653770d8a0d7ea76c37de6e41f11eb07559b103b1c02cafb3f7cf8/requests-2.32.4.tar.gz", hash = "sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422", size = 135258, upload-time = "2025-06-09T16:43:07.34Z" }
1143
1160
  wheels = [
1144
- { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
1161
+ { url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl", hash = "sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c", size = 64847, upload-time = "2025-06-09T16:43:05.728Z" },
1145
1162
  ]
1146
1163
 
1147
1164
  [package.optional-dependencies]
@@ -1265,6 +1282,15 @@ wheels = [
1265
1282
  { url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588, upload-time = "2020-11-01T01:40:20.672Z" },
1266
1283
  ]
1267
1284
 
1285
+ [[package]]
1286
+ name = "tomlkit"
1287
+ version = "0.13.3"
1288
+ source = { registry = "https://pypi.org/simple" }
1289
+ sdist = { url = "https://files.pythonhosted.org/packages/cc/18/0bbf3884e9eaa38819ebe46a7bd25dcd56b67434402b66a58c4b8e552575/tomlkit-0.13.3.tar.gz", hash = "sha256:430cf247ee57df2b94ee3fbe588e71d362a941ebb545dec29b53961d61add2a1", size = 185207, upload-time = "2025-06-05T07:13:44.947Z" }
1290
+ wheels = [
1291
+ { url = "https://files.pythonhosted.org/packages/bd/75/8539d011f6be8e29f339c42e633aae3cb73bffa95dd0f9adec09b9c58e85/tomlkit-0.13.3-py3-none-any.whl", hash = "sha256:c89c649d79ee40629a9fda55f8ace8c6a1b42deb912b2a8fd8d942ddadb606b0", size = 38901, upload-time = "2025-06-05T07:13:43.546Z" },
1292
+ ]
1293
+
1268
1294
  [[package]]
1269
1295
  name = "typer"
1270
1296
  version = "0.16.0"
@@ -1322,6 +1348,15 @@ wheels = [
1322
1348
  { url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl", hash = "sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e", size = 224498, upload-time = "2024-11-08T15:52:16.132Z" },
1323
1349
  ]
1324
1350
 
1351
+ [[package]]
1352
+ name = "win32-setctime"
1353
+ version = "1.2.0"
1354
+ source = { registry = "https://pypi.org/simple" }
1355
+ sdist = { url = "https://files.pythonhosted.org/packages/b3/8f/705086c9d734d3b663af0e9bb3d4de6578d08f46b1b101c2442fd9aecaa2/win32_setctime-1.2.0.tar.gz", hash = "sha256:ae1fdf948f5640aae05c511ade119313fb6a30d7eabe25fef9764dca5873c4c0", size = 4867, upload-time = "2024-12-07T15:28:28.314Z" }
1356
+ wheels = [
1357
+ { url = "https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl", hash = "sha256:95d644c4e708aba81dc3704a116d8cbc974d70b3bdb8be1d150e36be6e9d1390", size = 4083, upload-time = "2024-12-07T15:28:26.465Z" },
1358
+ ]
1359
+
1325
1360
  [[package]]
1326
1361
  name = "yarl"
1327
1362
  version = "1.20.0"
mm_btc-0.5.1/README.txt DELETED
@@ -1,9 +0,0 @@
1
- mm-btc
2
-
3
-
4
- Links:
5
- - https://en.bitcoin.it/wiki/Transaction
6
- - https://en.bitcoin.it/wiki/List_of_address_prefixes
7
- - https://github.com/bitcoin/bips/blob/master/README.mediawiki
8
-
9
- - https://github.com/Blockstream/esplora/blob/master/API.md
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes