Noah Citron
8844f921e8
feat: improved configs ( #64 )
...
* migrate config to figment
* support env variables
* add better error messages
* fix tests
* refactor
2022-10-05 13:52:07 -04:00
Noah Citron
5d1f4a6344
refactor: better error handling ( #63 )
...
* add custom errors to consensus
* add BlockNotFoundError
* better handling of blocktag parsing
* clean up
* add execution errors
* add rpc errors
* add more fields to errors
2022-09-29 19:35:43 -04:00
Noah Citron
f3b9750eff
fix: prevent stale reads ( #62 )
2022-09-28 17:50:39 -04:00
Noah Citron
aa71f4ac17
refactor: core consensus ( #61 )
...
* try to update next sync committee periodically
* perform verification through generic updates
* apply updates with generic update struct
* better logging
* fix checkpoint save
* clean up
* better update timing
2022-09-28 16:48:24 -04:00
Noah Citron
c57c866c17
feat: parallel tx receipt fetching ( #57 )
2022-09-23 22:52:51 -04:00
Noah Citron
fb28a61043
feat: add forced shutdowns ( #56 )
2022-09-23 22:09:03 -04:00
Noah Citron
1196c0181d
fix: handle access list gas requirements ( #54 )
2022-09-23 20:37:28 -04:00
Noah Citron
4a347e3b2c
feat: evm efficiency improvements ( #53 )
...
* feat: evm efficiency improvements
* remove get_code tests
2022-09-23 19:40:01 -04:00
Noah Citron
e2eb7a731a
chore: fix typos ( #50 )
2022-09-22 23:41:17 -04:00
Noah Citron
5b55c1b35e
feat: require execution rpc ( #49 )
2022-09-22 23:34:34 -04:00
Noah Citron
b137df4b85
fix: handle null rpc responses ( #47 )
2022-09-22 23:19:24 -04:00
Noah Citron
abfed6a8fe
feat: use RwLock for concurrent reads ( #46 )
...
* feat: use RwLock for concurrent reads
* use reads for most client actions
2022-09-22 17:30:47 -04:00
Noah Citron
9c3e5f4833
chore: better retry parameters ( #45 )
2022-09-22 15:42:47 -04:00
Noah Citron
897f679a2c
feat: use access lists to batch fetch proofs ( #44 )
...
* add create_access_list to rpc
* batch fetch proofs with access lists
* refactor
* use caching for estimate_gas
* cleanup
* add rate limiting to bulk proof fetch
2022-09-22 15:40:06 -04:00
Noah Citron
0579855141
feat: add checkpoint caching ( #41 )
...
* add checkpoint caching
* add data dir override to cli
* move checkpointing into database
* move logging to client
* clean up
2022-09-16 15:32:15 -04:00
Noah Citron
c4e222b319
feat: mainnet support ( #40 )
...
* feat: mainnet support
* lint
2022-09-15 17:56:42 -04:00
Noah Citron
8f3b32d39d
feat: add installer ( #37 )
2022-09-15 17:13:10 -04:00
Noah Citron
7bb9800447
feat: ci releases ( #36 )
...
* add simple release ci for mac arm
* install arm target
* run mac build on macos-latest
* archive file
* fix file paths
* use tag names
* add amd darwin build
* fix typo
* add linux arm build
* add linux amd build
* fix linux arm
* install libssl for linux arm
* set linker
* install pkg-config
* fix openssl
* use cross
* fix cross
* fix cross
* .
* .
* add deps
* .
* .
* use vendored openssl
* remove cross
* deps
* push to tags
* use commit as tag name
* tag with correct name and use pre release
* fix tag names
* only maual dispatch
2022-09-15 04:55:29 -04:00
Noah Citron
17301ec409
fix: ci ( #35 )
...
* fix: release ci
* change application name
* fix names
* don't use nightly tags
2022-09-14 20:40:21 -04:00
Noah Citron
e043549ae4
fix: release ci ( #34 )
...
* fix: release ci
* change application name
* fix names
2022-09-14 20:36:04 -04:00
Noah Citron
3e21c282e8
fix: release ci ( #33 )
2022-09-14 20:24:14 -04:00
Noah Citron
00866704b3
feat: release ci ( #32 )
2022-09-14 20:22:39 -04:00
Noah Citron
d41a8713d0
fix: add missing fields to beacon block body ( #31 )
...
* add proposer slashings to block body
* add attestation slashings to beacon block
* add voluntary exits to beacon body
* remove comment
* fix u256_deserialize
2022-09-14 17:21:09 -04:00
Noah Citron
4719717ddb
fix: node memory leak ( #30 )
...
* fix: node memory leak
* fix ci
* typo
* set override
* set uses
* fix
* remove duplicate name
* use nightly
* fix tests
* use BTreeMap for payload cache
2022-09-14 13:57:48 -04:00
Noah Citron
8e080faf4a
feat: add rpc cli flags ( #29 )
2022-09-12 20:36:04 -04:00
Noah Citron
56385f15ed
feat: support finalized block tag ( #28 )
2022-09-12 19:23:37 -04:00
Noah Citron
cf6c211516
feat: refactor client ( #17 )
...
* seperate client and node
* encapsule rpc inside client
* pass proper port into rpc
* track chain head in seperate thread
* client new takes config instead of arc
* refactor main
* add start method to client
2022-09-10 00:01:23 -04:00
Noah Citron
b8d21abe44
feat: improve cli ( #16 )
...
* use default_value for flags
* add checkpoint flag
2022-09-09 18:14:17 -04:00
Noah Citron
a149ba618c
feat: add logging ( #15 )
...
* feat: add logging
* show confidence and delay when syncing
* log rpc errors
* fmt
2022-09-08 21:34:14 -04:00
Noah Citron
40a6211c13
tests: add execution tests ( #14 )
...
* add execution rpc trait
* add account tests
* add code and tx tests
* add receipt tests
* add get block tests
2022-09-08 17:46:48 -04:00
Noah Citron
a63d56a952
refactor: switch execution rpc to ethers ( #13 )
2022-09-06 13:57:47 -04:00
Noah Citron
c64ba5839b
chore: add ci ( #12 )
...
* Create rust.yml
* fmt
2022-09-04 21:14:20 -04:00
Noah Citron
a0b0b78da5
test: add consensus tests ( #11 )
...
* add consensus integration tests
* add unit tests
* organize imports
2022-09-04 19:32:16 -04:00
Noah Citron
95daee7186
fix: add full block and tx context to call ( #10 )
2022-09-02 15:29:51 -04:00
Noah Citron
dbeeffb9f9
feat: add eth_getBlockByHash ( #9 )
2022-09-02 00:13:22 -04:00
Noah Citron
e0411e1e97
feat: add eth_getTransactionByHash ( #8 )
...
* add eth_getTransactionByHash
* clean up imports
2022-09-01 23:28:37 -04:00
Noah Citron
11fd824b01
feat: add eth_getTransactionReceipt ( #6 )
2022-09-01 20:28:12 -04:00
Noah Citron
76a230446d
feat: add eth_sendRawTransaction ( #5 )
2022-09-01 17:07:30 -04:00
Noah Citron
dc0e31cedd
fix: allow from in eth_call and eth_estimateGas ( #4 )
...
* fix gas esimtation in uniswap frontend
* calculate empty account
2022-09-01 15:58:45 -04:00
Noah Citron
b1d33bb9af
fix: handle proof edge cases ( #3 )
...
* fix proof edge cases
* fmt
2022-08-31 20:31:02 -04:00
Noah Citron
92e30c3d50
feat: add metamask support ( #2 )
...
* add eth_getBlockByNumber and net_version
* fmt
2022-08-31 17:40:44 -04:00
Noah Citron
374dd1f38f
add optimistic updates ( #1 )
2022-08-30 20:31:58 -04:00
Noah Citron
ad43cf7668
add cli app
2022-08-29 16:54:58 -04:00
Noah Citron
1d810caa92
refactor using cargo workspaces
2022-08-29 13:31:17 -04:00
Noah Citron
57ecba8fd2
add eth_blockNumber to rpc
2022-08-29 12:06:50 -04:00
Noah Citron
b8c18ab765
add gas pricing rpc methods
2022-08-29 11:59:02 -04:00
Noah Citron
aa50b4cfad
add eth_estimateGas
2022-08-27 16:43:27 -04:00
Noah Citron
99d7ff4043
add configuration file support
2022-08-26 20:05:12 -04:00
Noah Citron
e0beceb8dd
support exclusion proofs ending at leaf
2022-08-26 18:13:35 -04:00
Noah Citron
e18aa704e1
expose basic rpc api
2022-08-25 21:18:47 -04:00