No way to land a series of branches at once

Bug #1229309 reported by Aaron Bentley
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
jenkins-launchpad-plugin
New
Undecided
Unassigned

Bug Description

autoland refuses to land a branch if it has an unmerged prerequisite.

This may seem like a useful safeguard at first glance, but in fact, most of the time there is no need to land the prerequisite branch separately from the follow-on branch. Typically, prerequisites happen because a piece of work gets divided into several branches to make review easier. While it is possible to land the branches separately, there's no value in it. So removing this check or making it optional would be useful.

Revision history for this message
Sergio Schvezov (sergiusens) wrote : Re: [Bug 1229309] [NEW] No way to land a series of branches at once

If it really isn't a prereq I think it just shouldn't be listed as one.

On Mon, Sep 23, 2013 at 2:21 PM, Aaron Bentley
<email address hidden>wrote:

> Public bug reported:
>
> autoland refuses to land a branch if it has an unmerged prerequisite.
>
> This may seem like a useful safeguard at first glance, but in fact, most
> of the time there is no need to land the prerequisite branch separately
> from the follow-on branch. Typically, prerequisites happen because a
> piece of work gets divided into several branches to make review easier.
> While it is possible to land the branches separately, there's no value
> in it. So removing this check or making it optional would be useful.
>
> ** Affects: jenkins-launchpad-plugin
> Importance: Undecided
> Status: New
>
> --
> You received this bug notification because you are a member of Product
> Strategy Quality Team, which is subscribed to jenkins-launchpad-plugin.
> https://bugs.launchpad.net/bugs/1229309
>
> Title:
> No way to land a series of branches at once
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/jenkins-launchpad-plugin/+bug/1229309/+subscriptions
>

Revision history for this message
Aaron Bentley (abentley) wrote :

On 13-09-23 02:14 PM, Sergio Schvezov wrote:
> If it really isn't a prereq I think it just shouldn't be listed as one.

The landing of the first branch isn't a prerequisite, but the *review*
of the first branch is. Because the second branch contains all the
changes in the first branch, landing the second branch has the effect of
landing the first. But this means that the first branch must be ready
to land before the second branch can be landed.

Marking the first branch as a prerequisite signals to Launchpad that its
changes should be omitted from the diff of the second. This removes
redundancy from the diff, makes review clearer and the diff shorter.
Without it, splitting a piece of work into two branches will rarely have
the desired effect of dividing the work into digestible chunks.

Revision history for this message
Sergio Schvezov (sergiusens) wrote :

On Mon, Sep 23, 2013 at 3:44 PM, Aaron Bentley
<email address hidden>wrote:

> On 13-09-23 02:14 PM, Sergio Schvezov wrote:
> > If it really isn't a prereq I think it just shouldn't be listed as one.
>
> The landing of the first branch isn't a prerequisite, but the *review*
> of the first branch is. Because the second branch contains all the
> changes in the first branch, landing the second branch has the effect of
> landing the first. But this means that the first branch must be ready
> to land before the second branch can be landed.
>

This makes a lot of sense.

Marking the first branch as a prerequisite signals to Launchpad that its
> changes should be omitted from the diff of the second. This removes
> redundancy from the diff, makes review clearer and the diff shorter.
> Without it, splitting a piece of work into two branches will rarely have
> the desired effect of dividing the work into digestible chunks.
>

So the jenkins launchpad plugin should look at this and only merge the
parent to these prereqs.

I have a side question, does launchpad figure this out and mark the other
branches as merged?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.