multiversx-sdk-cli 12.0.0__tar.gz → 12.0.1__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 (82) hide show
  1. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/PKG-INFO +2 -2
  2. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/node_config_toml.py +38 -2
  3. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_config.py +1 -1
  4. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/pyproject.toml +1 -1
  5. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/.gitignore +0 -0
  6. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/LICENSE +0 -0
  7. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/README.md +0 -0
  8. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/__init__.py +0 -0
  9. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/args_converter.py +0 -0
  10. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/args_validation.py +0 -0
  11. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli.py +0 -0
  12. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_config.py +0 -0
  13. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_config_env.py +0 -0
  14. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_config_wallet.py +0 -0
  15. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_contracts.py +0 -0
  16. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_data.py +0 -0
  17. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_delegation.py +0 -0
  18. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_deps.py +0 -0
  19. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_dns.py +0 -0
  20. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_faucet.py +0 -0
  21. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_get.py +0 -0
  22. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_governance.py +0 -0
  23. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_ledger.py +0 -0
  24. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_localnet.py +0 -0
  25. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_multisig.py +0 -0
  26. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_output.py +0 -0
  27. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_password.py +0 -0
  28. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_shared.py +0 -0
  29. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_tokens.py +0 -0
  30. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_transactions.py +0 -0
  31. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_validator_wallet.py +0 -0
  32. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_validators.py +0 -0
  33. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cli_wallet.py +0 -0
  34. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/config.py +0 -0
  35. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/config_env.py +0 -0
  36. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/config_wallet.py +0 -0
  37. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/constants.py +0 -0
  38. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/contract_verification.py +0 -0
  39. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/cosign_transaction.py +0 -0
  40. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/dependencies/__init__.py +0 -0
  41. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/dependencies/install.py +0 -0
  42. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/dependencies/modules.py +0 -0
  43. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/dependencies/resolution.py +0 -0
  44. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/dns.py +0 -0
  45. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/docker.py +0 -0
  46. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/downloader.py +0 -0
  47. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/errors.py +0 -0
  48. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/guardian_relayer_data.py +0 -0
  49. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/guards.py +0 -0
  50. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/interfaces.py +0 -0
  51. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/__init__.py +0 -0
  52. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_default.py +0 -0
  53. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_general.py +0 -0
  54. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_networking.py +0 -0
  55. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_part.py +0 -0
  56. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_root.py +0 -0
  57. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_sharding.py +0 -0
  58. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/config_software.py +0 -0
  59. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/constants.py +0 -0
  60. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/genesis.py +0 -0
  61. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/genesis_json.py +0 -0
  62. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/genesis_smart_contracts_json.py +0 -0
  63. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/libraries.py +0 -0
  64. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/node.py +0 -0
  65. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/nodes_setup_json.py +0 -0
  66. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/p2p_toml.py +0 -0
  67. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/seednode_p2pKey.pem +0 -0
  68. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_build_software.py +0 -0
  69. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_clean.py +0 -0
  70. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_new.py +0 -0
  71. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_prerequisites.py +0 -0
  72. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/step_start.py +0 -0
  73. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/localnet/wallets.py +0 -0
  74. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/myprocess.py +0 -0
  75. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/sign_verify.py +0 -0
  76. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/signing_wrapper.py +0 -0
  77. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/simulation.py +0 -0
  78. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/transactions.py +0 -0
  79. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/utils.py +0 -0
  80. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/ux.py +0 -0
  81. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/version.py +0 -0
  82. {multiversx_sdk_cli-12.0.0 → multiversx_sdk_cli-12.0.1}/multiversx_sdk_cli/workstation.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: multiversx-sdk-cli
3
- Version: 12.0.0
3
+ Version: 12.0.1
4
4
  Summary: MultiversX Smart Contracts Tools
5
5
  Project-URL: Homepage, https://github.com/multiversx/mx-sdk-py-cli
6
6
  Author: MultiversX
@@ -1,4 +1,4 @@
1
- from typing import Any, Dict
1
+ from typing import Any, Dict, Optional
2
2
 
3
3
  from multiversx_sdk_cli.localnet.config_root import ConfigRoot
