christn
1b1a540340
feat: backfill payloads ( #189 )
...
* Loop over all missing slots since last update
* Adjust get_block_header function to allow getting headers of past blocks
* Compare parent hashes when backfilling blocks
* Backfill blocks concurrently
* Do not rehash backfilled blocks
* Revert "Adjust get_block_header function to allow getting headers of past blocks"
This reverts commit 5895118046
.
* Move get_payloads to consensus module
* Continue with the next block instead of request failure to recover from skipped blocks
* clippy and rustfmt
* clippy
* Remove redundant get_block_from_rpc method
2023-02-07 17:36:29 -05:00
Noah Citron
72267b4563
feat: wasm support ( #182 )
...
* basic consensus setup
* basic execution setup
* patch for wasm
* basic wasm client
* proxy cors for testing
* migrate to webpack
* use typescript
* track chain head
* rename to helios-ts
* better build instructions
* add getCode
* builds everywhere
* add wasm-pack to dependencies
* compile for both wasm and non-wasm
* fix deps
* fix deps
* remove ds store
* add blocktags
* add getNonce
* use BTreeMap to store payloads
* add getTransaction
* switch to proper ethers provider
* post merge fixes
* compile client to wasm
* fix tests
* fmt
* use milagro for bls
* handle node advance in rust
* faster bls deserialization
* clippy
* add ConfigDB
* remove ts bindings
* fix gitignore
* remove ts workspace member
* remove unused mut
* uncomment old deletions
* bump to 0.2.0
2023-01-30 21:38:46 -05:00
Noah Citron
2c5c318529
feat: check consensus rpc network ( #177 )
...
* feat: check consensus rpc network
* cleanup
2023-01-23 10:07:11 -05:00
Noah Citron
cb6cf75d59
feat: make checkpoint age check optional ( #170 )
...
* feat: make checkpoint age check optional
* add new flag to readme
* fix tests
2023-01-18 21:18:26 -05:00
Noah Citron
69b8108dae
fix: deserialize wrapped lc headers correctly ( #169 )
...
* fix: deserialize wrapped lc headers correctly
* clippy
2023-01-18 19:42:56 -05:00
refcell.eth
b449c1f674
fix(readme): Resolve Dependency Type Conflicts ( #129 )
...
* 🐛 resolve dependency type conflicts
* 🔨 fix inline payload construction in tests
2022-12-04 15:28:44 -05:00
andreas
161e0fbfb9
feat: checkpoint fallbacks ( #120 )
...
* 🏗️ checkpoint fallback initial impl
* 🚧 checkpoint fallbacks
* ✅ checkpoint fallbacks
* ⚙️ fix result types
* ♻️ checkpoints refactoring
* 🔨 import nits
* 🚀 graceful checkpoint fallbacks
* ⚡ parallel checkpoint fallback service fetching using async tokio tasks
* 📝 readme touchups
2022-12-01 20:18:23 -05:00
asnared
21c73c1649
feat: Lints, Clippy, and Cleaning ( #115 )
...
* ✨ cargo fmt smells
* ♻️ cargo cleaning
2022-11-29 17:31:25 -08:00
0xModene
eaf5605d4d
feat: verify checkpoint has valid age ( #105 )
...
* check blockhash has valid timestamp
* remove warn log
* made checkpoint age req configurable
* renamed method to make more sense
* fixed broken tests
* formatting
* unit tests completed
* removed needless imports
* renaming vars
2022-11-14 15:23:51 -05:00
dadepo
2dbe057e3a
refactor: add count parameter to get_update and use 128 as the limit ( #97 )
...
* Make get_update take count. Limit count to 128 as specified in the spec
* use u8 instead of u32
* run cargo fmt to fix formating
* fix compilation in tests
* moved constants module into the consensus package
2022-11-08 16:24:55 -05:00
Noah Citron
eaca764aac
feat: add retries to consensus rpc ( #87 )
...
* feat: add retries to consensus rpc
* fix tests
2022-11-04 11:05:18 -04:00
Noah Citron
f605f009a7
feat: add client builder ( #84 )
...
* add client builder
* use client builder in cli
* make build sync
* fix data dir override
* fix tests
2022-11-03 15:24:17 -04:00
Noah Citron
a9b34f3dee
refactor: clean up ( #78 )
...
* refactor client rpc
* refactor node
* remove unused deps
* remove unused import
* refactor consensus
* consensus refactor
* rename rpc traits
* refactor execution
2022-11-01 23:52:28 -04:00
Noah Citron
e801b0b926
fix: better bootstrap error message ( #71 )
2022-10-25 19:10:49 -04:00
Noah Citron
4757fa06ff
fix: use updated consensus layer light client api ( #68 )
...
* update consensus api
* update mainnet checkpoint
2022-10-13 13:59:37 -04:00
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
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
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
56385f15ed
feat: support finalized block tag ( #28 )
2022-09-12 19:23:37 -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
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
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