mm-sol 0.6.1__tar.gz → 0.6.2__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 (48) hide show
  1. {mm_sol-0.6.1 → mm_sol-0.6.2}/PKG-INFO +2 -2
  2. {mm_sol-0.6.1 → mm_sol-0.6.2}/pyproject.toml +2 -2
  3. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/node_cmd.py +1 -1
  4. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/transfer_cmd.py +3 -3
  5. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/rpc.py +5 -5
  6. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/rpc_sync.py +5 -5
  7. {mm_sol-0.6.1 → mm_sol-0.6.2}/uv.lock +610 -611
  8. {mm_sol-0.6.1 → mm_sol-0.6.2}/.env.example +0 -0
  9. {mm_sol-0.6.1 → mm_sol-0.6.2}/.gitignore +0 -0
  10. {mm_sol-0.6.1 → mm_sol-0.6.2}/README.md +0 -0
  11. {mm_sol-0.6.1 → mm_sol-0.6.2}/dict.dic +0 -0
  12. {mm_sol-0.6.1 → mm_sol-0.6.2}/justfile +0 -0
  13. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/__init__.py +0 -0
  14. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/account.py +0 -0
  15. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/__init__.py +0 -0
  16. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/calcs.py +0 -0
  17. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cli.py +0 -0
  18. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cli_utils.py +0 -0
  19. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/__init__.py +0 -0
  20. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/balance_cmd.py +0 -0
  21. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/balances_cmd.py +0 -0
  22. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/example_cmd.py +0 -0
  23. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/wallet/__init__.py +0 -0
  24. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/wallet/keypair_cmd.py +0 -0
  25. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/cmd/wallet/mnemonic_cmd.py +0 -0
  26. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/examples/balances.toml +0 -0
  27. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/examples/transfer.toml +0 -0
  28. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/cli/validators.py +0 -0
  29. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/constants.py +0 -0
  30. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/converters.py +0 -0
  31. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/py.typed +0 -0
  32. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/retry.py +0 -0
  33. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/spl_token.py +0 -0
  34. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/transfer.py +0 -0
  35. {mm_sol-0.6.1 → mm_sol-0.6.2}/src/mm_sol/utils.py +0 -0
  36. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/__init__.py +0 -0
  37. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/cli/__init__.py +0 -0
  38. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/cli/cmd/__init__.py +0 -0
  39. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/cli/cmd/wallet/__init__.py +0 -0
  40. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/cli/cmd/wallet/test_keypair_cmd.py +0 -0
  41. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/cli/cmd/wallet/test_mnemonic_cmd.py +0 -0
  42. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/conftest.py +0 -0
  43. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_account.py +0 -0
  44. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_client.py +0 -0
  45. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_converters.py +0 -0
  46. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_rpc.py +0 -0
  47. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_rpc_sync.py +0 -0
  48. {mm_sol-0.6.1 → mm_sol-0.6.2}/tests/test_spl_token.py +0 -0
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mm-sol
3
- Version: 0.6.1
3
+ Version: 0.6.2
4
4
  Requires-Python: >=3.12
5
5
  Requires-Dist: base58~=2.1.1
6
6
  Requires-Dist: jinja2>=3.1.6
7
- Requires-Dist: mm-crypto-utils>=0.3.4
7
+ Requires-Dist: mm-crypto-utils>=0.3.6
8
8
  Requires-Dist: mnemonic==0.21
9
9
  Requires-Dist: socksio>=1.0.0
10
10
  Requires-Dist: solana~=0.36.6
@@ -1,10 +1,10 @@
1
1
  [project]
2
2
  name = "mm-sol"
3
- version = "0.6.1"
3
+ version = "0.6.2"
4
4
  description = ""
5
5
  requires-python = ">=3.12"
