Hi Christian,

TL;DR: The PR is not blocked. Any of the remaining 44 committers can
approve it. We simply chose not to approve it in its current state.

On 28.10.2025 06:51, Christian Grobmeier wrote:
> So, I didn't see many valid reasons why the PR should not be merged.
> I understand from Piotr that the PR is not complete, and other
> places should be changed, and Gary volunteers to do so.
> 
> The question now is: who decides what is merged?
> Rejecting a PR is an effective -1.
> 
> At the ASF, we rarely vote -1 on code changes. Doing so usually has
> strong reasons. It always leads to problems (or almost), because it
> leads to the question of who owns the codebase.


You raise a good point and this is something worth clarifying. The
branch protection rules we currently use are intentionally very
lightweight. A pull request can be merged when:

- It receives one approval from any of the 47 people with write access.
  Reviews requesting changes do not count toward approvals nor increase
  the required number. Authors cannot approve their own PRs.
  Approvals don't expire, when new commits are pushed to the PR.
- All review conversations are resolved. This can be done by any
  committer, including the author. Resolving a conversation requires no
  additional actions, although it is generally courteous to either apply
  the suggestion or briefly explain why it was not.

Regarding the use of `-1`: within the PMC, some members use it both
informally to express disapproval and strictly as a technical veto.
Volkan and I do not use `-1` as shorthand; when we use it, we mean it as
a formal veto, which has happened only a few times over the years.
Gary’s PR is not such a case. We are simply not satisfied with its
current content and therefore are not willing to approve it. That still
leaves 44 others who can approve it. :-)


> This question arose in earlier versions of Log4j and led to a
> technical deadlock.
> 
> What would you do if I merged this PR?
> Would it be acceptable for you?
> 
> I previously said it was fine to merge it (ignoring Piotr's new
> information for now). Why do you think I didn't do it right away?
> 
> What would you say if Matt had merged it, even when Piotr and you
> had concerns?


Both you and Matt can approve the PR, after which any committer may
merge it. We’re all adults, we won’t throw a tantrum if things don’t go
our way. However, it would understandably leave a bitter aftertaste,
because it would force us to either accept the PR as-is or hope for a
follow-up that may never come. Ironically, we tend to have smoother
collaboration with external contributors, even when we ask them to
follow conventions (like preferring “setters“ over ”withers”) that none
of us feels strongly about.

Using Jarek’s metaphor, Log4j is like a puppy: fun to play with, but
someone still has to do the less *enjoyable* chores. Over the past two
years, most of those (answering user issues, doing code reviews,
handling recurring questions like “PatternLayout suffers from CRLF
injection”) have fallen mostly on Volkan and me.

Some of you know I hit a motivational low in April–May when Volkan
wasn’t available to review my PRs and we were stuck releasing 2.25.0.
Since then, he and I have worked out a sort of shared custody plan,
which helps.

Piotr

Reply via email to