Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tx manager #61

Merged
merged 93 commits into from
Aug 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
a7c405f
initial BasicSigner implementation
TomasArrachea Jul 24, 2024
f895609
remove hex crate
TomasArrachea Jul 24, 2024
6045988
replace signer with signerV2 implementation
TomasArrachea Jul 24, 2024
ffa49e3
add test for keystore
TomasArrachea Jul 24, 2024
59a48a1
update comments and minor changes
TomasArrachea Jul 24, 2024
d86e4f9
move signer_from_config into enum
TomasArrachea Jul 24, 2024
2540943
lint
TomasArrachea Jul 24, 2024
473c20b
skeleton for tx manager crate
pablodeymo Jul 24, 2024
5e528ad
skeleton for SimpleTxManager
pablodeymo Jul 24, 2024
7aa0528
update cargo toml
TomasArrachea Jul 25, 2024
53fe05d
fix cargo toml
TomasArrachea Jul 25, 2024
8b00a56
update cargo toml
TomasArrachea Jul 25, 2024
7d1d0a7
update cargo toml
TomasArrachea Jul 25, 2024
b18e85e
update comments
TomasArrachea Jul 25, 2024
3deffbf
add aws signer getter function
ricomateo Jul 25, 2024
e3391bc
merge signer branch
ricomateo Jul 25, 2024
2618ac5
change aws_signer function so that it receives chain_id as argument
ricomateo Jul 25, 2024
17fd5d7
add error handling
ricomateo Jul 25, 2024
b4c2804
progress in SimpleTxManager
pablodeymo Jul 25, 2024
6c09f5b
change str literals for constants
ricomateo Jul 26, 2024
a96c7f4
merge signer branch
ricomateo Jul 26, 2024
63a9aaf
fix merge conflicts
ricomateo Jul 26, 2024
e045b56
organize Cargo.toml to avoid duplicates and unused dependencies
ricomateo Jul 26, 2024
5c0a1e2
add web3 signer
ricomateo Jul 26, 2024
191e384
add web3 signature test
ricomateo Jul 26, 2024
928deab
simple tx manager progress
pablodeymo Jul 26, 2024
f583ebb
add rlp decoding to rpc signer
TomasArrachea Jul 26, 2024
744b359
add localstack setup to test the AWS signer
ricomateo Jul 29, 2024
778d766
extract some of the code from the aws signer test to external functions
ricomateo Jul 29, 2024
4ee6124
remove commented line
ricomateo Jul 29, 2024
2c1c609
outline of tx manager copied from Go implementation
pablodeymo Jul 29, 2024
8d3f277
Merge branch 'main' into tx_manager
pablodeymo Jul 29, 2024
eb51c3b
add rpc test with anvil
TomasArrachea Jul 29, 2024
b377cb4
fix rpc response decoding
TomasArrachea Jul 29, 2024
7b411d6
update comments
TomasArrachea Jul 29, 2024
f2b909f
add TxSigner implementation for Web3Signer
TomasArrachea Jul 29, 2024
74dbf3c
fix EOF
TomasArrachea Jul 30, 2024
0272657
minor changes
TomasArrachea Jul 30, 2024
ba0c1d3
tx in parameter
pablodeymo Jul 30, 2024
0487d41
add requested changes
ricomateo Jul 30, 2024
2a76903
Merge branch 'web3-signer' into tx_manager
pablodeymo Jul 30, 2024
6d6dd1f
alloy-eips as a dev dependency
pablodeymo Jul 30, 2024
72bd732
skeleton for wait for receipt
pablodeymo Jul 30, 2024
1ca0f59
polish example to send transaction
pablodeymo Jul 31, 2024
9bcb285
tx sender example improved
pablodeymo Jul 31, 2024
0fdfa0f
wait_for_receipt function polished
pablodeymo Jul 31, 2024
451cc81
wait_for_receipt simplified
pablodeymo Jul 31, 2024
212d3f4
wait_for_receipt returning a TransactionReceipt element
pablodeymo Jul 31, 2024
19bbce2
send_legacy_tx first iteration
pablodeymo Jul 31, 2024
4018375
code cleanup
pablodeymo Jul 31, 2024
a575475
send_eip1559_tx
pablodeymo Jul 31, 2024
211bc61
method new in SimpleTxManager
pablodeymo Aug 1, 2024
4ad2b2f
Merge branch 'main' into tx_manager
pablodeymo Aug 1, 2024
42fcbc9
reordering crates in Cargo.toml
pablodeymo Aug 1, 2024
bd6b41b
test_send_signed_transaction simplified using implemented methods
pablodeymo Aug 1, 2024
81af8ef
Adding reference to logger
pablodeymo Aug 1, 2024
408f860
doc in new function
pablodeymo Aug 1, 2024
0b89538
doc links fixed and hello world removed
pablodeymo Aug 1, 2024
2887a0e
Removen obsolete comment
pablodeymo Aug 1, 2024
cb82ed8
add initial impl
juanbono Aug 5, 2024
8fa6cb7
fmt
juanbono Aug 5, 2024
405d2b8
remove unwrap
juanbono Aug 5, 2024
09ec76c
refactor
juanbono Aug 5, 2024
c5a95f4
changes to fee estimation to make it more rustacean
pablodeymo Aug 5, 2024
8fe701f
gas_price and gas_limit assigned
pablodeymo Aug 5, 2024
a4e5de2
debug message
pablodeymo Aug 5, 2024
23292f4
obsolete comment removed
pablodeymo Aug 5, 2024
36afaf2
multiply gas in all branches
juanbono Aug 5, 2024
f946f90
Merge branch 'main' into tx_manager
pablodeymo Aug 7, 2024
75d44b0
Cargo.toml reorganized
pablodeymo Aug 7, 2024
f31207a
dependencies sorted
pablodeymo Aug 7, 2024
abd0277
Fix warning in dependency used in test
pablodeymo Aug 7, 2024
dd4119d
add gas estimation to send_legacy_tx
juanbono Aug 7, 2024
2644e98
pull from tx_manager branch
juanbono Aug 7, 2024
de26ce6
fix long line
pablodeymo Aug 8, 2024
11e6c1a
doc in estimate_gas_and_nonce
pablodeymo Aug 8, 2024
a0d65af
obsolete comment removed
pablodeymo Aug 8, 2024
afa1228
another comment removed
pablodeymo Aug 8, 2024
fbc3029
comment removed
pablodeymo Aug 8, 2024
40299f2
Merge pull request #5 from lambdaclass/add_fee_calculation
pablodeymo Aug 8, 2024
9211579
Merge branch 'Layr-Labs:main' into tx_manager
pablodeymo Aug 8, 2024
17f5cdb
alphabetical order in Cargo.toml
pablodeymo Aug 8, 2024
55ba173
Adding test for TxEip1559 tx
pablodeymo Aug 8, 2024
e1eb4f3
adding logging operations
pablodeymo Aug 8, 2024
5d14e3d
nonce changed
pablodeymo Aug 8, 2024
8083277
use transactionRequest instead of concrete tx
juanbono Aug 8, 2024
ea40e21
fix test
juanbono Aug 8, 2024
3803cef
use TransactionRequest in test
juanbono Aug 8, 2024
a0a72d0
remove unused functions after refactor
juanbono Aug 9, 2024
6eb0cc1
cargo clippy
juanbono Aug 9, 2024
58ad66b
pull from main
juanbono Aug 13, 2024
da6003f
address comments on docs
juanbono Aug 13, 2024
44bf5af
use correct function to get test logger
juanbono Aug 13, 2024
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
22 changes: 22 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ members = [
"crates/chainio/clients/elcontracts/",
"crates/chainio/clients/eth/",
"crates/chainio/clients/fireblocks/",
"crates/chainio/txmanager/",
"crates/chainio/utils/",
"crates/contracts/bindings/",
"crates/crypto/bls/",
Expand All @@ -18,8 +19,6 @@ members = [
"crates/services/bls_aggregation/",
"crates/services/operatorsinfo/",
"crates/signer/",
"crates/signer/",
"crates/types/",
"crates/types/",
"crates/utils/",
"examples/anvil-utils",
Expand Down Expand Up @@ -57,6 +56,7 @@ aws-config = "1.5.4"
aws-sdk-kms = "1.37.0"
bn254 = { git = "https://github.com/sedaprotocol/bn254" }
clap = { version = "4.5.11", features = ["derive"] }
eigen-chainio-txmanager = { path = "crates/chainio/txmanager/" }
pablodeymo marked this conversation as resolved.
Show resolved Hide resolved
eigen-chainio-utils = { path = "crates/chainio/utils/" }
eigen-client-avsregistry = { path = "crates/chainio/clients/avsregistry" }
eigen-client-elcontracts = { path = "crates/chainio/clients/elcontracts" }
Expand All @@ -65,15 +65,17 @@ eigen-client-fireblocks = { path = "crates/chainio/clients/fireblocks" }
eigen-contract-bindings = { path = "crates/contracts/bindings/" }
eigen-crypto-bls = { path = "crates/crypto/bls/" }
eigen-crypto-bn254 = { path = "crates/crypto/bn254/" }
eigen-crypto-keystore = { path = "crates/crypto/keystore/" }
eigen-logging = { path = "crates/logging/" }
eigen-metrics = { version = "0.0.1-alpha", path = "crates/metrics/" }
eigen-metrics-collectors-economic = { path = "crates/metrics/collectors/economic" }
eigen-metrics-collectors-rpc-calls = { path = "crates/metrics/collectors/rpc_calls" }
eigen-metrics-derive = { path = "crates/metrics/metrics-derive" }
eigen-services-avsregistry = { path = "crates/services/avsregistry" }
eigen-services-bls_aggregation = { path = "crates/services/bls_aggregation" }
eigen-services-operatorsinfo = { path = "crates/services/operatorsinfo" }
eigen-signer = { path = "crates/signer/" }
eigen-testing-utils = { path = "testing/testing-utils" }
eigen-logging = {path = "crates/logging"}
eigen-types = { path = "crates/types/" }
eigen-utils = { path = "crates/utils/" }
eth-keystore = "0.5.0"
Expand Down Expand Up @@ -154,8 +156,6 @@ alloy-transport-http = { version = "0.1", features = [
alloy-transport-ipc = { version = "0.1", default-features = false }
alloy-transport-ws = { version = "0.1", default-features = false }
alloy-trie = "0.4"

# examples
anvil-utils = { path = "examples/anvil-utils" }
avsregistry-read = { path = "examples/avsregistry-read" }
avsregistry-write = { path = "examples/avsregistry-write" }
28 changes: 28 additions & 0 deletions crates/chainio/txmanager/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[package]
name = "eigen-chainio-txmanager"
description = "Eigen Layer Tx Manager"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
repository.workspace = true
license-file.workspace = true

[dependencies]
alloy-eips.workspace = true
alloy-network.workspace = true
alloy-primitives.workspace = true
alloy-provider.workspace = true
alloy-rpc-types-eth.workspace = true
alloy-signer-local.workspace = true
alloy-transport-http.workspace = true
eigen-logging.workspace = true
eigen-signer.workspace = true
k256.workspace = true
reqwest.workspace = true
thiserror.workspace = true

[dev-dependencies]
alloy-consensus.workspace = true
alloy-node-bindings.workspace = true
once_cell.workspace = true
tokio.workspace = true
1 change: 1 addition & 0 deletions crates/chainio/txmanager/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Eigen SDK ChainIo Tx Manager
7 changes: 7 additions & 0 deletions crates/chainio/txmanager/src/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#![doc(
html_logo_url = "https://github.com/Layr-Labs/eigensdk-rs/assets/91280922/bd13caec-3c00-4afc-839a-b83d2890beb5",
issue_tracker_base_url = "https://github.com/Layr-Labs/eigensdk-rs/issues/"
)]
#![cfg_attr(not(test), warn(unused_crate_dependencies))]

pub mod simple_tx_manager;
Loading
Loading