tusdt-cli 0.2.2__tar.gz → 0.2.4__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.
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/PKG-INFO +1 -1
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/pyproject.toml +1 -1
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/__init__.py +1 -1
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/client.py +26 -64
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/.gitignore +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/LICENSE +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/README.md +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/requirements.txt +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_auction.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_erc20.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_governance.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_oracle.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_treasury.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/abi/tusdt_vault.json +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/cli.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/__init__.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/auction.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/governance.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/oracle.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/token.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/treasury.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/commands/vault.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/config.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/utils.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/src/tusdt_cli/wallet.py +0 -0
- {tusdt_cli-0.2.2 → tusdt_cli-0.2.4}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tusdt-cli
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: CLI for interacting with the TUSDT ink! smart contract system on subtensor(bittensor)
|
|
5
5
|
Project-URL: Homepage, https://github.com/tensorusd/tusdt-cli
|
|
6
6
|
Project-URL: Repository, https://github.com/tensorusd/tusdt-cli
|
|
@@ -11,8 +11,6 @@ from substrateinterface import Keypair, SubstrateInterface
|
|
|
11
11
|
from substrateinterface.contracts import ContractInstance, ContractMetadata
|
|
12
12
|
from substrateinterface.exceptions import ContractReadFailedException
|
|
13
13
|
|
|
14
|
-
from substrateinterface.contracts import ContractMetadata as _ContractMetadata
|
|
15
|
-
|
|
16
14
|
from tusdt_cli.utils import (
|
|
17
15
|
ContractError,
|
|
18
16
|
console,
|
|
@@ -21,63 +19,27 @@ from tusdt_cli.utils import (
|
|
|
21
19
|
unwrap_result,
|
|
22
20
|
)
|
|
23
21
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
#
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
""
|
|
34
|
-
|
|
35
|
-
if "
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
if self.metadata_version is None or self.metadata_version > 5:
|
|
47
|
-
raise ValueError("Unsupported metadata version")
|
|
48
|
-
|
|
49
|
-
if 1 <= self.metadata_version <= 3:
|
|
50
|
-
version_key = f"V{self.metadata_version}"
|
|
51
|
-
self.metadata_dict["spec"] = self.metadata_dict[version_key]["spec"]
|
|
52
|
-
self.metadata_dict["storage"] = self.metadata_dict[version_key]["storage"]
|
|
53
|
-
self.metadata_dict["types"] = self.metadata_dict[version_key]["types"]
|
|
54
|
-
del self.metadata_dict[version_key]
|
|
55
|
-
|
|
56
|
-
# V1 -> V2: name -> label
|
|
57
|
-
if self.metadata_version <= 1:
|
|
58
|
-
def _replace_name(obj: dict) -> dict:
|
|
59
|
-
if "name" in obj:
|
|
60
|
-
obj["label"] = "::".join(obj.pop("name")) if isinstance(obj["name"], list) else obj.pop("name")
|
|
61
|
-
return obj
|
|
62
|
-
for section in ("constructors", "events", "messages"):
|
|
63
|
-
for idx, c in enumerate(self.metadata_dict["spec"][section]):
|
|
64
|
-
self.metadata_dict["spec"][section][idx]["args"] = [_replace_name(a) for a in c["args"]]
|
|
65
|
-
_replace_name(c)
|
|
66
|
-
|
|
67
|
-
# V2 -> V3: default payable=True for constructors
|
|
68
|
-
if self.metadata_version <= 2:
|
|
69
|
-
for idx, c in enumerate(self.metadata_dict["spec"]["constructors"]):
|
|
70
|
-
c["payable"] = True
|
|
71
|
-
|
|
72
|
-
# V4 -> V5: add module_path and signature_topic to events
|
|
73
|
-
if self.metadata_version <= 4:
|
|
74
|
-
for idx, event in enumerate(self.metadata_dict["spec"]["events"]):
|
|
75
|
-
event["module_path"] = event.get("module_path", "")
|
|
76
|
-
event["signature_topic"] = event.get("signature_topic", "")
|
|
77
|
-
|
|
78
|
-
# Set type offset and prefix
|
|
79
|
-
self._ContractMetadata__type_offset = 0
|
|
80
|
-
if "V0" in self.metadata_dict and tuple(int(x) for x in self.metadata_dict["metadataVersion"].split(".")) < (0, 7, 0):
|
|
22
|
+
_ContractMetadata__parse_metadata = ContractMetadata._ContractMetadata__parse_metadata
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def _patched_parse_metadata(self: ContractMetadata) -> None:
|
|
26
|
+
self._ContractMetadata__convert_to_latest_metadata()
|
|
27
|
+
|
|
28
|
+
# -- original checks (lines 140-154) --
|
|
29
|
+
if "types" not in self.metadata_dict:
|
|
30
|
+
raise ValueError("No 'types' directive present in metadata file")
|
|
31
|
+
if "spec" not in self.metadata_dict:
|
|
32
|
+
raise ValueError("'spec' directive not present in metadata file")
|
|
33
|
+
if "constructors" not in self.metadata_dict["spec"]:
|
|
34
|
+
raise ValueError("No constructors present in metadata file")
|
|
35
|
+
if "messages" not in self.metadata_dict["spec"]:
|
|
36
|
+
raise ValueError("No messages present in metadata file")
|
|
37
|
+
if "source" not in self.metadata_dict:
|
|
38
|
+
raise ValueError("'source' directive not present in metadata file")
|
|
39
|
+
|
|
40
|
+
if "V0" in self.metadata_dict and tuple(
|
|
41
|
+
int(x) for x in self.metadata_dict["metadataVersion"].split(".")
|
|
42
|
+
) < (0, 7, 0):
|
|
81
43
|
self._ContractMetadata__type_offset = 1
|
|
82
44
|
|
|
83
45
|
self.type_string_prefix = f"ink::{self.metadata_dict['source']['hash']}"
|
|
@@ -89,15 +51,15 @@ def _fixed_convert(self: _ContractMetadata) -> None:
|
|
|
89
51
|
self.type_registry[idx] = self.get_type_string_for_metadata_type(idx)
|
|
90
52
|
else:
|
|
91
53
|
self.substrate.init_runtime()
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
raw_types = portable_registry["types"]
|
|
54
|
+
pr = self.substrate.runtime_config.create_scale_object("PortableRegistry")
|
|
55
|
+
pr.encode({"types": self.metadata_dict["types"]})
|
|
56
|
+
raw_types = pr["types"]
|
|
96
57
|
if hasattr(raw_types, "value_object"):
|
|
97
58
|
raw_types = raw_types.value_object
|
|
98
59
|
self.substrate.runtime_config.update_from_scale_info_types(raw_types, prefix=self.type_string_prefix)
|
|
99
60
|
|
|
100
|
-
|
|
61
|
+
|
|
62
|
+
ContractMetadata._ContractMetadata__parse_metadata = _patched_parse_metadata
|
|
101
63
|
|
|
102
64
|
|
|
103
65
|
def _decode_dispatch_error(err: Any) -> str:
|
|
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
|
|
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
|