Skip to content

Releases: hyperledger/besu

22.4.0

04 May 07:52
5ec9de8
Compare
Choose a tag to compare

Breaking Changes

  • Version 22.4.x will be the last series to support Java 11. Version 22.7.0 will require Java 17 to build and run.
  • In the Besu EVM Library all references to SHA3 have been renamed to the more accurate name Keccak256, including class names and comment. #3749
  • Removed the Gas object and replaced it with a primitive long #3674
  • Column family added for backward sync #3638
    • Note that this added column family makes this a one-way upgrade. That is, once you upgrade your db to this version, you cannot roll back to a previous version of Besu.

Bug Fixes

  • Fix nullpointer on snapsync #3773
  • Introduce RocksDbSegmentIdentifier to avoid changing the storage plugin #3755

Download Links

22.4.0-RC2

28 Apr 09:26
32fd347
Compare
Choose a tag to compare
22.4.0-RC2 Pre-release
Pre-release

22.4.0-RC2

Breaking Changes

  • In the Besu EVM Library all references to SHA3 have been renamed to the more accurate name Kecack256, including class names and comment. #3749
  • Column family added for backward sync #3638
    • Note that this added column family makes this a one-way upgrade. That is, once you upgrade your db to this version, you cannot roll back to a previous version of Besu.

Additions and Improvements

  • Onchain node permissioning
    • Log the enodeURL that was previously only throwing an IllegalStateException during the isPermitted check #3697,
    • Fail startup if node permissioning smart contract version does not match #3765
  • [EXPERIMENTAL] Add snapsync --sync-mode="X_SNAP" (only as client) #3710
  • Adapt Fast sync, and Snap sync, to use finalized block, from consensus layer, as pivot after the Merge #3506
  • Add IPC JSON-RPC interface (BSD/MacOS and Linux only) #3695

Download Links

22.4.0-RC1

04 Apr 18:24
Compare
Choose a tag to compare
22.4.0-RC1 Pre-release
Pre-release

Bug Fixes

  • Flexible Privacy Precompile handles null payload ID #3664
  • Subcommand blocks import throws execption #3646

Breaking Changes

Additions and Improvements

  • Unit tests are now executed with JUnit5 #3620

Download Links

22.1.3

31 Mar 04:48
917243f
Compare
Choose a tag to compare

Breaking Changes

  • Remove the experimental flag for bonsai tries CLI options --data-storage-format and --bonsai-maximum-back-layers-to-load #3578
  • Column family added for backward sync #3532
    • Note that this added column family makes this a one-way upgrade. That is, once you upgrade your db to this version, you cannot roll back to a previous version of Besu.

Deprecations

  • --tx-pool-hashes-max-size is now deprecated and has no more effect and it will be removed in a future release.

Additions and Improvements

  • Tune transaction synchronization parameter to adapt to mainnet traffic #3610
  • Improve eth/66 support #3616
  • Avoid reprocessing remote transactions already seen #3626
  • Upgraded jackson-databind dependency version #3647

Download Links

22.1.2

16 Mar 05:56
aca1cb2
Compare
Choose a tag to compare

Additions and Improvements

  • Execution layer (The Merge):
    • Execution specific RPC endpoint #3378
    • Adds JWT authentication to Engine APIs
    • Supports kiln V2.1 spec
  • Tracing APIs
    • new API methods: trace_rawTransaction, trace_get, trace_callMany
    • added revertReason to trace APIs including: trace_transaction, trace_get, trace_call, trace_callMany, and trace_rawTransaction
  • Allow mining beneficiary to transition at specific blocks for ibft2 and qbft consensus mechanisms. #3115
  • Return richer information from the PrecompiledContract interface. #3546

Bug Fixes

  • Reject locally-sourced transactions below the minimum gas price when not mining. #3397
  • Fixed bug with contract address supplied to debug_accountAt #3518

Download Links

22.1.1

25 Feb 00:05
d7644c6
Compare
Choose a tag to compare

Additions and Improvements

  • Allow optional RPC methods that bypass authentication #3382
  • Execution layer (The Merge):
    • Extend block creation and mining to support The Merge #3412
    • Backward sync #3410
    • Extend validateAndProcessBlock to return an error message in case of failure, so it can be returned to the caller of ExecutePayload API #3411
    • Persist latest finalized block #2913
    • Add PostMergeContext, and stop syncing after the swith to PoS #3453
    • Add header validation rules needed to validate The Merge blocks #3454
    • Add core components: controller builder, protocol scheduler, coordinator, block creator and processor. #3461
    • Execution specific RPC endpoint #2914, #3350
  • QBFT consensus algorithm is production ready

Download Links

22.1.0

16 Feb 18:13
b2c457b
Compare
Choose a tag to compare

Changelog

22.1.0

Breaking Changes

  • Plugin API: BlockHeader.getBaseFee() method now returns an optional Wei instead of an optional Long #3065
  • Removed deprecated hash variable protected volatile Hash hash; which was used for private transactions #3110

