I'm not seeing any objections to the general idea.

On Tuesday I'll post a draft of the vote proposal to this thread... then if
everyone is happy (translation: nobody says "I'm not happy") I'll start the
vote on Wednesday 3rd... usual 72h but I'll probably wait for Monday 9th
Jan before closing (unless we have evidence of a lack of consensus after
72h)

Assuming the vote is successfully, I'll raise the INFRA tickets and we can
hopefully have an RC a couple of days later.

WDYT?

- Stephen
On Thu 29 Dec 2016 at 11:18, Stephen Connolly <
stephen.alan.conno...@gmail.com> wrote:

> On ASF infra, our master branch is supposed to be a protected branch and
> thus cannot be reset or force-pushed without an INFRA ticket.
>
> If we want to reset our master branch in order to clean out the history of
> the many changes and reverts to and fro etc, we thus need an INFRA ticket
> raised.
>
> INFRA should not act on such a ticket without the results of a vote of the
> committers that has at least three binding votes from the PMC (i.e. the
> majority of votes cast must be in favour and at least three PMC members
> must have voted in favour)
>
> Votes are a great way to *confirm* consensus, but a horrible way to build
> a community or establish consensus. We should only ever have a vote thread
> once the consensus seems to be established.
>
> To establish consensus we use a discuss thread.
>
> Please refrain from assigning blame, we want to grow our community not
> shrink it. The shorty endorphin rush you get from assigning blame or
> performing The Dance Of I Told You So™ will require repeated hits to
> maintain which will only lead to a more toxic community.
>
> We have not been good at maintaining our CI infrastructure:
>
> * As a consequence, some people have been developing on master rather than
> on branches in order to ensure that their development gets the benefit of
> the integration tests
>
> * This has lead to a lot of micro commits and effectively revert commits
> on master making it hard to track what actually has changed and what has
> actually been fixed.
>
> * Additionally `git blame` probably now could end up confusing people
> trying to understand the rationale for some changes
>
> We have not been good at maintaining our Integration tests:
>
> * As a consequence it has been hard to get our CI infrastructure working
> effectively
>
> * As a consequence, people have been forced to leverage a single branch
> for CI testing
>
> We have not been good at developing bigger changes in a branch
>
> etc.
>
> I could go on.
>
> My belief is that confidence in 3.4.0 has been eroded.
>
> I propose that we reset master back
> to 737de43e392fc15a0ce366db98d70aa18b3f6c03, with an analogous reset of
> master for the integration tests, and then immediately commit a dummy
> commit so that nobody accidentally does a fast-forward push.
>
> Then we can cherry pick the changes that were on the old master that we
> want to have in 3.4.0
>
> This will probably also involve:
>
> * Fixing the CI infrastructure (I favour using a pipeline multibranch
> project so that branch development is easier,
> https://builds.apache.org/job/maven-jenkinsfile/ is where I have been
> trying to prototype this... currently failing because "windows")
>
> * Switching to a culture of branch / PR development for all committers
>
> * Better providing rationale for changes, e.g. we need a succinct
> description of the actual regression between 2.x and 3.x in resolution of
> dependencies of plugins as well as actual easy to understand tests that
> demonstrate the behaviour *and* show that it is an actual regression
>
> * etc
>
> But the first step in that would be to reset master...
>
> So...
>
> Is 737de43e392fc15a0ce366db98d70aa18b3f6c03 the correct hash to reset to?
>
> What is the correct hash for the integration tests?
>
> Do we want to do this?
>
> What else should we change about our processes to prevent the need to do
> this again?
>
> Should we maybe just drop 3.4.x and jump to 3.5.x also in order to signal
> that this was a reboot version and any 3.4.x stuff is thus easy to detect
> and filter?
>
> Save your +1/-1's for actual vote threads, we need to establish a
> consensus first... then in a couple of days, if it looks like we have a
> consensus I will call a vote.
>
> -Stephen
>
-- 
Sent from my phone

Reply via email to