Specs:
- 2 PRs pending for 0.7.0 compat
Sync:
- backward sync integrated (request all blocks up to a point)
Networking:
- core libp2p:
- on mobile issue because sleeping kills connection
- libp2p integration in Nimbus, currently working on libp2p testnet (instead of RLPx currently)
Eth1/Web3:
- API to watch the validator contract with nimbus
Eth1 Security:
- Fuzzing discovery and fixing bugs in discovery and RLP
Collaboration:
- RPC standard for dataviz of testnets
- something for the interop agenda?
Intro:
0.7.0 released yesterday, small release, no big breaking changes
Testing:
Test vectors out. Note: Generating tests is slow due to Python tree hashing
Updates on fuzzing tests Justin: someone tested fuzzing with xxhash instead of sha256 --> 3x faster might be worth it to use xxhash just for fuzzing to do more with the same resources
Client updates
Prysmatic (Terence)
- Reworked caching
- syncing SSZ
Parity (WeiTang):
- 0.7.0, passing test vectors
- no caching at the moment, pending final specs
- currently using floodsub for networking. Might reintroduce (?) networking library
Artemis (Johnny):
- Profiling on state transition
- caching had to be reimplemented
- Broken out validator client implementation
- Article on (?) merkle tree implementation
- working with Harmony and Raoul (protocol labs) on minimal implementation of JVM libp2p
- bounties on minimal consensus layer tests
Trinity (Hsiao-wei Wang)
- Working on state transition for 0.7.0
- (?)
- Eth1 deposit contract
- working on discv5
Lodestar (Cayman)
- Passing 0.6 tests except BLS verification
Nimbus --> RPC standard for metrics
- Q on push vs pull for metrics https://github.com/ethereum/eth2.0-metrics/ Paul: there is a confusion between metrics for devs (and for users) Jacek: this increases the attack surface area and perf implication
Harmony
- up-to-date with 0.6.3 and passing all tests
- working on 0.7.0
- working on validator RPC interface
- started minimal libp2p JVM
Lighthouse
- up-to-date with 0.6.3 and passing all tests
- Prometheus + Grafana for dashboard
- lots of progress on discv5
- fuzzing
- working on Vitalik's optimized BLS signature schemes
- stress-testing testnet with 1s block time
Research updates
Vitalik: SSZ partials implemented in Python ==> too complex Complexity comes from the dynamic size of (?) Could be removed if we could fix that size or have a max length
SSZ change: ethereum/consensus-specs#1160
Pegasys research: Handle paper published on ArXiv
- BLS sig aggregation at a large scale, https://arxiv.org/abs/1906.05132
Justin:
- Eth1 as an execution engine https://ethresear.ch/t/work-to-natively-integrate-eth1-into-eth2/5573
Timing for deposit contracts release on Eth1?
- Ceremony
- Fake contracts
- trigger https://github.com/ethereum/eth2.0-specs/blob/dev/specs/core/0_beacon-chain.md#genesis-trigger
Networking
See felix post ethereum/eth2.0-pm#45 (comment) discv5 updates:
- Go implementation is progressing. Still missing integration for the topic stuff, but basic DHT works.
- Implementation in Trinity (python) and Lighthouse (rust) is ongoing. Rust version is pretty far along.
- Minor spec changes TBD.
- We are negotiating an external protocol audit.
long discussion on TLS, encryption
Zak (whiteblocks), libp2p gossipsub draft Test geing written, feedback welcome Started on discv5 impl in C++
Token standard: https://ethereum-magicians.org/t/brainstorming-the-token-standard-in-eth2/3135/15
Reminder: devcon application is open