Sitelet https://github.com/SharkHand3/examples/commit/e4c5a4fb88faf7fd96f8132471a6c2ace420fc54
Skip to content

Commit e4c5a4f

Browse files
feat(transactions): bump Alloy + simplify transfer_eth example (alloy-rs#98)
* simplify setup, match transaction-lifecycle highlight page * fix broken examples * Update examples/transactions/examples/transfer_eth.rs Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com> * send -> sent, past tense --------- Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
1 parent e070b08 commit e4c5a4f

32 files changed

Lines changed: 82 additions & 80 deletions

‎Cargo.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ type_repetition_in_bounds = "allow"
8181
unnecessary_struct_initialization = "allow"
8282

8383
[workspace.dependencies]
84-
alloy = { git = "https://github.com/alloy-rs/alloy", rev = "f6ebef2", features = [
84+
alloy = { git = "https://github.com/alloy-rs/alloy", rev = "14ed25d", features = [
8585
"consensus",
8686
"contract",
8787
"k256",

‎examples/anvil/examples/deploy_contract_anvil.rs‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ use eyre::Result;
99
// Codegen from embedded Solidity code and precompiled bytecode.
1010
sol! {
1111
#[allow(missing_docs)]
12-
// solc v0.8.24; solc a.sol --via-ir --optimize --bin
13-
#[sol(rpc, bytecode="608080604052346100155760d2908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c9081633fb5c1cb1460865781638381f58a14606f575063d09de08a146039575f80fd5b34606b575f366003190112606b575f545f1981146057576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b34606b575f366003190112606b576020905f548152f35b34606b576020366003190112606b576004355f5500fea2646970667358221220bdecd3c1dd631eb40587cafcd6e8297479db76db6a328e18ad1ea5b340852e3864736f6c63430008180033")]
12+
// solc v0.8.26; solc a.sol --via-ir --optimize --bin
13+
#[sol(rpc, bytecode="6080806040523460135760df908160198239f35b600080fdfe6080806040526004361015601257600080fd5b60003560e01c9081633fb5c1cb1460925781638381f58a146079575063d09de08a14603c57600080fd5b3460745760003660031901126074576000546000198114605e57600101600055005b634e487b7160e01b600052601160045260246000fd5b600080fd5b3460745760003660031901126074576020906000548152f35b34607457602036600319011260745760043560005500fea2646970667358221220e978270883b7baed10810c4079c941512e93a7ba1cd1108c781d4bc738d9090564736f6c634300081a0033")]
1414
contract Counter {
1515
uint256 public number;
1616

@@ -60,9 +60,10 @@ async fn main() -> Result<()> {
6060
println!("Incremented number: {}", tx_hash);
6161

6262
// Retrieve the number, which should be 43.
63-
let Counter::numberReturn { _0 } = contract.number().call().await?;
63+
let builder = contract.number();
64+
let number = builder.call().await?.number.to_string();
6465

65-
println!("Retrieved number: {_0}");
66+
println!("Retrieved number: {number}");
6667

6768
Ok(())
6869
}

‎examples/contracts/examples/artifacts/Counter.json‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,24 +35,24 @@
3535
}
3636
],
3737
"bytecode": {
38-
"object": "0x608060405234801561001057600080fd5b5060f78061001f6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80633fb5c1cb1460415780638381f58a146053578063d09de08a14606d575b600080fd5b6051604c3660046083565b600055565b005b605b60005481565b60405190815260200160405180910390f35b6051600080549080607c83609b565b9190505550565b600060208284031215609457600080fd5b5035919050565b60006001820160ba57634e487b7160e01b600052601160045260246000fd5b506001019056fea2646970667358221220f90c910068fe53f64c8ae6b87a01287f43bbafbff9a3bceded7c441b71ceb3c364736f6c63430008180033",
39-
"sourceMap": "65:192:22:-:0;;;;;;;;;;;;;;;;;;;",
38+
"object": "0x6080806040523460135760df908160198239f35b600080fdfe6080806040526004361015601257600080fd5b60003560e01c9081633fb5c1cb1460925781638381f58a146079575063d09de08a14603c57600080fd5b3460745760003660031901126074576000546000198114605e57600101600055005b634e487b7160e01b600052601160045260246000fd5b600080fd5b3460745760003660031901126074576020906000548152f35b34607457602036600319011260745760043560005500fea2646970667358221220e978270883b7baed10810c4079c941512e93a7ba1cd1108c781d4bc738d9090564736f6c634300081a0033",
39+
"sourceMap": "65:192:25:-:0;;;;;;;;;;;;;;;;;",
4040
"linkReferences": {}
4141
},
4242
"deployedBytecode": {
43-
"object": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80633fb5c1cb1460415780638381f58a146053578063d09de08a14606d575b600080fd5b6051604c3660046083565b600055565b005b605b60005481565b60405190815260200160405180910390f35b6051600080549080607c83609b565b9190505550565b600060208284031215609457600080fd5b5035919050565b60006001820160ba57634e487b7160e01b600052601160045260246000fd5b506001019056fea2646970667358221220f90c910068fe53f64c8ae6b87a01287f43bbafbff9a3bceded7c441b71ceb3c364736f6c63430008180033",
44-
"sourceMap": "65:192:22:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;116:80;;;;;;:::i;:::-;171:6;:18;116:80;;;88:21;;;;;;;;;345:25:24;;;333:2;318:18;88:21:22;;;;;;;202:53;;240:6;:8;;;:6;:8;;;:::i;:::-;;;;;;202:53::o;14:180:24:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:24;;14:180;-1:-1:-1;14:180:24:o;381:232::-;420:3;441:17;;;438:140;;500:10;495:3;491:20;488:1;481:31;535:4;532:1;525:15;563:4;560:1;553:15;438:140;-1:-1:-1;605:1:24;594:13;;381:232::o",
43+
"object": "0x6080806040526004361015601257600080fd5b60003560e01c9081633fb5c1cb1460925781638381f58a146079575063d09de08a14603c57600080fd5b3460745760003660031901126074576000546000198114605e57600101600055005b634e487b7160e01b600052601160045260246000fd5b600080fd5b3460745760003660031901126074576020906000548152f35b34607457602036600319011260745760043560005500fea2646970667358221220e978270883b7baed10810c4079c941512e93a7ba1cd1108c781d4bc738d9090564736f6c634300081a0033",
44+
"sourceMap": "65:192:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;65:192:25;;;;;;-1:-1:-1;;65:192:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;65:192:25;;;;;;;;;;;;;;;;;-1:-1:-1;;65:192:25;;;;;;;;",
4545
"linkReferences": {}
4646
},
4747
"methodIdentifiers": {
4848
"increment()": "d09de08a",
4949
"number()": "8381f58a",
5050
"setNumber(uint256)": "3fb5c1cb"
5151
},
52-
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"increment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"number\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newNumber\",\"type\":\"uint256\"}],\"name\":\"setNumber\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Counter.sol\":\"Counter\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/Counter.sol\":{\"keccak256\":\"0x09277f949d59a9521708c870dc39c2c434ad8f86a5472efda6a732ef728c0053\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://94cd5258357da018bf911aeda60ed9f5b130dce27445669ee200313cd3389200\",\"dweb:/ipfs/QmNbEfWAqXCtfQpk6u7TpGa8sTHXFLpUz7uebz2FVbchSC\"]}},\"version\":1}",
52+
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"increment\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"number\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newNumber\",\"type\":\"uint256\"}],\"name\":\"setNumber\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Counter.sol\":\"Counter\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":forge-std/=lib/forge-std/src/\"],\"viaIR\":true},\"sources\":{\"src/Counter.sol\":{\"keccak256\":\"0x09277f949d59a9521708c870dc39c2c434ad8f86a5472efda6a732ef728c0053\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://94cd5258357da018bf911aeda60ed9f5b130dce27445669ee200313cd3389200\",\"dweb:/ipfs/QmNbEfWAqXCtfQpk6u7TpGa8sTHXFLpUz7uebz2FVbchSC\"]}},\"version\":1}",
5353
"metadata": {
5454
"compiler": {
55-
"version": "0.8.24+commit.e11b9ed9"
55+
"version": "0.8.26+commit.8a97fa7a"
5656
},
5757
"language": "Solidity",
5858
"output": {
@@ -102,7 +102,6 @@
102102
},
103103
"settings": {
104104
"remappings": [
105-
"ds-test/=lib/forge-std/lib/ds-test/src/",
106105
"forge-std/=lib/forge-std/src/"
107106
],
108107
"optimizer": {
@@ -116,7 +115,8 @@
116115
"src/Counter.sol": "Counter"
117116
},
118117
"evmVersion": "paris",
119-
"libraries": {}
118+
"libraries": {},
119+
"viaIR": true
120120
},
121121
"sources": {
122122
"src/Counter.sol": {
@@ -130,5 +130,5 @@
130130
},
131131
"version": 1
132132
},
133-
"id": 22
133+
"id": 25
134134
}

‎examples/contracts/examples/deploy_from_artifact.rs‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,10 @@ async fn main() -> Result<()> {
5050
println!("Incremented number: {}", tx_hash);
5151

5252
// Retrieve the number, which should be 43.
53-
let Counter::numberReturn { _0 } = contract.number().call().await?;
53+
let builder = contract.number();
54+
let number = builder.call().await?._0;
5455

55-
println!("Retrieved number: {_0}");
56+
println!("Retrieved number: {number}");
5657

5758
Ok(())
5859
}

‎examples/contracts/examples/deploy_from_bytecode.rs‎

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use alloy::{
77
node_bindings::Anvil,
88
primitives::U256,
99
providers::{Provider, ProviderBuilder},
10-
rpc::types::eth::TransactionRequest,
10+
rpc::types::TransactionRequest,
1111
signers::wallet::LocalWallet,
1212
sol,
1313
};
@@ -51,8 +51,8 @@ async fn main() -> Result<()> {
5151
.on_http(rpc_url);
5252

5353
// We deploy the contract at run time from bytecode
54-
// solc v0.8.24; solc a.sol --via-ir --optimize --bin
55-
let contract_bytecode = "608080604052346100155760d2908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c9081633fb5c1cb1460865781638381f58a14606f575063d09de08a146039575f80fd5b34606b575f366003190112606b575f545f1981146057576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b34606b575f366003190112606b576020905f548152f35b34606b576020366003190112606b576004355f5500fea2646970667358221220bdecd3c1dd631eb40587cafcd6e8297479db76db6a328e18ad1ea5b340852e3864736f6c63430008180033";
54+
// solc v0.8.26; solc a.sol --via-ir --optimize --bin
55+
let contract_bytecode = "6080806040523460135760df908160198239f35b600080fdfe6080806040526004361015601257600080fd5b60003560e01c9081633fb5c1cb1460925781638381f58a146079575063d09de08a14603c57600080fd5b3460745760003660031901126074576000546000198114605e57600101600055005b634e487b7160e01b600052601160045260246000fd5b600080fd5b3460745760003660031901126074576020906000548152f35b34607457602036600319011260745760043560005500fea2646970667358221220e978270883b7baed10810c4079c941512e93a7ba1cd1108c781d4bc738d9090564736f6c634300081a0033";
5656
let data: Vec<u8> = FromHex::from_hex(contract_bytecode)?;
5757
let tx = TransactionRequest::default().with_deploy_code(data);
5858

@@ -76,9 +76,10 @@ async fn main() -> Result<()> {
7676
println!("Incremented number: {}", tx_hash);
7777

7878
// Retrieve the number, which should be 43.
79-
let Counter::numberReturn { _0 } = contract.number().call().await?;
79+
let builder = contract.number();
80+
let number = builder.call().await?.number.to_string();
8081

81-
println!("Retrieved number: {_0}");
82+
println!("Retrieved number: {number}");
8283

8384
Ok(())
8485
}

‎examples/contracts/examples/deploy_from_contract.rs‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ use eyre::Result;
1010
// Codegen from embedded Solidity code and precompiled bytecode.
1111
sol! {
1212
#[allow(missing_docs)]
13-
// solc v0.8.24; solc a.sol --via-ir --optimize --bin
14-
#[sol(rpc, bytecode="608080604052346100155760d2908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c9081633fb5c1cb1460865781638381f58a14606f575063d09de08a146039575f80fd5b34606b575f366003190112606b575f545f1981146057576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b34606b575f366003190112606b576020905f548152f35b34606b576020366003190112606b576004355f5500fea2646970667358221220bdecd3c1dd631eb40587cafcd6e8297479db76db6a328e18ad1ea5b340852e3864736f6c63430008180033")]
13+
// solc v0.8.26; solc a.sol --via-ir --optimize --bin
14+
#[sol(rpc, bytecode="6080806040523460135760df908160198239f35b600080fdfe6080806040526004361015601257600080fd5b60003560e01c9081633fb5c1cb1460925781638381f58a146079575063d09de08a14603c57600080fd5b3460745760003660031901126074576000546000198114605e57600101600055005b634e487b7160e01b600052601160045260246000fd5b600080fd5b3460745760003660031901126074576020906000548152f35b34607457602036600319011260745760043560005500fea2646970667358221220e978270883b7baed10810c4079c941512e93a7ba1cd1108c781d4bc738d9090564736f6c634300081a0033")]
1515
contract Counter {
1616
uint256 public number;
1717

@@ -62,9 +62,10 @@ async fn main() -> Result<()> {
6262
println!("Incremented number: {}", tx_hash);
6363

6464
// Retrieve the number, which should be 43.
65-
let Counter::numberReturn { _0 } = contract.number().call().await?;
65+
let builder = contract.number();
66+
let number = builder.call().await?.number.to_string();
6667

67-
println!("Retrieved number: {_0}");
68+
println!("Retrieved number: {number}");
6869

6970
Ok(())
7071
}

‎examples/fillers/examples/gas_filler.rs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use alloy::{
55
node_bindings::Anvil,
66
primitives::{address, U256},
77
providers::{Provider, ProviderBuilder},
8-
rpc::types::eth::request::TransactionRequest,
8+
rpc::types::request::TransactionRequest,
99
signers::wallet::LocalWallet,
1010
};
1111
use eyre::Result;

‎examples/fillers/examples/nonce_filler.rs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use alloy::{
55
node_bindings::Anvil,
66
primitives::{address, U256},
77
providers::{Provider, ProviderBuilder},
8-
rpc::types::eth::request::TransactionRequest,
8+
rpc::types::request::TransactionRequest,
99
signers::wallet::LocalWallet,
1010
};
1111
use eyre::Result;

‎examples/fillers/examples/recommended_fillers.rs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use alloy::{
55
node_bindings::Anvil,
66
primitives::{address, U256},
77
providers::{Provider, ProviderBuilder},
8-
rpc::types::eth::request::TransactionRequest,
8+
rpc::types::request::TransactionRequest,
99
signers::wallet::LocalWallet,
1010
};
1111
use eyre::Result;

‎examples/fillers/examples/signer_filler.rs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use alloy::{
55
node_bindings::Anvil,
66
primitives::{address, b256, U256},
77
providers::{Provider, ProviderBuilder},
8-
rpc::types::eth::request::TransactionRequest,
8+
rpc::types::request::TransactionRequest,
99
signers::wallet::LocalWallet,
1010
};
1111
use eyre::Result;

0 commit comments

Comments
 (0)