Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Context

Inevitably, there will be a need to release immediately, regardless of plans. Should an emergency, critical bug, or security issue (or any matter of that sort) arise, the following process will govern the release

Proposal for an off-cycle release process.

Feedback is welcome.

Context

The Merge exposed some problems with the current Besu release process when it comes to critical bugs or hotfixes. Multiple off-cycle and cherry-picked releases caused frustration for contributors and confusion for some users. This document intends to create a proposal for a new hotfix (off-cycle) release process.

Process Proposal

Off-cycle releases - a new release category.


An off-cycle release is defined as: 

  • A release outside of the scheduled times here
  • A release not on the typical Wednesday or Thursday slots
  • A cherry-picked release (not off main branch)

...

  • Any besu contributor may bring forth the need for an off-cycle release
    • including justification of why the release is warranted
    • via the besu-contributors channel in Discord
    Ideally, consensus is reached
  • Scope for the release also needs to be agreed.
    • via the besu-release channel in Discord
  • Ideally, consensus is reached. Allow a 48 hour voting period to allow for objections. 
    • Justification must be given if objecting to the release
    • If there are no objections
    If the contributor that brought forth the need has the support of one external group (defined as a contributor outside of their own organization, i.e. ConsenSys)
    • , the release can continue at an agreed upon time
  • If no consensus is reached after 24 hours, a singular organization or group of contributors may propose a release, and request approval following normal PR review process
    • .
    • Any objection and the justification given must be seriously considered and weighed against the reasons for the release.
    • This discussion must happen in the besu-release channel in Discord.

Justification for release (examples)Justification

  • critical bug affecting a number of users which requires a patch
  • regular release process will not address the issue in time
  • urgent security issue discovered

Justification for objection (examples)

  • technology X introduced is bad for Y reasons