Skip to content

Qbft block type#8142

Merged
jframe merged 28 commits intobesu-eth:mainfrom
jframe:qbft_modulisation_block
Feb 4, 2025
Merged

Qbft block type#8142
jframe merged 28 commits intobesu-eth:mainfrom
jframe:qbft_modulisation_block

Conversation

@jframe
Copy link
Copy Markdown
Contributor

@jframe jframe commented Jan 21, 2025

PR description

Adds a specific QBFT block type, decoupling this type from the Ethereum block so that QBFT can be used for other blocks e.g. Could be used for a beacon block on a L2.

This PR still uses the Ethereum block header a follow on PR will change this to keep this PR smaller.

Changes

  • Introduced a qbft block type replacing the Ethereum block type. Note the Ethereum block header is still being used for now.
  • Created services/type interfaces in qbft core for operations that need to be performed on the block by qbft such as validation, encoding, importing, creating etc.
  • Added adaptors to the main qbft module to allow the use of Besu classes and services as qbft core types for use in the qbft core module

Fixed Issue(s)

Thanks for sending a pull request! Have you done the following?

  • Checked out our contribution guidelines?
  • Considered documentation and added the doc-change-required label to this PR if updates are required.
  • Considered the changelog and included an update if required.
  • For database changes (e.g. KeyValueSegmentIdentifier) considered compatibility and performed forwards and backwards compatibility tests

Locally, you can run these tests to catch failures early:

  • unit tests: ./gradlew build
  • acceptance tests: ./gradlew acceptanceTest
  • integration tests: ./gradlew integrationTest
  • reference tests: ./gradlew ethereum:referenceTests:referenceTests

jframe added 20 commits January 13, 2025 13:08
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
@jframe jframe requested a review from usmansaleem January 23, 2025 05:37
@jframe jframe marked this pull request as ready for review January 23, 2025 05:38
Copy link
Copy Markdown
Contributor

@usmansaleem usmansaleem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - very minor nitpick which can be ignored.

…sactions as it was before

Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
@jframe jframe enabled auto-merge (squash) February 4, 2025 05:31
@jframe jframe merged commit 4dbb723 into besu-eth:main Feb 4, 2025
@jframe jframe deleted the qbft_modulisation_block branch February 4, 2025 05:41
pullurib pushed a commit to pullurib/besu that referenced this pull request Feb 6, 2025
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants