Skip to content

Releases: berachain/beacon-kit

v0.4.0-alpha.0

20 Nov 18:43
cafd14e
Compare
Choose a tag to compare

image

Summary

This includes 2 consensus BREAKING changes:

  • Improved execution payload timestamp formation and validation.
  • Fixing EVM balance of Boonet genesis with inflation withdrawal.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Bartio Boonet General
Payload Builders None Required None
Non-Payload Builders None Required None

All Changes

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.4.0-alpha.0-linux-amd64
arm64 beacond-v0.4.0-alpha.0-linux-arm64
arm64 beacond-v0.4.0-alpha.0-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit

v0.3.0-alpha.0

14 Nov 21:41
8a04173
Compare
Choose a tag to compare

image

Summary

Security Hardening

  • Proof & Validation Security: Strengthened proof generation and validator validation checks across node API components to enhance accuracy and trustworthiness.
  • Execution & State Transition Protection: Enhanced concurrency handling, error safeguards, and streamlined state transitions for smoother and safer operations.
  • Optimized Dependencies & Cleanup: Updated dependencies, refactored code, and cleared redundant functions to boost performance and reduce technical debt.

Breaking

It is NOT backwards compatible with bartio-beacon-80084 genesis; it is state breaking with respect to v0.2.0-alpha.8.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Bartio General
Payload Builders None Recommended
Non-Payload Builders None Recommended

What's Changed

  • kurtosis (forge-script) : Enhancement to handle dependency from GitHub by @nidhi-singh02 in #1979
  • test(proofs): consistency tests for working proof generation & verification by @calbera in #2015
  • Made StoreKey singleton by @abi87 in #2018
  • chore(cometBFTService): drop redundant context assignemets by @abi87 in #2020
  • bet(testnet/config): Update app.toml according to the new releases by @chuck-bear in #2023
  • chore(DefaultServiceOptions): minor chainID loading refactoring by @abi87 in #2022
  • chore(cometBFTService): some more minor cleanups by @abi87 in #2021
  • chore(all): Run make generate-check by @abi87 in #2027
  • chore(CometBFTService): simplified cometBFTService Info by @abi87 in #2028
  • chore(cometBFTService): simplified CometBFTService by @abi87 in #2026
  • chore(primitives): renaming nits and comments fixes by @abi87 in #2030
  • chore(encoding): dropped go-json direct dependency by @abi87 in #2033
  • chore(all): update mockery by @abi87 in #2036
  • chore(consensus-types): Dropped double allocation in NewFromSSZ by @abi87 in #2040
  • chore(consensus-types): Use EthSecp256k1CredentialPrefix constant for clarity by @abi87 in #2039
  • chore(primitives): fixed ExecutionAddress validation by @abi87 in #2034
  • chore(primitives): dropped duplicated jwt function by @abi87 in #2037
  • chore(consensus-types): Make slashings use math.Gwei by @abi87 in #2038
  • chore(CometBFTService): minor InitChain cleanup by @abi87 in #2035
  • chore(consensus-types): fixed proposer index type by @abi87 in #2041
  • chore(primitives): hex.String basic cleanup by @abi87 in #2044
  • chore(many): Typographical issues by @abi87 in #2032
  • chore(primitives): Consolidating hex.NewString by @abi87 in #2047
  • chore(execution): fixed failedBlocks concurrency by @abi87 in #2060
  • chore(execution): fixed tickers stop by @abi87 in #2059
  • chore(execution): protect rpc.header for concurrent access by @abi87 in #2058
  • chore(primitives): hardened NewRootFromHex by @abi87 in #2051
  • chore(primitives): Reorganized bytes unit tests by @abi87 in #2052
  • chore(primitives): dropped primitives service types by @abi87 in #2063
  • chore(all): updated mockery to v 2.46.3 by @abi87 in #2067
  • chore(execution): Dropped DenebPlus redundant check by @abi87 in #2069
  • chore(execution): another defer ticker fix by @abi87 in #2070
  • feat(node-api): use timestamp ID instead of execution ID for proof namespace by @calbera in #2066
  • fix(node-api): Use the correct id in the proof endpoints routes by @calbera in #2078
  • chore(primitives): minor optimization for PowerOfTwo functions by @abi87 in #2081
  • chore(storage): close storage iterators by @abi87 in #2077
  • chore(primitives): hardened NewU256FromBigInt by @abi87 in #2079
  • chore(primitives): hardened GweiFromWei to avoid integer truncation by @abi87 in #2080
  • chore(consensus-types): Coherent BeaconBlock construction by @abi87 in #2082
  • chore(node-api): Add json tags to returned beacon block header data by @calbera in #2084
  • Fix - Update makefile to use new kurtosis repo by @gummybera in #2085
  • chore(primitives): Dropped hex.String by @abi87 in #2048
  • fix(beacon): consolidated next payload timestamp calculations by @abi87 in #2094
  • chore(payload): uniform error handling for ExecutionPayload retrieval by @abi87 in #2088
  • feat(node-api): proof of proposer index in beacon block by @calbera in #2099
  • chore(storage): hardened db range by @abi87 in #2106
  • Fix - Update erigon repo by @gummybera in #2121
  • fix: let the create-validator command retrieve the loaded configuration. by @dezzeus in #2128
  • chore(state-transition): Add basic unit tests by @abi87 in #2114
  • chore(dep): updated mimetype dep by @abi87 in #2105
  • fix(node-api): hardened node-api default address by @abi87 in #2092
  • bug(cli): hardened convert amount to avoid truncation by @abi87 in #2104
  • chore(da): improved blob processor encapsulation by @abi87 in #2113
  • bug(state-transitions): coherent use of effective balance increment by @abi87 in #2103
  • bug(state-transition): increase balance when validator balance is changed by @abi87 in #2111
  • fix(execution): hardened verifyChainIDAndConnection by @abi87 in #2086
  • fix(payload): guard SendForceHeadFCU with pb.Enabled by @abi87 in #2087
  • fix(node-api): added ValidateValidatorStatus by @abi87 in #2090
  • fix(node-api): hardened CustomValidator validation by @abi87 in #2093
  • chore(consensus-type): Fixed ExecutionPayload json marshalling by @abi87 in #2042
  • fix(consensus, blockchain): set execution payload timestamp based on CometBFT timestamp by @abi87 in #2095
  • perf(state-transition): reduce amount of withdrawals processed by @abi87 in #2110
  • fix(consensus, beacon): hardened proposer validation by @abi87 in #2102
  • fix(beacon): Hardened sidecars validation by @abi87 in #2108
  • chore(state-processor): consolidated state processors UTs by @abi87 in #2136
  • chore(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 in /build/tools in the go_modules group across 1 directory by @dependabot in #2130
  • chore(README): added Discord badge and minor fix by @abi87 in #2140
  • test: fix e2e tests so they pass locally by @MaanavKhaitan in #2054
  • fix(state-transition): skip execution payload timestamp validation on Bartio by @abi87 in #2147
  • fix(state-transition): Withdrawals backward compatibility with Bartio by @abi87 in #2148
  • chore: fix and execute mod tidy by @dezzeus in #2138
  • fix(consensus): fix consensus height logging by @abi87 in #2149
  • chore: add support for local devnet boonet by @abi87 in #2152
  • chore(all): update SSZ dependencies...
Read more

v0.2.0-alpha.8

16 Sep 20:37
Compare
Choose a tag to compare

image

Summary

Minor upgrade, v0.2.0-alpha.7 was skipped due to an issue with CI.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Full Nodes Low

What's Changed

New Contributors

Full Changelog: v0.2.0-alpha.6...v0.2.0-alpha.8

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.8-linux-amd64
arm64 beacond-v0.2.0-alpha.8-linux-arm64
arm64 beacond-v0.2.0-alpha.8-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit

v0.2.0-alpha.6

05 Sep 17:59
9735718
Compare
Choose a tag to compare

image

Summary

This release contains a reversion to a prior CometBFT version due to potential minor regression in CometBFT. It also contains a few other minor changes and cleanup.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Validators Low

What's Changed

Full Changelog: v0.2.0-alpha.5...v0.2.0-alpha.6

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.6-linux-amd64
arm64 beacond-v0.2.0-alpha.6-linux-arm64
arm64 beacond-v0.2.0-alpha.6-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit

v0.2.0-alpha.5

26 Aug 14:59
98dbc42
Compare
Choose a tag to compare

image

Summary

General tech debt and performance improvement related release. This release mainly begins some under the hood architectural changes as we push towards API stability.

Minor Breaking Changes

  • JWT Hex Token requires a "0x" prefix to be ingested.
  • Cosmos --api.XXXX flags have been deprecated as have the REST and GRPC endpoints on ports 1317 and 9090 respectively.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Full Nodes Low

What's Changed

Read more

v0.2.0-alpha.4

06 Aug 17:27
dd2155c
Compare
Choose a tag to compare

image

Summary

This release focuses on preparation for the eventual SSZ-DB transition by upgrading our encoding library as well as various other performance fixes. Most notably migrating from github.com/ferranbt/fastssz to github.com/karalabe/ssz for the majority of encoding and hashing. Nodes should see reduced memory allocations and subsequently much less CPU time spent garbage collecting.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Full Nodes Low

All Changes

New Contributors

Full Changelog: v0.2.0-alpha.3...v0.2.0-alpha.4

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.4-linux-amd64
arm64 beacond-v0.2.0-alpha.4-linux-arm64
arm64 beacond-v0.2.0-alpha.4-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit

v0.2.0-alpha.3

18 Jul 20:32
4ba125a
Compare
Choose a tag to compare

image

Summary

This release is maintenance release with various improvements, most notably we have seen significant performance improvements from CometBFT.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Full Nodes Low

What's Changed

New Contributors

Full Changelog: v0.2.0-alpha.2...v0.2.0-alpha.3

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.3-linux-amd64
arm64 beacond-v0.2.0-alpha.3-linux-arm64
arm64 beacond-v0.2.0-alpha.3-darwin-arm64
System Option - *...
Read more

v0.2.0-alpha.2

28 Jun 18:33
Compare
Choose a tag to compare

image

Summary

This release is an extensive performance related release including significant reductions in CPU and RAM consumption. A few notable changes:

  • Addresses several issues with CLI commands namely around the usage of the --homedir flag.
  • Introduced our own custom BeaconKit logging system that replaces the standard Cosmos-SDK logger.
  • Moved general runtime architecture towards an event driven design in preparation for future architecture changes around consensus engines (Rollkit soon!).

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Medium
Non-Payload Builders / Full Nodes Medium

All Changes

Read more

v0.2.0-alpha.1

14 Jun 18:27
Compare
Choose a tag to compare

image

Summary

This release addresses includes minor performance and stability improvements. Thank you to everyone who submitted bug reports, here are a few notable highlights:

  • Resolved "Chain Gapped issue" (#1369)
  • Minor CLI issues (#1415)
  • Included a HashTreeRoot() caching change to track performance improvements: #1429
  • Resolved memory growth issue in IAVLFastNode, please set iavl-disable-fastnode=true in your app.toml.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Low
Non-Payload Builders / Full Nodes Low

All Changes

  • test: add additional test for MarshalBitList (#1463)
  • chore(ci): fix pipeline
  • chore(ci): fix pipeline
  • fix(ci): pushing docker containers still having issues (#1485)
  • feat(testnet): adjust bArtio config (#1484)
  • feat(testnet): reduce timeout propose and timeout for payload builder (#1483)
  • feat(deps): bump engine-primitives (#1482)
  • chore(deps): sync primitives
  • chore(logging): fix emojis
  • chore(deps): bump holiman/uint256
  • chore: fix lint and refactor name comment (#1479)
  • chore(deps): tidy sync
  • chore(deps): run dep sync
  • feat(mod): mod/config (#1478)
  • chore(deps): make tidy sync
  • chore(node-core): decouple runtime and app module (#1438)
  • tests for other scenarios (#1477)
  • chore(components): cleanup (#1473)
  • chore(ci): move off of latest besu image cause broken (#1474)
  • chore(node-core): types.go (#1471)
  • test: increase coverage for solidity contracts (#1450)
  • chore: minor typo fixes (#1469)
  • chore(node-core): remove module.Environment deps from storage backend initialization (#1468)
  • feat(ci): fix (#1467)
  • test: add additional test for payload_header, 100% coverage (#1464)
  • Merge branch 'main' of ssh://github.com/berachain/beacon-kit
  • fix(kurtosis): eth package has moved
  • fix(ci): docker env tag (#1465)
  • Add L0vd CL Seednodes and EL Bootnode (#1466)
  • Tests for kzg package (#1462)
  • chore(config): IAVL Fast-Node should always be disabled on IAVL v1.x
  • fix(chain): Feed should be fired async (#1460)
  • Merge branch 'main' of ssh://github.com/berachain/beacon-kit
  • chore(deps): run tidy sync
  • feat(metrics): report os and arch (#1458)
  • fix dokcer
  • bet
  • chore(deps): run update-dep
  • feat(mod): add async module (#1459)
  • chore(ci): Further improve our ci setup (#1457)
  • fix(docker): Docker image builds did not set proper build_args (#1456)
  • fix(version): Version needs to be more based (#1454)
  • feat(node-core): decouple middleware from runtime (#1453)
  • Merge branch 'main' of ssh://github.com/berachain/beacon-kit
  • chore(deps): make tidy sync
  • chore(node-builder): provide chain spec FOR REAL this time (#1452)
  • chore(deps): run update-deps
  • refactor(mod/beacon): fix linters nested if in sendPostBlockFCU function (#1447)
  • chore(deposit): cleanup + remove deadcode (#1444)
  • style(consensus-types):fix mnd linters (#1446)
  • tests to increase the coverage (#1445)
  • Revert "fix(kurtosis): reth flags got updated or something idk (#1441)" (#1443)
  • chore(e2e): bump kurtosis (#1442)
  • fix(kurtosis): reth flags got updated or something idk (#1441)
  • feat(engine): more cleanup (#1440)
  • fix(typo): fix some go doc typos (#1439)
  • refactor: disable gochecknoglobals in test files (#1436)
  • test: improve code coverage (#1426)
  • chore(engine): Cleanup (#1435)
  • fix(types): Withdrawal typo
  • chore(engine): cleanup deadcode (#1433)
  • chore(node-core): depinject service registry (#1428)
  • feat(signer): add a safety check to the length of the signature returned by the signer (#1432)
  • Merge branch 'main' of ssh://github.com/berachain/beacon-kit
  • fix(lint): nilaway being annoying
  • fix(sha256): Use simd everywhere (#1431)
  • feat(state-processor): Optimize state transition (#1430)
  • perf(ssz): Cache HashTreeRoot (#1429)
  • chore(node-core): depinject chain service (#1425)
  • chore(node-core): depinject validator service & cleanup (#1424)
  • chore(validator): Improve naming
  • tests for engine primitives package (#1423)
  • fix(engine): JWT refresh hard error (#1421)
  • chore: correct comment naming (#1420)
  • chore(node-core): depinject runtime (#1419)
  • fix(readme): wrong link in README
  • feat(ci): Fix Google Cloud setup
  • fix(ci): stuck runner
  • add Staketab seed and enode (#1416)
  • Merge branch 'main' of ssh://github.com/berachain/beacon-kit
  • chore(ci): change runner
  • feat(deps): fix docker build (#1417)
  • fix(release): image was modified
  • chore(repo): dep bump
  • fix(docker): build
  • chore(deps): go mod tidy & sync
  • fix(cli): payload builder attributes (#1415)
  • chore(repo): remove replaces now that repo is open source (#1414)
  • Update docker.yml
  • chore(sync): bump deps
  • feat(README): cleanup spacing
  • feat(README): Uncenter and remove assets
  • feat(readme): remove files (#1411)
  • tests for engine primitives package (#1410)
  • refactor: add miss defer and refactor name function (#1408)
  • fix(networks): Update client.toml to 80084 (#1409)
  • chore(node-builder): some more generics idk man (#1406)
  • add kurtosis pkg icon (#1405)
  • chore(README): updates (#1403)
  • chore(node-builder): move deposit service out of runtime (#1401)
  • fix(deposits): error in failed blocks map cleanup
  • chore(node-builder): move blobs processor out of provide runtime (#1400)
  • chore(node-builder): cleanup depinject (#1399)
  • chore(repo): Cleanup readme and fix kurtosis yaml (#1398)
  • fix(comet): Revert syncing to head change, seems unreliable. (#1369)
  • chore(node-builder): depinject db pruners and manager (#1394)
  • feat(types): more type cleaning (#1396)
  • chore(README): emphasize modularity (#1397)
  • feat(types): Modularity (#1395)
  • feat(consenus-types): more cleanup (#1393)
  • feat(consensus-types): Hardtype BeaconBlockBody (#1392)
  • chore(deps): bump cometbft api (#1391)
  • feat(cleanup): Create DefaultDepInjectConfig (#1390)
  • feat(state-processor): ForkDataT generic (#1389)
  • feat(node-core): Allow Depinjecting custom components. (#1388)
  • chore(node-builder): depinject state processor (#1387)
  • chore(node-builder): depinject payload builder (#1386)
  • feat(events): Generalize event struct (#1384)
  • chore(node-builder): depinject beacon-deposit-contract (#1385)
  • feat(validator): minor cleanup (#1382)
  • feat(inactivity-leak): add chainspec constants (#1383)
  • feat(ci): run e2e on their own runner (#1380)
  • refactor(validator): Forkchoice update logic should be more consolidated (#1373)
  • Update cl-seeds.txt (#1368)
  • chore(node-builder): depinject execution-engine (#1377)
  • chore(cli): goland is a rug, i love cursor <3 (#1379)
  • chore(cli): cleanup (#1378)
  • chore(cli): init mod/cli (#1375)
  • Update cl-seeds.txt (#1370)
  • chore(seeds): Add nodeinfra seeds (#1372)
  • Add Nodes.Guru seeds (#1374)
  • Update el-bootnodes.txt (#1371)
  • chore(node): refactor builder -> core, make node a type and builder build a node (#1367)
  • feat(testnet): collect premined-deposits
  • feat(testnet): Update config.toml
  • chore(genesis): update app version
  • chore(testnet): add seed and bootnodes
  • chore(semver): start v0.2.0-alpha.1 release cycle

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.1-linux-amd64
arm64 beacond-v0.2.0-alpha.1-linux-arm64
arm64 beacond-v0.2.0-alpha.1-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit

v0.2.0-alpha.0

06 Jun 23:45
Compare
Choose a tag to compare

image

Summary

This release focus on bug fixes and stability improvements surrounding block building and the state transition lifecycle.
It is the recommended executable for bartio-beacon-80084 genesis and state breaking with respect to v0.1.0-alpha.1.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Priority
Payload Builders / Validators Required
Non-Payload Builders / Full Nodes Required

What's Changed

New Contributors

Full Changelog: v0.1.0-alpha.1...v0.2.0-alpha.0

Binaries

System Architecture Binary PGP Signature
amd64 beacond-v0.2.0-alpha.0-linux-amd64
arm64 beacond-v0.2.0-alpha.0-linux-arm64
arm64 beacond-v0.2.0-alpha.0-darwin-arm64
System Option - Resource
Docker berachain/beacon-kit