Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion multiversx_sdk_cli/args_validation.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
def validate_transaction_args(args: Any):
validate_nonce_args(args)
validate_receiver_args(args)
validate_gas_limit_args(args)


def validate_nonce_args(args: Any):
Expand Down
15 changes: 9 additions & 6 deletions multiversx_sdk_cli/cli_contracts.py
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,8 @@ def deploy(args: Any):
config = TransactionsFactoryConfig(chain_id)

abi = Abi.load(Path(args.abi)) if args.abi else None
contract = SmartContract(config, abi)
gas_estimator = cli_shared.initialize_gas_limit_estimator(args)
contract = SmartContract(config, abi, gas_estimator)

arguments, should_prepare_args = _get_contract_arguments(args)

Expand All @@ -345,7 +346,7 @@ def deploy(args: Any):
readable=args.metadata_readable,
payable=args.metadata_payable,
payable_by_sc=args.metadata_payable_by_sc,
gas_limit=int(args.gas_limit),
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down Expand Up @@ -382,7 +383,8 @@ def call(args: Any):
config = TransactionsFactoryConfig(chain_id)

abi = Abi.load(Path(args.abi)) if args.abi else None
contract = SmartContract(config, abi)
gas_estimator = cli_shared.initialize_gas_limit_estimator(args)
contract = SmartContract(config, abi, gas_estimator)

arguments, should_prepare_args = _get_contract_arguments(args)
contract_address = Address.new_from_bech32(args.contract)
Expand All @@ -397,7 +399,7 @@ def call(args: Any):
function=args.function,
arguments=arguments,
should_prepare_args=should_prepare_args,
gas_limit=int(args.gas_limit),
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
token_transfers=token_transfers,
Expand Down Expand Up @@ -427,7 +429,8 @@ def upgrade(args: Any):
config = TransactionsFactoryConfig(chain_id)

abi = Abi.load(Path(args.abi)) if args.abi else None
contract = SmartContract(config, abi)
gas_estimator = cli_shared.initialize_gas_limit_estimator(args)
contract = SmartContract(config, abi, gas_estimator)

arguments, should_prepare_args = _get_contract_arguments(args)
contract_address = Address.new_from_bech32(args.contract)
Expand All @@ -442,7 +445,7 @@ def upgrade(args: Any):
readable=args.metadata_readable,
payable=args.metadata_payable,
payable_by_sc=args.metadata_payable_by_sc,
gas_limit=int(args.gas_limit),
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down
74 changes: 22 additions & 52 deletions multiversx_sdk_cli/cli_delegation.py
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,8 @@ def validate_arguments(args: Any):
def _get_delegation_controller(args: Any):
chain_id = cli_shared.get_chain_id(args.proxy, args.chain)
config = TransactionsFactoryConfig(chain_id)
delegation = DelegationOperations(config)
gas_estimator = cli_shared.initialize_gas_limit_estimator(args)
delegation = DelegationOperations(config=config, gas_limit_estimator=gas_estimator)
return delegation


Expand All @@ -408,15 +409,14 @@ def do_create_delegation_contract(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
delegation = _get_delegation_controller(args)

tx = delegation.prepare_transaction_for_new_delegation_contract(
owner=sender,
native_amount=int(args.value),
total_delegation_cap=int(args.total_delegation_cap),
service_fee=int(args.service_fee),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
nonce=sender.nonce,
version=int(args.version),
Expand Down Expand Up @@ -453,7 +453,6 @@ def add_new_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys, signed_messages = _get_public_keys_and_signed_messages(args)

delegation = _get_delegation_controller(args)
Expand All @@ -462,7 +461,7 @@ def add_new_nodes(args: Any):
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
signed_messages=signed_messages,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down Expand Up @@ -502,15 +501,14 @@ def remove_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys = _load_validators_public_keys(args)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_removing_nodes(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down Expand Up @@ -551,15 +549,14 @@ def stake_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys = _load_validators_public_keys(args)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_staking_nodes(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down Expand Up @@ -589,15 +586,14 @@ def unbond_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys = _load_validators_public_keys(args)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_unbonding_nodes(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -619,15 +615,14 @@ def unstake_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys = _load_validators_public_keys(args)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_unstaking_nodes(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -649,15 +644,14 @@ def unjail_nodes(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
public_keys = _load_validators_public_keys(args)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_unjailing_nodes(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
public_keys=public_keys,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -678,16 +672,13 @@ def delegate(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
value = int(args.value)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_delegating(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=value,
value=int(args.value),
nonce=sender.nonce,
version=int(args.version),
options=int(args.options),
Expand All @@ -706,13 +697,11 @@ def claim_rewards(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_claiming_rewards(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -732,13 +721,11 @@ def redelegate_rewards(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_redelegating_rewards(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -758,16 +745,13 @@ def undelegate(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0
value = int(args.value)

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_undelegating(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=value,
value=int(args.value),
nonce=sender.nonce,
version=int(args.version),
options=int(args.options),
Expand All @@ -786,13 +770,11 @@ def withdraw(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_withdrawing(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -813,14 +795,12 @@ def change_service_fee(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_changing_service_fee(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
service_fee=int(args.service_fee),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -841,14 +821,12 @@ def modify_delegation_cap(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_modifying_delegation_cap(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
delegation_cap=int(args.delegation_cap),
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -869,15 +847,13 @@ def automatic_activation(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_automatic_activation(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
set=args.set,
unset=args.unset,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -898,15 +874,13 @@ def redelegate_cap(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_redelegate_cap(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
set=args.set,
unset=args.unset,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -927,16 +901,14 @@ def set_metadata(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_setting_metadata(
owner=sender,
delegation_contract=Address.new_from_bech32(args.delegation_contract),
name=args.name,
website=args.website,
identifier=args.identifier,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand All @@ -957,14 +929,12 @@ def make_new_contract_from_validator_data(args: Any):
args=args,
)

gas_limit = args.gas_limit if args.gas_limit else 0

delegation = _get_delegation_controller(args)
tx = delegation.prepare_transaction_for_creating_delegation_contract_from_validator(
owner=sender,
max_cap=args.max_cap,
service_fee=args.fee,
gas_limit=gas_limit,
gas_limit=args.gas_limit,
gas_price=int(args.gas_price),
value=int(args.value),
nonce=sender.nonce,
Expand Down
Loading
Loading