6
6
  dependencies = [
7
- "mm-crypto-utils>=0.3.4",
7
+ "mm-crypto-utils>=0.3.6",
8
8
  "solana~=0.36.6",
9
9
  "solders~=0.26.0",
10
10
  "base58~=2.1.1",
@@ -7,5 +7,5 @@ from mm_sol.cli import cli_utils
7
7
  async def run(urls: list[str], proxy: str | None) -> None:
8
8
  result = {}
9
9
  for url in [cli_utils.public_rpc_url(u) for u in urls]:
10
- result[url] = (await rpc.get_block_height(url, proxy=proxy, timeout=10)).ok_or_error()
10
+ result[url] = (await rpc.get_block_height(url, proxy=proxy, timeout=10)).value_or_error()
11
11
  print_json(data=result)
@@ -130,7 +130,7 @@ async def _calc_value(transfer: Transfer, config: Config, transfer_sol_fee: int)
130
130
  proxies=config.proxies,
131
131
  fee=transfer_sol_fee,
132
132
  )
133
- logger.debug(f"{transfer.log_prefix}: value={value_res.ok_or_error()}")
133
+ logger.debug(f"{transfer.log_prefix}: value={value_res.value_or_error()}")
134
134
  if value_res.is_err():
135
135
  logger.info(f"{transfer.log_prefix}: calc value error, {value_res.unwrap_error()}")
136
136
 
@@ -256,11 +256,11 @@ async def _print_balances(config: Config) -> None:
256
256
 
257
257
  async def _get_sol_balance_str(address: str, config: Config) -> str:
258
258
  res = await retry.get_sol_balance(5, config.nodes, config.proxies, address=address)
259
- return res.map(lambda ok: str(lamports_to_sol(ok, config.round_ndigits))).ok_or_error()
259
+ return res.map(lambda ok: str(lamports_to_sol(ok, config.round_ndigits))).value_or_error()
260
260
 
261
261
 
262
262
  async def _get_token_balance_str(address: str, config: Config) -> str:
263
263
  if not config.token:
264
264
  raise ValueError("token is not set")
265
265
  res = await mm_sol.retry.get_token_balance(5, config.nodes, config.proxies, owner=address, token=config.token)
266
- return res.map(lambda ok: str(to_token(ok, config.token_decimals, ndigits=config.round_ndigits))).ok_or_error()
266
+ return res.map(lambda ok: str(to_token(ok, config.token_decimals, ndigits=config.round_ndigits))).value_or_error()
@@ -23,17 +23,17 @@ async def rpc_call(
23
23
  async def _http_call(node: str, data: dict[str, object], timeout: float, proxy: str | None) -> Result[Any]:
24
24
  res = await http_request(node, method="POST", proxy=proxy, timeout=timeout, json=data)
25
25
  if res.is_err():
26
- return res.to_err_result()
26
+ return res.to_err()
27
27
  try:
28
28
  parsed_body = res.parse_json_body()
29
29
  err = parsed_body.get("error", {}).get("message", "")
30
30
  if err:
31
- return res.to_err_result(f"service_error: {err}")
31
+ return res.to_err(f"service_error: {err}")
32
32
  if "result" in parsed_body:
33
- return res.to_ok_result(parsed_body["result"])
34
- return res.to_err_result("unknown_response")
33
+ return res.to_ok(parsed_body["result"])
34
+ return res.to_err("unknown_response")
35
35
  except Exception as e:
36
- return res.to_err_result(e)
36
+ return res.to_err(e)
37
37
 
38
38
 
39
39
  async def _ws_call(node: str, data: dict[str, object], timeout: float) -> Result[Any]:
@@ -92,18 +92,18 @@ def _http_call(node: str, data: dict[str, object], timeout: float, proxy: str |
92
92
  res = http_request_sync(node, method="POST", proxy=proxy, timeout=timeout, json=data)
93
93
  try:
94
94
  if res.is_err():
95
- return res.to_err_result()
95
+ return res.to_err()
96
96
 
97
97
  json_body = res.parse_json_body()
98
98
  err = pydash.get(json_body, "error.message")
99
99
  if err:
100
- return res.to_err_result(f"service_error: {err}")
100
+ return res.to_err(f"service_error: {err}")
101
101
  if "result" in json_body:
102
- return res.to_ok_result(json_body["result"])
102
+ return res.to_ok(json_body["result"])
103
103
 
104
- return res.to_err_result("unknown_response")
104
+ return res.to_err("unknown_response")
105
105
  except Exception as e:
106
- return res.to_err_result(e)
106
+ return res.to_err(e)
107
107
 
108
108
 
109
109
  def get_balance(node: str, address: str, timeout: float = 10, proxy: str | None = None) -> Result[int]: