Releases: flashbots/mev-boost-relay
v0.21
What's Changed
Especially noteworthy
- SSZ builder submissions
- Block builders can now submit payloads encoded in JSON, SSZ, JSON+GZIP, SSZ+GZIP
- PR #388 - Allow SSZ builder submissions (also SSZ+GZIP)
- Live on Flashbots relays
- More details for builders
- use HMSET for batch Builder status store by @EliasiOfir in #373
Various
- make lt, make flt in #390
- cleanup logging of builder submission content in #395
- cleanup: remove blst portable env var in tests in #389
- Bump github.com/attestantio/go-eth2-client from 0.15.8 to 0.16.3 by @dependabot in #387
New Contributors
- @EliasiOfir made their first contribution in #373
Docker image: flashbots/mev-boost-relay:0.21
Full Changelog: v0.20.0...v0.21
v0.20.0
Capella-ready ✅
This release is Capella-compatible
What's Changed
Specially noteworthy
- Publish block before returning to proposer in #330
- Support memcached for storing execution payloads @Wazzymandias in #312
- The database tends to fill up with terrabytes of execution payloads (transactions of builder block submissions)
- This is only used for data redundancy, in case redis fails to deliver the content for
getPayload
requests - Now you can use memcached as a fallback, and disable saving to the database with
DISABLE_PAYLOAD_DATABASE_STORAGE=1
- Memcache is sometimes instable, added
MEMCACHE_ALLOW_SAVING_FAIL
in #333 - Upped Memcached defaults for timeout + max-idle-conns in #341
- Collecting two extra timestamps in the block lifecycle by @michaelneuder in #301 (database migration!)
- Add readonly Redis by @michaelneuder in #363
Capella upgrades
- SSE Payload Attributes subscription by @avalonche in #318
- Use attestant capella types by @avalonche in #287
- Add validation for withdrawals root by @avalonche in #288
- Add capella proposer signing domain by @avalonche in #289
- Check block submission matches fork schedule by @avalonche in #291
- Update attestant types dependency by @avalonche in #308
- support multiple parents in #340
- SSE event logger in #344
Various improvements
- code cleanup: switch redis arg order by @michaelneuder in #364
- Use transaction with optimistic lock to eliminate race in #365
- getPayload log slot pos in epoch (1-32) in #367
- getPayload proposerIndex check + feeRecipient log in #366
- Improved GetStateValidators in #368
- [fix] slotduty update in proposer API in #372
- remove random delays from getPayload by @michaelneuder in #374
- check for any non-200 code by @michaelneuder in #376
- registerValidator with fast JSON decoding only in #369
GetStateValidators
CL request timing in #371- 202 for ignored submissions by @michaelneuder in #377
- use correct logger in handleSubmitBlock in #382
- Fetch latest builder value for cancellations check by @michaelneuder in #379
- fast-track highPrio+topValue validations in #361
- ssz tests in #383
- remove future check from getHeader call by @michaelneuder in #386
- more timestamps for blocks submissions in #347
- reject prysm getHeader by @michaelneuder in #351
- flexible user agent getHeader filtering by env var in #352
- builder submission performance improvements, cancel opt-in in #350
- Remove skip of the test by @asanso in #357
- save valid, too late
getPayload
requests & beacon node publication durations by @michaelneuder in #356 - builder submission: +wasSimulated, separate request error from validation error in #355
- make builder, data, and proposer apis optional by @michaelneuder in #362
- support for custom eth networks in #346
- Return error for future slot submissions by @michaelneuder in #297
- api max header bytes in #304
- Minor export scripts updates in #290
- Fix for bid-export-auto script (deflated last export fix) in #294
- Builder bid value overflow fix by @avalonche in #306
- Fork version check in #310
- Fix bid trace nil pointer by @avalonche in #315
- submitBlock: return after error fix in #314
- fixed scripts/export-bids-auto.sh in #320
- use SSE payload attributes by default in #323
- log version in housekeeper and website in #327
- Add docs by @michaelneuder in #324
- Set best beacon client for all beacon client methods by @avalonche in #329
- Replace blst with gnark-crypto in #321
- underflow fix by @michaelneuder in #339
- redis cleanup for switch to storing proposers by index in #345
Dependency updates
- Bump github.com/flashbots/go-boost-utils from 1.5.0 to 1.6.0 by @dependabot in #384
- Bump github.com/flashbots/go-boost-utils from 1.4.1 to 1.5.0 by @dependabot in #349
- Bump github.com/lib/pq from 1.10.7 to 1.10.8 by @dependabot in #353
- Bump github.com/alicebob/miniredis/v2 from 2.23.0 to 2.30.2 by @dependabot in #358
- Bump github.com/ethereum/go-ethereum from 1.11.5 to 1.11.6 by @dependabot in #360
- Bump go.uber.org/atomic from 1.10.0 to 1.11.0 by @dependabot in #385
- Bump github.com/ethereum/go-ethereum from 1.11.1 to 1.11.2 by @dependabot in #295
- Bump golang.org/x/text from 0.7.0 to 0.8.0 by @dependabot in #298
- Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 by @dependabot in #296
- Bump github.com/rubenv/sql-migrate from 1.3.0 to 1.4.0 by @dependabot in #299
- Bump github.com/ethereum/go-ethereum from 1.11.2 to 1.11.3 by @dependabot in #300
- Bump github.com/holiman/uint256 from 1.2.1 to 1.2.2 by @dependabot in #322
- update github.com/attestantio/go-eth2-client in #328
- Bump github.com/attestantio/go-builder-client from 0.2.7 to 0.2.8 by @dependabot in #331
New Contributors
- @michaelneuder made their first contribution in #297
- @Wazzymandias made their first contribution in #312
- @asanso made their first contribution in #357
Docker image: flashbots/mev-boost-relay:0.20.0
Full Changelog: v0.15.2...v0.20.0
v0.15.2
What's Changed
Full Changelog: v0.15.0...v1.15.2
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags
v0.15.0
What's Changed
- API write timeout: 10 sec by default (and configurable with env vars) in #264
- 3s default timeout for block validations, new env var BLOCKSIM_TIMEOUT_MS in #269
- on validation timeout, return 504 in #271
- website: only show active validators, for clarity in #250
- Parse Redis URLs by @austonst in #252
- getPayload: log error on i/o timeout in #258
- docker build speedup in #263
- fix exporting last week's payloads in #262
- Improve scripts/export-payloads-last-week.sh in #270
- Bump github.com/rubenv/sql-migrate from 1.2.0 to 1.3.0 by @dependabot in #266
Notes
- This release changes some timeouts:
- increases the default http API write timeout to 10 seconds
- sets a 3 seconds request timeout for block validations, returns 504 if timing out
New environment variables for the timeouts:
API_TIMEOUT_READ_MS
API_TIMEOUT_READHEADER_MS
API_TIMEOUT_WRITE_MS
API_TIMEOUT_IDLE_MS
BLOCKSIM_TIMEOUT_MS
New Contributors
Full Changelog: v0.14.1...v0.15.0
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags (flashbots/mev-boost-relay:0.15.0
)
v0.14.1
What's Changed
Full Changelog: v0.14.0...v0.14.1
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags
v0.14.0
What's Changed
- Add database migrations by @avalonche in #224
- Fixes for the recent DoS vulnerability by @metachris and @Ruteri:
- Remove notion of top-bid, add builder-submission receivedAt in #219
- Data API
getBuilderBids
without limit if filtered by slot, block_hash, block_number in #239 - Tool to export bids in #232
- Issue templates in #238
Important note: prev_randao validation uses the getRandao beacon api call, which is not yet widely implemented in CL clients (supported by Teku, but Prysm needs this patch until it's included in the next release).
Full Changelog: v0.13.0...v0.14.0
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags
v0.13.0
What's Changed
Major
- Fix the memory leaks when using db.PrepareNamed in #233
- data-api bids: remove limit when querying for slot of block_number in #234
- update from go 1.18 to 1.19 in #235
Minor
- fix docker ci release tags in #228
- modules cleanup, reliably fix ambiguous import error chainhash in #227
- move btcutil import to package internal in #229
- Add audit for boost relay by @avalonche in #230
- Bump github.com/spf13/cobra from 1.6.0 to 1.6.1 by @dependabot in #222
- ci: fix getting tag version in #236
Full Changelog: v0.12.3...v0.13.0
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags
v0.12.3
What's Changed
- updated go-boost-utils to v1.2.2, which uses go-ethereum v1.10.25 in #225
- beacon instance: added getHeaderForSlot, getBlockForSlot in #220
- Bump github.com/stretchr/testify from 1.8.0 to 1.8.1 by @dependabot in #221
Full Changelog: v0.12.2...v0.12.3
v0.12.2
What's Changed
- add millisecond timestamp to builder bids in #212 - see https://boost-relay.flashbots.net/relay/v1/data/bidtraces/builder_blocks_received
- submitBlock: allow gzip request encoding in #211
- block cancellations: after validation, check if request is latest in #214
- fix block submission timestamp check in #217
- cleanup validator registration error logging in #216
- indexes on inserted_at for bids + payloads in #215
- always log version in #218
Full Changelog: v0.11.0...v0.12.2
Docker images: https://hub.docker.com/r/flashbots/mev-boost-relay/tags
v0.11.0
What's Changed
Major changes
- block submission cancellation in #206
- Reject blocks after getpayload in #188
- logging improvements on errors: #208 + #197
tool
command for archiving execution-payloads and bulk-exporting data in #192
Minor changes
- Minor updates: db sort by slot, db-test dsn env var in #200
- Bump github.com/go-redis/redis/v9 from 9.0.0-beta.3 to 9.0.0-rc.1 by @dependabot in #198
- Add Postgres and database tests to CI by @franciscodiazydiaz in #199
- added ARCHITECTURE.md and S3 index page in #196
- Bump golang.org/x/text from 0.3.8 to 0.4.0 by @dependabot in #201
- readme + ARCHITECTURE.md update in #207
- final minor touches for 0.11.0 release in #210
New Contributors
- @franciscodiazydiaz made their first contribution in #199
Full Changelog: v0.10.0...v0.11.0