Additions and Improvements

  • Add support for additional JWT authentication algorithms #3017
  • Represent baseFee as Wei instead of long accordingly to the spec #2785
  • Implements EIP-4399 to repurpose DIFFICULTY opcode after the merge as a source of entropy from the Beacon chain. #3081
  • Re-order external services (e.g JsonRpcHttpService) to start before blocks start processing #3118
  • Stream JSON RPC responses to avoid creating big JSON strings in memory #3076
  • Ethereum Classic Mystique Hard Fork #3256
  • Genesis file parameter blockperiodseconds is validated as a positive integer on startup to prevent unexpected runtime behaviour #3186
  • Add option to require replay protection for locally submitted transactions #1975
  • Update to block header validation for IBFT and QBFT to support London fork EIP-1559 #3251
  • Move into SLF4J as logging facade #3285
  • Changing the order in which we traverse the word state tree during fast sync. This should improve fast sync during subsequent pivot changes.
  • Updated besu-native to version 0.4.3 #3331
  • Refactor synchronizer to asynchronously retrieve blocks from peers, and to change peer when retrying to get a block. #3326
  • Disable RocksDB TTL compactions #3356
  • add a websocket frame size configuration CLI parameter [3368][https://github.com//pull/3379]
  • Add --ec-curve parameter to export/export-address public-key subcommands #3333

Bug Fixes

  • Change the base docker image from Debian Buster to Ubuntu 20.04 #3171 fixes #3045
  • Make 'to' field optional in eth_call method according to the spec #3177
  • Update to log4j 2.17.1. Resolves potential vulnerability only exploitable when using custom log4j configurations that are writable by untrusted users.
  • Fix regression on cors-origin star value
  • Fix for ethFeeHistory accepting hex values for blockCount
  • Fix a sync issue, when the chain downloader incorrectly shutdown when a task in the pipeline is cancelled. #3319
  • add a websocket frame size configuration CLI parameter [3368][https://github.com//pull/3379]
  • Prevent node from peering to itself #3342
  • Fix an IndexOutOfBoundsException exception when getting block from peers. #3304
  • Handle legacy eth64 without throwing null pointer exceptions #3343

Download Links

22.1.0-RC4

31 Jan 03:15
792484a
Compare
Choose a tag to compare
22.1.0-RC4 Pre-release
Pre-release

22.1.0-RC4

Additions and Improvements

  • Updated besu-native to version 0.4.3 #3331

Download Links

https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.0-RC4/besu-22.1.0-RC4.tar.gz
SHA256 f1e34fddf4aad0d6699b38f6bdeff3799255d2c9bfdab0718f5f72bf90b56117
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.0-RC4/besu-22.1.0-RC4.zip
SHA256 f5a2dd72c164fd609963a9f1c3c9993632cf6b7eff85ce6cac95e444a53f2de4

22.1.0-RC3

26 Jan 01:05
e8a6976
Compare
Choose a tag to compare
22.1.0-RC3 Pre-release
Pre-release

22.1.0-RC3

  • Changing the order in which we traverse the word state tree during fast sync. This should improve fast sync during subsequent pivot changes.

22.1.0-RC3 Breaking Changes

  • Removed deprecated hash variable protected volatile Hash hash; which was used for private transactions #3110

Additions and Improvements

  • Genesis file parameter blockperiodseconds is validated as a positive integer on startup to prevent unexpected runtime behaviour #3186
  • Add option to require replay protection for locally submitted transactions #1975
  • Update to block header validation for IBFT and QBFT to support London fork EIP-1559 #3251
  • Move into SLF4J as logging facade #3285

Bug Fixes

  • Fix regression on cors-origin star value
  • Fix for ethFeeHistory accepting hex values for blockCount
  • Fix a sync issue, when the chain downloader incorrectly shutdown when a task in the pipeline is cancelled. #3319

Download Links

https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.0-RC3/besu-22.1.0-RC3.tar.gz
SHA256 fb521c64529b5d19cc8121f91a14087a89a814a83ea1f372f15c0ebdba01bb3a
https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.1.0-RC3/besu-22.1.0-RC3.zip
SHA256 f0bcad0275f15078dad1dcb87f49e7c86d754e4346a06e8ac2f9a690c4b8c088

21.10.9

19 Jan 19:25
8f465c0
Compare
Choose a tag to compare

21.10.9

Bug Fixes

  • Fix regression on cors-origin star value
  • Fix for ethFeeHistory accepting hex values for blockCount

Full Changelog: 21.10.8...21.10.9

besu-21.10.9.tar.gz a4b85ba72ee73017303e4b2f0fdde84a87d376c2c17fdcebfa4e34680f52fc71
besu-21.10.9.zip c3ba3f07340fa80064ba7c06f2c0ec081184e000f9a925d132084352d0665ef9