difftreelog
Merge remote-tracking branch 'origin/develop' into feature/CORE-164
in: master
5 files changed
Makefilediffbeforeafterboth--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,10 @@
-.PHONY: _eth_codegen
-_eth_codegen:
+.PHONY: _help
+_help:
+ @echo "regenerate_solidity - generate stubs/interfaces for contracts defined in native (via evm-coder)"
+ @echo "evm_stubs - recompile contract stubs"
+ @echo "bench - run frame-benchmarking"
+ @echo " bench-evm-migration"
+ @echo " bench-nft"
.PHONY: regenerate_solidity
regenerate_solidity:
pallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth--- a/pallets/evm-contract-helpers/src/eth.rs
+++ b/pallets/evm-contract-helpers/src/eth.rs
@@ -8,7 +8,7 @@
};
use frame_support::traits::Get;
use up_sponsorship::SponsorshipHandler;
-use sp_std::vec::Vec;
+use sp_std::{convert::TryInto, vec::Vec};
struct ContractHelpers<T: Config>(SubstrateRecorder<T>);
@@ -50,6 +50,13 @@
Ok(())
}
+ fn get_sponsoring_rate_limit(&self, contract_address: address) -> Result<uint32> {
+ self.0.consume_sload()?;
+ Ok(<SponsoringRateLimit<T>>::get(contract_address)
+ .try_into()
+ .map_err(|_| "rate limit > u32::MAX")?)
+ }
+
fn allowed(&self, contract_address: address, user: address) -> Result<bool> {
self.0.consume_sload()?;
Ok(<Pallet<T>>::allowed(contract_address, user, true))
pallets/evm-contract-helpers/src/stubs/ContractHelpers.rawdiffbeforeafterbothbinary blob — no preview
pallets/evm-contract-helpers/src/stubs/ContractHelpers.soldiffbeforeafterboth1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56// Common stubs holder7contract Dummy {8 uint8 dummy;9 string stub_error = "this contract is implemented in native";10}1112contract ContractHelpers is Dummy {13 // Selector: contractOwner(address) 5152b14c14 function contractOwner(address contractAddress)15 public16 view17 returns (address)18 {19 require(false, stub_error);20 contractAddress;21 dummy;22 return 0x0000000000000000000000000000000000000000;23 }2425 // Selector: sponsoringEnabled(address) 6027dc6126 function sponsoringEnabled(address contractAddress)27 public28 view29 returns (bool)30 {31 require(false, stub_error);32 contractAddress;33 dummy;34 return false;35 }3637 // Selector: toggleSponsoring(address,bool) fcac6d8638 function toggleSponsoring(address contractAddress, bool enabled) public {39 require(false, stub_error);40 contractAddress;41 enabled;42 dummy = 0;43 }4445 // Selector: setSponsoringRateLimit(address,uint32) 77b6c90846 function setSponsoringRateLimit(address contractAddress, uint32 rateLimit)47 public48 {49 require(false, stub_error);50 contractAddress;51 rateLimit;52 dummy = 0;53 }5455 // Selector: allowed(address,address) 5c65816556 function allowed(address contractAddress, address user)57 public58 view59 returns (bool)60 {61 require(false, stub_error);62 contractAddress;63 user;64 dummy;65 return false;66 }6768 // Selector: allowlistEnabled(address) c772ef6c69 function allowlistEnabled(address contractAddress)70 public71 view72 returns (bool)73 {74 require(false, stub_error);75 contractAddress;76 dummy;77 return false;78 }7980 // Selector: toggleAllowlist(address,bool) 36de20f581 function toggleAllowlist(address contractAddress, bool enabled) public {82 require(false, stub_error);83 contractAddress;84 enabled;85 dummy = 0;86 }8788 // Selector: toggleAllowed(address,address,bool) 4706cc1c89 function toggleAllowed(90 address contractAddress,91 address user,92 bool allowed93 ) public {94 require(false, stub_error);95 contractAddress;96 user;97 allowed;98 dummy = 0;99 }100}1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56// Common stubs holder7contract Dummy {8 uint8 dummy;9 string stub_error = "this contract is implemented in native";10}1112contract ContractHelpers is Dummy {13 // Selector: contractOwner(address) 5152b14c14 function contractOwner(address contractAddress)15 public16 view17 returns (address)18 {19 require(false, stub_error);20 contractAddress;21 dummy;22 return 0x0000000000000000000000000000000000000000;23 }2425 // Selector: sponsoringEnabled(address) 6027dc6126 function sponsoringEnabled(address contractAddress)27 public28 view29 returns (bool)30 {31 require(false, stub_error);32 contractAddress;33 dummy;34 return false;35 }3637 // Selector: toggleSponsoring(address,bool) fcac6d8638 function toggleSponsoring(address contractAddress, bool enabled) public {39 require(false, stub_error);40 contractAddress;41 enabled;42 dummy = 0;43 }4445 // Selector: setSponsoringRateLimit(address,uint32) 77b6c90846 function setSponsoringRateLimit(address contractAddress, uint32 rateLimit)47 public48 {49 require(false, stub_error);50 contractAddress;51 rateLimit;52 dummy = 0;53 }5455 // Selector: getSponsoringRateLimit(address) 610cfabd56 function getSponsoringRateLimit(address contractAddress)57 public58 view59 returns (uint32)60 {61 require(false, stub_error);62 contractAddress;63 dummy;64 return 0;65 }6667 // Selector: allowed(address,address) 5c65816568 function allowed(address contractAddress, address user)69 public70 view71 returns (bool)72 {73 require(false, stub_error);74 contractAddress;75 user;76 dummy;77 return false;78 }7980 // Selector: allowlistEnabled(address) c772ef6c81 function allowlistEnabled(address contractAddress)82 public83 view84 returns (bool)85 {86 require(false, stub_error);87 contractAddress;88 dummy;89 return false;90 }9192 // Selector: toggleAllowlist(address,bool) 36de20f593 function toggleAllowlist(address contractAddress, bool enabled) public {94 require(false, stub_error);95 contractAddress;96 enabled;97 dummy = 0;98 }99100 // Selector: toggleAllowed(address,address,bool) 4706cc1c101 function toggleAllowed(102 address contractAddress,103 address user,104 bool allowed105 ) public {106 require(false, stub_error);107 contractAddress;108 user;109 allowed;110 dummy = 0;111 }112}tests/src/eth/api/ContractHelpers.soldiffbeforeafterboth--- a/tests/src/eth/api/ContractHelpers.sol
+++ b/tests/src/eth/api/ContractHelpers.sol
@@ -28,6 +28,12 @@
function setSponsoringRateLimit(address contractAddress, uint32 rateLimit)
external;
+ // Selector: getSponsoringRateLimit(address) 610cfabd
+ function getSponsoringRateLimit(address contractAddress)
+ external
+ view
+ returns (uint32);
+
// Selector: allowed(address,address) 5c658165
function allowed(address contractAddress, address user)
external