4
4
  from multiversx_sdk_cli.localnet.constants import (
@@ -10,7 +10,16 @@ from multiversx_sdk_cli.localnet.nodes_setup_json import CHAIN_ID
10
10
  ConfigDict = Dict[str, Any]
11
11
 
12
12
 
13
- def patch_config(data: ConfigDict, config: ConfigRoot, enable_epochs_config: ConfigDict):
13
+ def patch_config(
14
+ data: ConfigDict,
15
+ config: ConfigRoot,
16
+ enable_epochs_config: ConfigDict,
17
+ enable_rounds_config: ConfigDict,
18
+ ):
19
+ """
20
+ Note: "enable_rounds_config" must be the original (not yet patched) "enableRounds.toml",
21
+ so that we can detect the default (upstream) Supernova activation round.
22
+ """
14
23
  supernova_activation_epoch = enable_epochs_config["EnableEpochs"].get("SupernovaEnableEpoch", None)
15
24
 
16
25
  data["GeneralSettings"]["ChainID"] = CHAIN_ID
@@ -77,6 +86,26 @@ def patch_config(data: ConfigDict, config: ConfigRoot, enable_epochs_config: Con
77
86
  if enable_epoch == supernova_activation_epoch:
78
87
  item["StartRound"] = _compute_supernova_activation_round(config, supernova_activation_epoch)
79
88
 
89
+ # Adjust the "*ByRound" configs: entries defined (upstream) at the default Supernova activation round
90
+ # must be moved to the (localnet-specific) computed Supernova activation round.
91
+ # Otherwise, the node fails with "supernova activation configs mismatch".
92
+ default_supernova_activation_round = _get_supernova_activation_round(enable_rounds_config)
93
+
94
+ if supernova_activation_epoch is not None and default_supernova_activation_round is not None:
95
+ supernova_activation_round = _compute_supernova_activation_round(config, supernova_activation_epoch)
96
+
97
+ configs_by_round = [
98
+ (data["GeneralSettings"].get("ProcessConfigsByRound", []), "EnableRound"),
99
+ (data["GeneralSettings"].get("EpochStartConfigsByRound", []), "EnableRound"),
100
+ (data["GeneralSettings"].get("ConsensusConfigsByRound", []), "EnableRound"),
101
+ (data.get("Antiflood", {}).get("ConfigsByRound", []), "Round"),
102
+ ]
103
+
104
+ for items, round_key in configs_by_round:
105
+ for item in items:
106
+ if int(item.get(round_key, 0)) == default_supernova_activation_round:
107
+ item[round_key] = supernova_activation_round
108
+
80
109
 
81
110
  def patch_api(data: ConfigDict, config: ConfigRoot):
82
111
  routes = data["APIPackages"]["transaction"]["Routes"]
@@ -121,6 +150,13 @@ def patch_enable_rounds(data: ConfigDict, config: ConfigRoot, enable_epochs_conf
121
150
  supernova_entry["Round"] = str(supernova_computed_activation_round)
122
151
 
123
152
 
153
+ def _get_supernova_activation_round(enable_rounds_config: ConfigDict) -> Optional[int]:
154
+ supernova_entry = enable_rounds_config.get("RoundActivations", {}).get("SupernovaEnableRound")
155
+ if not supernova_entry:
156
+ return None
157
+ return int(supernova_entry["Round"])
158
+
159
+
124
160
  def _compute_supernova_activation_round(config: ConfigRoot, supernova_activation_epoch: int) -> int:
125
161
  # Epochs are zero-indexed.
126
162
  return (
@@ -112,7 +112,7 @@ def patch_node_config(config: ConfigRoot):
112
112
  enable_rounds_config_data = utils.read_toml_file(enable_rounds_config_file)
113
113
  genesis_smart_contracts_data = utils.read_json_file(genesis_smart_contracts_file)
114
114
 
115
- node_config_toml.patch_config(node_config_data, config, enable_epochs_config_data)
115
+ node_config_toml.patch_config(node_config_data, config, enable_epochs_config_data, enable_rounds_config_data)
116
116
  node_config_toml.patch_api(api_config_data, config)
117
117
  node_config_toml.patch_enable_epochs(enable_epochs_config_data, config)
118
118
  node_config_toml.patch_enable_rounds(enable_rounds_config_data, config, enable_epochs_config_data)
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "multiversx-sdk-cli"
7
- version = "12.0.0"
7
+ version = "12.0.1"
8
8
  authors = [
9
9
  { name="MultiversX" },
10
10
  ]