Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joshua Harlow
Another idea I had:

It appears like a lot of the current hacking issues can be automatically
fixed.

So it would be really nice if the hacking tool included a fix for most of
the problems it finds.

I started https://review.openstack.org/#/c/68988/ but don't have the time
to do a full tool, but it would be nice if the hacking tool/proposal
bot/other would propose fixes by itself for most of the 'autofixable'
issues (like imports being in the wrong order or not in the right
grouping).

That'd help in avoiding a ton of less useful commits to fix those same
issues manually.

-Josh

-Original Message-
From: Sean Dague 
Reply-To: "OpenStack Development Mailing List (not for usage questions)"

Date: Monday, June 16, 2014 at 5:15 AM
To: "OpenStack Development Mailing List (not for usage questions)"

Subject: [openstack-dev] revert hacking to 0.8 series

>Hacking 0.9 series was released pretty late for Juno. The entire check
>queue was flooded this morning with requirements proposals failing pep8
>because of it (so at 6am EST we were waiting 1.5 hrs for a check node).
>
>The previous soft policy with pep8 updates was that we set a pep8
>version basically release week, and changes stopped being done for style
>after first milestone.
>
>I think in the spirit of that we should revert the hacking requirements
>update back to the 0.8 series for Juno. We're past milestone 1, so
>shouldn't be working on style only fixes at this point.
>
>Proposed review here - https://review.openstack.org/#/c/100231/
>
>I also think in future hacking major releases need to happen within one
>week of release, or not at all for that series.
>
>   -Sean
>
>-- 
>Sean Dague
>http://dague.net
>


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joe Gordon
On Mon, Jun 16, 2014 at 2:54 PM, Angus Salkeld 
wrote:

> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> On 17/06/14 02:46, Ben Nemec wrote:
> > On 06/16/2014 08:37 AM, Thierry Carrez wrote:
> >> Sean Dague wrote:
> >>> Hacking 0.9 series was released pretty late for Juno. The entire
> >>> check queue was flooded this morning with requirements proposals
> >>> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
> >>> for a check node).
> >>>
> >>> The previous soft policy with pep8 updates was that we set a
> >>> pep8 version basically release week, and changes stopped being
> >>> done for style after first milestone.
> >>>
> >>> I think in the spirit of that we should revert the hacking
> >>> requirements update back to the 0.8 series for Juno. We're past
> >>> milestone 1, so shouldn't be working on style only fixes at this
> >>> point.
> >>>
> >>> Proposed review here - https://review.openstack.org/#/c/100231/
> >>>
> >>> I also think in future hacking major releases need to happen
> >>> within one week of release, or not at all for that series.
> >
> >> We may also have reached a size where changing style rules is just
> >> too costly, whatever the moment in the cycle. I think it's good
> >> that we have rules to enforce a minimum of common style, but the
> >> added value of those extra rules is limited, while their impact on
> >> the common gate grows as we add more projects.
> >
> > A few thoughts:
> >
> > 1) I disagree with the proposition that hacking updates can only
> > happen in the first week after release.  I get that there needs to be
> > a cutoff, but I don't think one week is reasonable.  Even if we
> > release in the first week, you're still going to be dealing with
> > hacking updates for the rest of the cycle as projects adopt the new
> > rules at their leisure.  I don't like retroactively applying milestone
> > 1 as a cutoff either, although I could see making that the policy
> > going forward.
>
> Can't we move to a mode of enabling rules instead of ignoring them?
> If we did this in tox.ini then it wouldn't matter when you release
> hacking.
>
> [hacking]
> errors = H306,...
> ignore = H101
>
> So if you upgraded hacking you would not get the new checks generating
> errors, but only warnings.
>

This is out side the scope of hacking in and in the domain of the flake8
project, although we can easily contribute upstream to it.

As for warnings, I assume you mean we log the issue but don't gate on it, I
don't think anyone would pay attention to them, so not sure what the value
is.


>
> I guess the list of rules to error on would get big, but maybe we could
> have
> some short cuts (H3*,H2*)?
>
> At least the projects are a bit more in control of what rule they add.


> - -Angus
>
> >
> > 2) Given that most of the changes involved in fixing the new failures
> > are trivial, I think we should encourage combining the fixes into one
> > commit.  We _really_ don't need separate commits to fix H305 and H307.
> >  This doesn't help much with the reviewer load, but it should reduce
> > the gate load somewhat.  It violates the one change-one commit rule,
> > but "A foolish consistency..."
> >
> > 3) We should start requiring specs for all new hacking rules to make
> > sure we have consensus (I think oslo-specs is the place for this).  2
> > +2's doesn't really accomplish that.  We also may need to raise the
> > bar for inclusion of new rules - while I agree with all of the new
> > ones added in hacking .9, I wonder if some of them are really necessary.
> >
> > 4) I don't think we're at a point where we should freeze hacking
> > completely, however.  The import grouping and long line wrapping
> > checks in particular are things that reviewers have to enforce today,
> > and that has a significant, if less well-defined, cost too.  If we're
> > really going to say those rules can't be enforced by hacking then we
> > need to remove them from our hacking guidelines and start the long
> > process of educating reviewers to stop requiring them.  I'd rather
> > just deal with the pain of adding them to hacking one time and never
> > have to think about them again.  I'm less convinced the other two that
> > were added in .9 are necessary, but in any case these are discussions
> > that should happen in spec reviews going forward.
> >
> > 5) We may want to come up with some way to globally disable pep8
> > checks we don't want to enforce, since we don't have any control over
> > that but probably don't want to just stop updating pep8.  That could
> > make the pain of these updates much less.
> >
> > I could probably come up with a few more, but this is already too
> > wall-of-texty for my tastes. :-)
> >
> > -Ben
> >
> > ___
> > OpenStack-dev mailing list
> > OpenStack-dev@lists.openstack.org
> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> >
>
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1
> Comment: Using GnuPG with T

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joe Gordon
On Mon, Jun 16, 2014 at 2:56 PM, Doug Hellmann 
wrote:

> On Mon, Jun 16, 2014 at 2:23 PM, Joe Gordon  wrote:
> >
> > On Jun 16, 2014 9:44 AM, "Ben Nemec"  wrote:
> >>
> >> -BEGIN PGP SIGNED MESSAGE-
> >> Hash: SHA1
> >>
> >> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
> >> > Sean Dague wrote:
> >> >> Hacking 0.9 series was released pretty late for Juno. The entire
> >> >> check queue was flooded this morning with requirements proposals
> >> >> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
> >> >> for a check node).
> >
> > This is a general issue with global requirements, the number of jobs we
> run
> > and the number of available nodes. Let's solve the general case.
> >
> >> >>
> >> >> The previous soft policy with pep8 updates was that we set a
> >> >> pep8 version basically release week, and changes stopped being
> >> >> done for style after first milestone.
> >> >>
> >> >> I think in the spirit of that we should revert the hacking
> >> >> requirements update back to the 0.8 series for Juno. We're past
> >> >> milestone 1, so shouldn't be working on style only fixes at this
> >> >> point.
> >> >>
> >> >> Proposed review here - https://review.openstack.org/#/c/100231/
> >> >>
> >> >> I also think in future hacking major releases need to happen
> >> >> within one week of release, or not at all for that series.
> >> >
> >> > We may also have reached a size where changing style rules is just
> >> > too costly, whatever the moment in the cycle. I think it's good
> >> > that we have rules to enforce a minimum of common style, but the
> >> > added value of those extra rules is limited, while their impact on
> >> > the common gate grows as we add more projects.
> >>
> >> A few thoughts:
> >>
> >> 1) I disagree with the proposition that hacking updates can only
> >> happen in the first week after release.  I get that there needs to be
> >> a cutoff, but I don't think one week is reasonable.  Even if we
> >> release in the first week, you're still going to be dealing with
> >> hacking updates for the rest of the cycle as projects adopt the new
> >> rules at their leisure.  I don't like retroactively applying milestone
> >> 1 as a cutoff either, although I could see making that the policy
> >> going forward.
> >>
> >
> > ++
> >
> >> 2) Given that most of the changes involved in fixing the new failures
> >> are trivial, I think we should encourage combining the fixes into one
> >> commit.  We _really_ don't need separate commits to fix H305 and H307.
> >>  This doesn't help much with the reviewer load, but it should reduce
> >> the gate load somewhat.  It violates the one change-one commit rule,
> >> but "A foolish consistency..."
> >>
> >
> > ++
> >
> >> 3) We should start requiring specs for all new hacking rules to make
> >> sure we have consensus (I think oslo-specs is the place for this).  2
> >> +2's doesn't really accomplish that.  We also may need to raise the
> >> bar for inclusion of new rules - while I agree with all of the new
> >> ones added in hacking .9, I wonder if some of them are really necessary.
> >>
> >
> > I would rather just have more folks review hacking patches then add a
> specs
> > repo. A specs repo is overkill, IMHO, hacking doesn't have that many
> patches
> > per cycle. In general when adding a rule to hacking it has to already be
> in
> > HACKING.rst and/or needs a ML post.
>
> You wouldn't need a new repo. Hacking is part of the Oslo program, so
> you would use oslo-specs just like the other Oslo projects.
>
> The process you describe is what we've done historically, but as we
> standardize on specs repos we will want to eventually reconsider it.
> If the point of posting to the mailing list is to encourage
> discussion, then it seems like that step could be replaced with a
> spec.
>

Perhaps, I still am not sure how that really helps.


>
> Doug
>
> >
> >> 4) I don't think we're at a point where we should freeze hacking
> >> completely, however.  The import grouping and long line wrapping
> >> checks in particular are things that reviewers have to enforce today,
> >> and that has a significant, if less well-defined, cost too.  If we're
> >> really going to say those rules can't be enforced by hacking then we
> >> need to remove them from our hacking guidelines and start the long
> >> process of educating reviewers to stop requiring them.  I'd rather
> >> just deal with the pain of adding them to hacking one time and never
> >> have to think about them again.  I'm less convinced the other two that
> >> were added in .9 are necessary, but in any case these are discussions
> >> that should happen in spec reviews going forward.
> >>
> >> 5) We may want to come up with some way to globally disable pep8
> >> checks we don't want to enforce, since we don't have any control over
> >> that but probably don't want to just stop updating pep8.  That could
> >> make the pain of these updates much less.
> >>
> >> I could probably come up with a few more, but this i

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Ben Nemec
On 06/16/2014 05:46 PM, Ben Nemec wrote:
> On 06/16/2014 04:46 PM, Joe Gordon wrote:
>> On Mon, Jun 16, 2014 at 2:33 PM, Sean Dague  wrote:
>>
>>> On 06/16/2014 05:06 PM, Ben Nemec wrote:
 On 06/16/2014 12:01 PM, Sean Dague wrote:
> On 06/16/2014 12:44 PM, Ben Nemec wrote:
>> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>>> Sean Dague wrote:
 Hacking 0.9 series was released pretty late for Juno. The
 entire check queue was flooded this morning with requirements
 proposals failing pep8 because of it (so at 6am EST we were
 waiting 1.5 hrs for a check node).

 The previous soft policy with pep8 updates was that we set a
 pep8 version basically release week, and changes stopped
 being done for style after first milestone.

 I think in the spirit of that we should revert the hacking
 requirements update back to the 0.8 series for Juno. We're
 past milestone 1, so shouldn't be working on style only fixes
 at this point.

 Proposed review here -
 https://review.openstack.org/#/c/100231/

 I also think in future hacking major releases need to happen
 within one week of release, or not at all for that series.
>>
>>> We may also have reached a size where changing style rules is
>>> just too costly, whatever the moment in the cycle. I think it's
>>> good that we have rules to enforce a minimum of common style,
>>> but the added value of those extra rules is limited, while
>>> their impact on the common gate grows as we add more projects.
>>
>> A few thoughts:
>>
>> 1) I disagree with the proposition that hacking updates can only
>> happen in the first week after release.  I get that there needs
>> to be a cutoff, but I don't think one week is reasonable.  Even
>> if we release in the first week, you're still going to be dealing
>> with hacking updates for the rest of the cycle as projects adopt
>> the new rules at their leisure.  I don't like retroactively
>> applying milestone 1 as a cutoff either, although I could see
>> making that the policy going forward.
>>
>> 2) Given that most of the changes involved in fixing the new
>> failures are trivial, I think we should encourage combining the
>> fixes into one commit.  We _really_ don't need separate commits
>> to fix H305 and H307. This doesn't help much with the reviewer
>> load, but it should reduce the gate load somewhat.  It violates
>> the one change-one commit rule, but "A foolish consistency..."

> The challenge is that hacking updates are basically giant merge
> conflict engines. If there is any significant amount of code
> outstanding in a project, landing hacking only changes basically
> means requiring much of the outstanding code to rebase.

> So it's actually expensive in a way that doesn't jump out
> immediately. The cost of landing hacking isn't just the code of
> reviewing the hacking patches, it's also the cost of the extra
> roundtrips on outstanding patches.

 If a project has that many violations of a new hacking rule then I'd
 say they should just leave it disabled.  It already happens and I'd
 rather have that than throw out a rule just because some projects
 haven't been following it.
>>>
>>> That would be fine if the propose bot *also* proposed the tox.ini
>>> ignores, which it does not.
>>>
>>> So it pushes a largely by definition broken patch that consumes
>>> resources, and will require a human to take it over. If a person did
>>> this on a regular basis, we'd have a stern talking to them. Or at least
>>> a light making fun of them.
>>>
>>> It feels like robo auto propose should be limited to the class of things
>>> where the patch is 99% sure to pass.
>>>
>>
>> I feel the same way on this one, for some reason I was originally under the
>> impression that hacking had to manually be rolled out because of the
>> reasons above.
> 
> I wonder if we should just make future hacking checks opt-in.  Normally
> I'd be opposed to that because in general people ignore opt-ins, but we
> seem to have enough people using style changes as low-hanging-fruit to
> get started that it might work in this case.

Whoops, forgot to credit Angus for the suggestion:
http://lists.openstack.org/pipermail/openstack-dev/2014-June/037877.html

> 
>>
>>
>>>
>>> Which I think is really the crux of my distaste for hacking breaking
>>> updates auto proposing to projects.
>>>
>>> -Sean
>>>
>>> --
>>> Sean Dague
>>> http://dague.net
>>>
>>>
>>> ___
>>> OpenStack-dev mailing list
>>> OpenStack-dev@lists.openstack.org
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>>
>>>
>>
> 


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.o

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Ben Nemec
On 06/16/2014 04:46 PM, Joe Gordon wrote:
> On Mon, Jun 16, 2014 at 2:33 PM, Sean Dague  wrote:
> 
>> On 06/16/2014 05:06 PM, Ben Nemec wrote:
>>> On 06/16/2014 12:01 PM, Sean Dague wrote:
 On 06/16/2014 12:44 PM, Ben Nemec wrote:
> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>> Sean Dague wrote:
>>> Hacking 0.9 series was released pretty late for Juno. The
>>> entire check queue was flooded this morning with requirements
>>> proposals failing pep8 because of it (so at 6am EST we were
>>> waiting 1.5 hrs for a check node).
>>>
>>> The previous soft policy with pep8 updates was that we set a
>>> pep8 version basically release week, and changes stopped
>>> being done for style after first milestone.
>>>
>>> I think in the spirit of that we should revert the hacking
>>> requirements update back to the 0.8 series for Juno. We're
>>> past milestone 1, so shouldn't be working on style only fixes
>>> at this point.
>>>
>>> Proposed review here -
>>> https://review.openstack.org/#/c/100231/
>>>
>>> I also think in future hacking major releases need to happen
>>> within one week of release, or not at all for that series.
>
>> We may also have reached a size where changing style rules is
>> just too costly, whatever the moment in the cycle. I think it's
>> good that we have rules to enforce a minimum of common style,
>> but the added value of those extra rules is limited, while
>> their impact on the common gate grows as we add more projects.
>
> A few thoughts:
>
> 1) I disagree with the proposition that hacking updates can only
> happen in the first week after release.  I get that there needs
> to be a cutoff, but I don't think one week is reasonable.  Even
> if we release in the first week, you're still going to be dealing
> with hacking updates for the rest of the cycle as projects adopt
> the new rules at their leisure.  I don't like retroactively
> applying milestone 1 as a cutoff either, although I could see
> making that the policy going forward.
>
> 2) Given that most of the changes involved in fixing the new
> failures are trivial, I think we should encourage combining the
> fixes into one commit.  We _really_ don't need separate commits
> to fix H305 and H307. This doesn't help much with the reviewer
> load, but it should reduce the gate load somewhat.  It violates
> the one change-one commit rule, but "A foolish consistency..."
>>>
 The challenge is that hacking updates are basically giant merge
 conflict engines. If there is any significant amount of code
 outstanding in a project, landing hacking only changes basically
 means requiring much of the outstanding code to rebase.
>>>
 So it's actually expensive in a way that doesn't jump out
 immediately. The cost of landing hacking isn't just the code of
 reviewing the hacking patches, it's also the cost of the extra
 roundtrips on outstanding patches.
>>>
>>> If a project has that many violations of a new hacking rule then I'd
>>> say they should just leave it disabled.  It already happens and I'd
>>> rather have that than throw out a rule just because some projects
>>> haven't been following it.
>>
>> That would be fine if the propose bot *also* proposed the tox.ini
>> ignores, which it does not.
>>
>> So it pushes a largely by definition broken patch that consumes
>> resources, and will require a human to take it over. If a person did
>> this on a regular basis, we'd have a stern talking to them. Or at least
>> a light making fun of them.
>>
>> It feels like robo auto propose should be limited to the class of things
>> where the patch is 99% sure to pass.
>>
> 
> I feel the same way on this one, for some reason I was originally under the
> impression that hacking had to manually be rolled out because of the
> reasons above.

I wonder if we should just make future hacking checks opt-in.  Normally
I'd be opposed to that because in general people ignore opt-ins, but we
seem to have enough people using style changes as low-hanging-fruit to
get started that it might work in this case.

> 
> 
>>
>> Which I think is really the crux of my distaste for hacking breaking
>> updates auto proposing to projects.
>>
>> -Sean
>>
>> --
>> Sean Dague
>> http://dague.net
>>
>>
>> ___
>> OpenStack-dev mailing list
>> OpenStack-dev@lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>>
> 


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Doug Hellmann
On Mon, Jun 16, 2014 at 2:23 PM, Joe Gordon  wrote:
>
> On Jun 16, 2014 9:44 AM, "Ben Nemec"  wrote:
>>
>> -BEGIN PGP SIGNED MESSAGE-
>> Hash: SHA1
>>
>> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>> > Sean Dague wrote:
>> >> Hacking 0.9 series was released pretty late for Juno. The entire
>> >> check queue was flooded this morning with requirements proposals
>> >> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
>> >> for a check node).
>
> This is a general issue with global requirements, the number of jobs we run
> and the number of available nodes. Let's solve the general case.
>
>> >>
>> >> The previous soft policy with pep8 updates was that we set a
>> >> pep8 version basically release week, and changes stopped being
>> >> done for style after first milestone.
>> >>
>> >> I think in the spirit of that we should revert the hacking
>> >> requirements update back to the 0.8 series for Juno. We're past
>> >> milestone 1, so shouldn't be working on style only fixes at this
>> >> point.
>> >>
>> >> Proposed review here - https://review.openstack.org/#/c/100231/
>> >>
>> >> I also think in future hacking major releases need to happen
>> >> within one week of release, or not at all for that series.
>> >
>> > We may also have reached a size where changing style rules is just
>> > too costly, whatever the moment in the cycle. I think it's good
>> > that we have rules to enforce a minimum of common style, but the
>> > added value of those extra rules is limited, while their impact on
>> > the common gate grows as we add more projects.
>>
>> A few thoughts:
>>
>> 1) I disagree with the proposition that hacking updates can only
>> happen in the first week after release.  I get that there needs to be
>> a cutoff, but I don't think one week is reasonable.  Even if we
>> release in the first week, you're still going to be dealing with
>> hacking updates for the rest of the cycle as projects adopt the new
>> rules at their leisure.  I don't like retroactively applying milestone
>> 1 as a cutoff either, although I could see making that the policy
>> going forward.
>>
>
> ++
>
>> 2) Given that most of the changes involved in fixing the new failures
>> are trivial, I think we should encourage combining the fixes into one
>> commit.  We _really_ don't need separate commits to fix H305 and H307.
>>  This doesn't help much with the reviewer load, but it should reduce
>> the gate load somewhat.  It violates the one change-one commit rule,
>> but "A foolish consistency..."
>>
>
> ++
>
>> 3) We should start requiring specs for all new hacking rules to make
>> sure we have consensus (I think oslo-specs is the place for this).  2
>> +2's doesn't really accomplish that.  We also may need to raise the
>> bar for inclusion of new rules - while I agree with all of the new
>> ones added in hacking .9, I wonder if some of them are really necessary.
>>
>
> I would rather just have more folks review hacking patches then add a specs
> repo. A specs repo is overkill, IMHO, hacking doesn't have that many patches
> per cycle. In general when adding a rule to hacking it has to already be in
> HACKING.rst and/or needs a ML post.

You wouldn't need a new repo. Hacking is part of the Oslo program, so
you would use oslo-specs just like the other Oslo projects.

The process you describe is what we've done historically, but as we
standardize on specs repos we will want to eventually reconsider it.
If the point of posting to the mailing list is to encourage
discussion, then it seems like that step could be replaced with a
spec.

Doug

>
>> 4) I don't think we're at a point where we should freeze hacking
>> completely, however.  The import grouping and long line wrapping
>> checks in particular are things that reviewers have to enforce today,
>> and that has a significant, if less well-defined, cost too.  If we're
>> really going to say those rules can't be enforced by hacking then we
>> need to remove them from our hacking guidelines and start the long
>> process of educating reviewers to stop requiring them.  I'd rather
>> just deal with the pain of adding them to hacking one time and never
>> have to think about them again.  I'm less convinced the other two that
>> were added in .9 are necessary, but in any case these are discussions
>> that should happen in spec reviews going forward.
>>
>> 5) We may want to come up with some way to globally disable pep8
>> checks we don't want to enforce, since we don't have any control over
>> that but probably don't want to just stop updating pep8.  That could
>> make the pain of these updates much less.
>>
>> I could probably come up with a few more, but this is already too
>> wall-of-texty for my tastes. :-)
>>
>> - -Ben
>> -BEGIN PGP SIGNATURE-
>> Version: GnuPG v1
>> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>>
>> iQEcBAEBAgAGBQJTnx7wAAoJEDehGd0Fy7uqoYAH/0KmxmR873Qn2Kti7LIEUNp4
>> 1FJaBOX09ItxkkvyNRpcsIQu4fWycm60CckSOLfB7rgxgIjgsVkiZ9puE6oCmj2o
>

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Angus Salkeld
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 17/06/14 02:46, Ben Nemec wrote:
> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>> Sean Dague wrote:
>>> Hacking 0.9 series was released pretty late for Juno. The entire
>>> check queue was flooded this morning with requirements proposals
>>> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
>>> for a check node).
>>>
>>> The previous soft policy with pep8 updates was that we set a
>>> pep8 version basically release week, and changes stopped being
>>> done for style after first milestone.
>>>
>>> I think in the spirit of that we should revert the hacking
>>> requirements update back to the 0.8 series for Juno. We're past
>>> milestone 1, so shouldn't be working on style only fixes at this
>>> point.
>>>
>>> Proposed review here - https://review.openstack.org/#/c/100231/
>>>
>>> I also think in future hacking major releases need to happen
>>> within one week of release, or not at all for that series.
> 
>> We may also have reached a size where changing style rules is just
>> too costly, whatever the moment in the cycle. I think it's good
>> that we have rules to enforce a minimum of common style, but the
>> added value of those extra rules is limited, while their impact on
>> the common gate grows as we add more projects.
> 
> A few thoughts:
> 
> 1) I disagree with the proposition that hacking updates can only
> happen in the first week after release.  I get that there needs to be
> a cutoff, but I don't think one week is reasonable.  Even if we
> release in the first week, you're still going to be dealing with
> hacking updates for the rest of the cycle as projects adopt the new
> rules at their leisure.  I don't like retroactively applying milestone
> 1 as a cutoff either, although I could see making that the policy
> going forward.

Can't we move to a mode of enabling rules instead of ignoring them?
If we did this in tox.ini then it wouldn't matter when you release
hacking.

[hacking]
errors = H306,...
ignore = H101

So if you upgraded hacking you would not get the new checks generating
errors, but only warnings.

I guess the list of rules to error on would get big, but maybe we could have
some short cuts (H3*,H2*)?

At least the projects are a bit more in control of what rule they add.

- -Angus

> 
> 2) Given that most of the changes involved in fixing the new failures
> are trivial, I think we should encourage combining the fixes into one
> commit.  We _really_ don't need separate commits to fix H305 and H307.
>  This doesn't help much with the reviewer load, but it should reduce
> the gate load somewhat.  It violates the one change-one commit rule,
> but "A foolish consistency..."
> 
> 3) We should start requiring specs for all new hacking rules to make
> sure we have consensus (I think oslo-specs is the place for this).  2
> +2's doesn't really accomplish that.  We also may need to raise the
> bar for inclusion of new rules - while I agree with all of the new
> ones added in hacking .9, I wonder if some of them are really necessary.
> 
> 4) I don't think we're at a point where we should freeze hacking
> completely, however.  The import grouping and long line wrapping
> checks in particular are things that reviewers have to enforce today,
> and that has a significant, if less well-defined, cost too.  If we're
> really going to say those rules can't be enforced by hacking then we
> need to remove them from our hacking guidelines and start the long
> process of educating reviewers to stop requiring them.  I'd rather
> just deal with the pain of adding them to hacking one time and never
> have to think about them again.  I'm less convinced the other two that
> were added in .9 are necessary, but in any case these are discussions
> that should happen in spec reviews going forward.
> 
> 5) We may want to come up with some way to globally disable pep8
> checks we don't want to enforce, since we don't have any control over
> that but probably don't want to just stop updating pep8.  That could
> make the pain of these updates much less.
> 
> I could probably come up with a few more, but this is already too
> wall-of-texty for my tastes. :-)
> 
> -Ben
> 
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 

-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJTn2eqAAoJEFrDYBLxZjWo9dkIAJ55WTdVZgIHEFJGp+7Px8jC
FxsBzRvDKeDTN6ONXUtE82G10ru6UR0HNndfhgbdEVQSazdcavbd/Q0AG+tmDyaE
7PBUpJ3bVIQVpJQ9tz/Xo4dqvsZhsOZBo28iLJyShU+VYy05I16WCGpsS0NUlD95
ND78vjwUCNnjbzkOgBjt6V0QsuWpEZynIR6PfRkUJaaT+gFtrhAG7n4aQmgYnJri
9huTnEjyyg9KldlinxLxVP9nk2uVoKD7sfDAvREAjstFeRK4tVcdspB6xxPkfTKA
RDAG1tGT0yvD3VtgqajFlJvImUyV7YN3/zXyXxKeb0301ouWpFeyiSZ1jqsK6Nc=
=/Tmf
-END PGP SIGNATURE-

___
OpenStack-dev mailing list
Op

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joe Gordon
On Mon, Jun 16, 2014 at 2:33 PM, Sean Dague  wrote:

> On 06/16/2014 05:06 PM, Ben Nemec wrote:
> > On 06/16/2014 12:01 PM, Sean Dague wrote:
> >> On 06/16/2014 12:44 PM, Ben Nemec wrote:
> >>> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>  Sean Dague wrote:
> > Hacking 0.9 series was released pretty late for Juno. The
> > entire check queue was flooded this morning with requirements
> > proposals failing pep8 because of it (so at 6am EST we were
> > waiting 1.5 hrs for a check node).
> >
> > The previous soft policy with pep8 updates was that we set a
> > pep8 version basically release week, and changes stopped
> > being done for style after first milestone.
> >
> > I think in the spirit of that we should revert the hacking
> > requirements update back to the 0.8 series for Juno. We're
> > past milestone 1, so shouldn't be working on style only fixes
> > at this point.
> >
> > Proposed review here -
> > https://review.openstack.org/#/c/100231/
> >
> > I also think in future hacking major releases need to happen
> > within one week of release, or not at all for that series.
> >>>
>  We may also have reached a size where changing style rules is
>  just too costly, whatever the moment in the cycle. I think it's
>  good that we have rules to enforce a minimum of common style,
>  but the added value of those extra rules is limited, while
>  their impact on the common gate grows as we add more projects.
> >>>
> >>> A few thoughts:
> >>>
> >>> 1) I disagree with the proposition that hacking updates can only
> >>> happen in the first week after release.  I get that there needs
> >>> to be a cutoff, but I don't think one week is reasonable.  Even
> >>> if we release in the first week, you're still going to be dealing
> >>> with hacking updates for the rest of the cycle as projects adopt
> >>> the new rules at their leisure.  I don't like retroactively
> >>> applying milestone 1 as a cutoff either, although I could see
> >>> making that the policy going forward.
> >>>
> >>> 2) Given that most of the changes involved in fixing the new
> >>> failures are trivial, I think we should encourage combining the
> >>> fixes into one commit.  We _really_ don't need separate commits
> >>> to fix H305 and H307. This doesn't help much with the reviewer
> >>> load, but it should reduce the gate load somewhat.  It violates
> >>> the one change-one commit rule, but "A foolish consistency..."
> >
> >> The challenge is that hacking updates are basically giant merge
> >> conflict engines. If there is any significant amount of code
> >> outstanding in a project, landing hacking only changes basically
> >> means requiring much of the outstanding code to rebase.
> >
> >> So it's actually expensive in a way that doesn't jump out
> >> immediately. The cost of landing hacking isn't just the code of
> >> reviewing the hacking patches, it's also the cost of the extra
> >> roundtrips on outstanding patches.
> >
> > If a project has that many violations of a new hacking rule then I'd
> > say they should just leave it disabled.  It already happens and I'd
> > rather have that than throw out a rule just because some projects
> > haven't been following it.
>
> That would be fine if the propose bot *also* proposed the tox.ini
> ignores, which it does not.
>
> So it pushes a largely by definition broken patch that consumes
> resources, and will require a human to take it over. If a person did
> this on a regular basis, we'd have a stern talking to them. Or at least
> a light making fun of them.
>
> It feels like robo auto propose should be limited to the class of things
> where the patch is 99% sure to pass.
>

I feel the same way on this one, for some reason I was originally under the
impression that hacking had to manually be rolled out because of the
reasons above.


>
> Which I think is really the crux of my distaste for hacking breaking
> updates auto proposing to projects.
>
> -Sean
>
> --
> Sean Dague
> http://dague.net
>
>
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Sean Dague
On 06/16/2014 05:06 PM, Ben Nemec wrote:
> On 06/16/2014 12:01 PM, Sean Dague wrote:
>> On 06/16/2014 12:44 PM, Ben Nemec wrote:
>>> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
 Sean Dague wrote:
> Hacking 0.9 series was released pretty late for Juno. The
> entire check queue was flooded this morning with requirements
> proposals failing pep8 because of it (so at 6am EST we were
> waiting 1.5 hrs for a check node).
>
> The previous soft policy with pep8 updates was that we set a 
> pep8 version basically release week, and changes stopped
> being done for style after first milestone.
>
> I think in the spirit of that we should revert the hacking 
> requirements update back to the 0.8 series for Juno. We're
> past milestone 1, so shouldn't be working on style only fixes
> at this point.
>
> Proposed review here -
> https://review.openstack.org/#/c/100231/
>
> I also think in future hacking major releases need to happen 
> within one week of release, or not at all for that series.
>>>
 We may also have reached a size where changing style rules is
 just too costly, whatever the moment in the cycle. I think it's
 good that we have rules to enforce a minimum of common style,
 but the added value of those extra rules is limited, while
 their impact on the common gate grows as we add more projects.
>>>
>>> A few thoughts:
>>>
>>> 1) I disagree with the proposition that hacking updates can only 
>>> happen in the first week after release.  I get that there needs
>>> to be a cutoff, but I don't think one week is reasonable.  Even
>>> if we release in the first week, you're still going to be dealing
>>> with hacking updates for the rest of the cycle as projects adopt
>>> the new rules at their leisure.  I don't like retroactively
>>> applying milestone 1 as a cutoff either, although I could see
>>> making that the policy going forward.
>>>
>>> 2) Given that most of the changes involved in fixing the new
>>> failures are trivial, I think we should encourage combining the
>>> fixes into one commit.  We _really_ don't need separate commits
>>> to fix H305 and H307. This doesn't help much with the reviewer
>>> load, but it should reduce the gate load somewhat.  It violates
>>> the one change-one commit rule, but "A foolish consistency..."
> 
>> The challenge is that hacking updates are basically giant merge
>> conflict engines. If there is any significant amount of code
>> outstanding in a project, landing hacking only changes basically
>> means requiring much of the outstanding code to rebase.
> 
>> So it's actually expensive in a way that doesn't jump out
>> immediately. The cost of landing hacking isn't just the code of
>> reviewing the hacking patches, it's also the cost of the extra
>> roundtrips on outstanding patches.
> 
> If a project has that many violations of a new hacking rule then I'd
> say they should just leave it disabled.  It already happens and I'd
> rather have that than throw out a rule just because some projects
> haven't been following it.

That would be fine if the propose bot *also* proposed the tox.ini
ignores, which it does not.

So it pushes a largely by definition broken patch that consumes
resources, and will require a human to take it over. If a person did
this on a regular basis, we'd have a stern talking to them. Or at least
a light making fun of them.

It feels like robo auto propose should be limited to the class of things
where the patch is 99% sure to pass.

Which I think is really the crux of my distaste for hacking breaking
updates auto proposing to projects.

-Sean

-- 
Sean Dague
http://dague.net



signature.asc
Description: OpenPGP digital signature
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Ben Nemec
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 06/16/2014 12:01 PM, Sean Dague wrote:
> On 06/16/2014 12:44 PM, Ben Nemec wrote:
>> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>>> Sean Dague wrote:
 Hacking 0.9 series was released pretty late for Juno. The
 entire check queue was flooded this morning with requirements
 proposals failing pep8 because of it (so at 6am EST we were
 waiting 1.5 hrs for a check node).
 
 The previous soft policy with pep8 updates was that we set a 
 pep8 version basically release week, and changes stopped
 being done for style after first milestone.
 
 I think in the spirit of that we should revert the hacking 
 requirements update back to the 0.8 series for Juno. We're
 past milestone 1, so shouldn't be working on style only fixes
 at this point.
 
 Proposed review here -
 https://review.openstack.org/#/c/100231/
 
 I also think in future hacking major releases need to happen 
 within one week of release, or not at all for that series.
>> 
>>> We may also have reached a size where changing style rules is
>>> just too costly, whatever the moment in the cycle. I think it's
>>> good that we have rules to enforce a minimum of common style,
>>> but the added value of those extra rules is limited, while
>>> their impact on the common gate grows as we add more projects.
>> 
>> A few thoughts:
>> 
>> 1) I disagree with the proposition that hacking updates can only 
>> happen in the first week after release.  I get that there needs
>> to be a cutoff, but I don't think one week is reasonable.  Even
>> if we release in the first week, you're still going to be dealing
>> with hacking updates for the rest of the cycle as projects adopt
>> the new rules at their leisure.  I don't like retroactively
>> applying milestone 1 as a cutoff either, although I could see
>> making that the policy going forward.
>> 
>> 2) Given that most of the changes involved in fixing the new
>> failures are trivial, I think we should encourage combining the
>> fixes into one commit.  We _really_ don't need separate commits
>> to fix H305 and H307. This doesn't help much with the reviewer
>> load, but it should reduce the gate load somewhat.  It violates
>> the one change-one commit rule, but "A foolish consistency..."
> 
> The challenge is that hacking updates are basically giant merge
> conflict engines. If there is any significant amount of code
> outstanding in a project, landing hacking only changes basically
> means requiring much of the outstanding code to rebase.
> 
> So it's actually expensive in a way that doesn't jump out
> immediately. The cost of landing hacking isn't just the code of
> reviewing the hacking patches, it's also the cost of the extra
> roundtrips on outstanding patches.

If a project has that many violations of a new hacking rule then I'd
say they should just leave it disabled.  It already happens and I'd
rather have that than throw out a rule just because some projects
haven't been following it.

> 
>> 3) We should start requiring specs for all new hacking rules to
>> make sure we have consensus (I think oslo-specs is the place for
>> this).  2 +2's doesn't really accomplish that.  We also may need
>> to raise the bar for inclusion of new rules - while I agree with
>> all of the new ones added in hacking .9, I wonder if some of them
>> are really necessary.
> 
>> 4) I don't think we're at a point where we should freeze hacking 
>> completely, however.  The import grouping and long line wrapping 
>> checks in particular are things that reviewers have to enforce
>> today, and that has a significant, if less well-defined, cost
>> too.  If we're really going to say those rules can't be enforced
>> by hacking then we need to remove them from our hacking
>> guidelines and start the long process of educating reviewers to
>> stop requiring them.  I'd rather just deal with the pain of
>> adding them to hacking one time and never have to think about
>> them again.  I'm less convinced the other two that were added in
>> .9 are necessary, but in any case these are discussions that
>> should happen in spec reviews going forward.
> 
> I think both of those cases are really nits to the point that they 
> aren't worth enforcing. They won't change the correctness of the
> code. And barely change the readability.

Yeah, I suppose that's my personal dislike of \ line continuations
talking.

I don't like the idea of dropping our import guidelines though - I've
seen code that doesn't follow them and it's not nice to read.  Of
course, I'm horribly biased on that too since I wrote the check.  Then
again, it's something we've been enforcing manually all along, so in
theory it shouldn't be that difficult to fix either.

> 
> There are differences with things like the is None checks, or
> python 3 checks, which change correctness, or prevent subtle bugs.
> But I think we're now getting to a level of cleanliness enforcement
> that t

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joe Gordon
On Jun 16, 2014 10:02 AM, "Sean Dague"  wrote:
>
> On 06/16/2014 12:44 PM, Ben Nemec wrote:
> > On 06/16/2014 08:37 AM, Thierry Carrez wrote:
> >> Sean Dague wrote:
> >>> Hacking 0.9 series was released pretty late for Juno. The entire
> >>> check queue was flooded this morning with requirements proposals
> >>> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
> >>> for a check node).
> >>>
> >>> The previous soft policy with pep8 updates was that we set a
> >>> pep8 version basically release week, and changes stopped being
> >>> done for style after first milestone.
> >>>
> >>> I think in the spirit of that we should revert the hacking
> >>> requirements update back to the 0.8 series for Juno. We're past
> >>> milestone 1, so shouldn't be working on style only fixes at this
> >>> point.
> >>>
> >>> Proposed review here - https://review.openstack.org/#/c/100231/
> >>>
> >>> I also think in future hacking major releases need to happen
> >>> within one week of release, or not at all for that series.
> >
> >> We may also have reached a size where changing style rules is just
> >> too costly, whatever the moment in the cycle. I think it's good
> >> that we have rules to enforce a minimum of common style, but the
> >> added value of those extra rules is limited, while their impact on
> >> the common gate grows as we add more projects.
> >
> > A few thoughts:
> >
> > 1) I disagree with the proposition that hacking updates can only
> > happen in the first week after release.  I get that there needs to be
> > a cutoff, but I don't think one week is reasonable.  Even if we
> > release in the first week, you're still going to be dealing with
> > hacking updates for the rest of the cycle as projects adopt the new
> > rules at their leisure.  I don't like retroactively applying milestone
> > 1 as a cutoff either, although I could see making that the policy
> > going forward.
> >
> > 2) Given that most of the changes involved in fixing the new failures
> > are trivial, I think we should encourage combining the fixes into one
> > commit.  We _really_ don't need separate commits to fix H305 and H307.
> >  This doesn't help much with the reviewer load, but it should reduce
> > the gate load somewhat.  It violates the one change-one commit rule,
> > but "A foolish consistency..."
>
> The challenge is that hacking updates are basically giant merge conflict
> engines. If there is any significant amount of code outstanding in a
> project, landing hacking only changes basically means requiring much of
> the outstanding code to rebase.
>
> So it's actually expensive in a way that doesn't jump out immediately.
> The cost of landing hacking isn't just the code of reviewing the hacking
> patches, it's also the cost of the extra roundtrips on outstanding
patches.

When a project chooses to enforce rules us decoupled with when hacking if
released. So this sounds like a related yet different issue.

>
> > 3) We should start requiring specs for all new hacking rules to make
> > sure we have consensus (I think oslo-specs is the place for this).  2
> > +2's doesn't really accomplish that.  We also may need to raise the
> > bar for inclusion of new rules - while I agree with all of the new
> > ones added in hacking .9, I wonder if some of them are really necessary.
>
> > 4) I don't think we're at a point where we should freeze hacking
> > completely, however.  The import grouping and long line wrapping
> > checks in particular are things that reviewers have to enforce today,
> > and that has a significant, if less well-defined, cost too.  If we're
> > really going to say those rules can't be enforced by hacking then we
> > need to remove them from our hacking guidelines and start the long
> > process of educating reviewers to stop requiring them.  I'd rather
> > just deal with the pain of adding them to hacking one time and never
> > have to think about them again.  I'm less convinced the other two that
> > were added in .9 are necessary, but in any case these are discussions
> > that should happen in spec reviews going forward.
>
> I think both of those cases are really nits to the point that they
> aren't worth enforcing. They won't change the correctness of the code.
> And barely change the readability.
>
> There are differences with things like the is None checks, or python 3
> checks, which change correctness, or prevent subtle bugs. But I think
> we're now getting to a level of cleanliness enforcement that trumps
> functionally working.
>
> > 5) We may want to come up with some way to globally disable pep8
> > checks we don't want to enforce, since we don't have any control over
> > that but probably don't want to just stop updating pep8.  That could
> > make the pain of these updates much less.
>
> Actually, if you look at python novaclient, the doc string checks, which
> are really niggly, and part of hacking are the biggest fails. It's much
> less upstream that's doing this to us.
>
> > I could probably come up w

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Joe Gordon
On Jun 16, 2014 9:44 AM, "Ben Nemec"  wrote:
>
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
> > Sean Dague wrote:
> >> Hacking 0.9 series was released pretty late for Juno. The entire
> >> check queue was flooded this morning with requirements proposals
> >> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
> >> for a check node).

This is a general issue with global requirements, the number of jobs we run
and the number of available nodes. Let's solve the general case.

> >>
> >> The previous soft policy with pep8 updates was that we set a
> >> pep8 version basically release week, and changes stopped being
> >> done for style after first milestone.
> >>
> >> I think in the spirit of that we should revert the hacking
> >> requirements update back to the 0.8 series for Juno. We're past
> >> milestone 1, so shouldn't be working on style only fixes at this
> >> point.
> >>
> >> Proposed review here - https://review.openstack.org/#/c/100231/
> >>
> >> I also think in future hacking major releases need to happen
> >> within one week of release, or not at all for that series.
> >
> > We may also have reached a size where changing style rules is just
> > too costly, whatever the moment in the cycle. I think it's good
> > that we have rules to enforce a minimum of common style, but the
> > added value of those extra rules is limited, while their impact on
> > the common gate grows as we add more projects.
>
> A few thoughts:
>
> 1) I disagree with the proposition that hacking updates can only
> happen in the first week after release.  I get that there needs to be
> a cutoff, but I don't think one week is reasonable.  Even if we
> release in the first week, you're still going to be dealing with
> hacking updates for the rest of the cycle as projects adopt the new
> rules at their leisure.  I don't like retroactively applying milestone
> 1 as a cutoff either, although I could see making that the policy
> going forward.
>

++

> 2) Given that most of the changes involved in fixing the new failures
> are trivial, I think we should encourage combining the fixes into one
> commit.  We _really_ don't need separate commits to fix H305 and H307.
>  This doesn't help much with the reviewer load, but it should reduce
> the gate load somewhat.  It violates the one change-one commit rule,
> but "A foolish consistency..."
>

++

> 3) We should start requiring specs for all new hacking rules to make
> sure we have consensus (I think oslo-specs is the place for this).  2
> +2's doesn't really accomplish that.  We also may need to raise the
> bar for inclusion of new rules - while I agree with all of the new
> ones added in hacking .9, I wonder if some of them are really necessary.
>

I would rather just have more folks review hacking patches then add a specs
repo. A specs repo is overkill, IMHO, hacking doesn't have that many
patches per cycle. In general when adding a rule to hacking it has to
already be in HACKING.rst and/or needs a ML post.

> 4) I don't think we're at a point where we should freeze hacking
> completely, however.  The import grouping and long line wrapping
> checks in particular are things that reviewers have to enforce today,
> and that has a significant, if less well-defined, cost too.  If we're
> really going to say those rules can't be enforced by hacking then we
> need to remove them from our hacking guidelines and start the long
> process of educating reviewers to stop requiring them.  I'd rather
> just deal with the pain of adding them to hacking one time and never
> have to think about them again.  I'm less convinced the other two that
> were added in .9 are necessary, but in any case these are discussions
> that should happen in spec reviews going forward.
>
> 5) We may want to come up with some way to globally disable pep8
> checks we don't want to enforce, since we don't have any control over
> that but probably don't want to just stop updating pep8.  That could
> make the pain of these updates much less.
>
> I could probably come up with a few more, but this is already too
> wall-of-texty for my tastes. :-)
>
> - -Ben
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQEcBAEBAgAGBQJTnx7wAAoJEDehGd0Fy7uqoYAH/0KmxmR873Qn2Kti7LIEUNp4
> 1FJaBOX09ItxkkvyNRpcsIQu4fWycm60CckSOLfB7rgxgIjgsVkiZ9puE6oCmj2o
> Lhe5DhjYA2ROu9h8i0vmzYDnAKeu/WuRGtgyLSElUXeuiLpSrBcEA/03GpkCGiAP
> 1muAkVgv2oxDDwsaLwL7MmFrlZ1MPTP97lAfsfHbwbsOM5YMuPrRz9PirgHPBtTV
> 59UyofCGEBTtJKmJRLzRDZyDwTux5xrrc/cefer5GFLQH0ZbxOU1HHFESyc5wFVJ
> tI/3nPlbFpqCUtgmnQc8k3lX3d2H1Qr9UfCvYlJFTN1TmPmHmK378ioi81HoAVo=
> =tqtf
> -END PGP SIGNATURE-
>
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
___
OpenStack-dev mailing list
OpenS

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Morgan Fainberg
This sounds totally reasonable. +1 to keeping style-specific changes consistent 
across a release.
—
Morgan Fainberg


From: Clint Byrum cl...@fewbar.com
Reply: OpenStack Development Mailing List (not for usage questions) 
openstack-dev@lists.openstack.org
Date: June 16, 2014 at 10:51:31
To: openstack-dev openstack-dev@lists.openstack.org
Subject:  Re: [openstack-dev] revert hacking to 0.8 series  

Excerpts from Sean Dague's message of 2014-06-16 05:15:54 -0700:  
> Hacking 0.9 series was released pretty late for Juno. The entire check  
> queue was flooded this morning with requirements proposals failing pep8  
> because of it (so at 6am EST we were waiting 1.5 hrs for a check node).  
>  
> The previous soft policy with pep8 updates was that we set a pep8  
> version basically release week, and changes stopped being done for style  
> after first milestone.  
>  
> I think in the spirit of that we should revert the hacking requirements  
> update back to the 0.8 series for Juno. We're past milestone 1, so  
> shouldn't be working on style only fixes at this point.  
>  
> Proposed review here - https://review.openstack.org/#/c/100231/  
>  
> I also think in future hacking major releases need to happen within one  
> week of release, or not at all for that series.  
>  

+1. Hacking is supposed to help us avoid redundant nit-picking in  
reviews. If it places any large burden on developers, whether by merge  
conflicting or backing up CI, it is a failure IMO.  

___  
OpenStack-dev mailing list  
OpenStack-dev@lists.openstack.org  
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev  
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Clint Byrum
Excerpts from Sean Dague's message of 2014-06-16 05:15:54 -0700:
> Hacking 0.9 series was released pretty late for Juno. The entire check
> queue was flooded this morning with requirements proposals failing pep8
> because of it (so at 6am EST we were waiting 1.5 hrs for a check node).
> 
> The previous soft policy with pep8 updates was that we set a pep8
> version basically release week, and changes stopped being done for style
> after first milestone.
> 
> I think in the spirit of that we should revert the hacking requirements
> update back to the 0.8 series for Juno. We're past milestone 1, so
> shouldn't be working on style only fixes at this point.
> 
> Proposed review here - https://review.openstack.org/#/c/100231/
> 
> I also think in future hacking major releases need to happen within one
> week of release, or not at all for that series.
> 

+1. Hacking is supposed to help us avoid redundant nit-picking in
reviews. If it places any large burden on developers, whether by merge
conflicting or backing up CI, it is a failure IMO.

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Sean Dague
On 06/16/2014 12:44 PM, Ben Nemec wrote:
> On 06/16/2014 08:37 AM, Thierry Carrez wrote:
>> Sean Dague wrote:
>>> Hacking 0.9 series was released pretty late for Juno. The entire
>>> check queue was flooded this morning with requirements proposals
>>> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
>>> for a check node).
>>>
>>> The previous soft policy with pep8 updates was that we set a
>>> pep8 version basically release week, and changes stopped being
>>> done for style after first milestone.
>>>
>>> I think in the spirit of that we should revert the hacking
>>> requirements update back to the 0.8 series for Juno. We're past
>>> milestone 1, so shouldn't be working on style only fixes at this
>>> point.
>>>
>>> Proposed review here - https://review.openstack.org/#/c/100231/
>>>
>>> I also think in future hacking major releases need to happen
>>> within one week of release, or not at all for that series.
> 
>> We may also have reached a size where changing style rules is just
>> too costly, whatever the moment in the cycle. I think it's good
>> that we have rules to enforce a minimum of common style, but the
>> added value of those extra rules is limited, while their impact on
>> the common gate grows as we add more projects.
> 
> A few thoughts:
> 
> 1) I disagree with the proposition that hacking updates can only
> happen in the first week after release.  I get that there needs to be
> a cutoff, but I don't think one week is reasonable.  Even if we
> release in the first week, you're still going to be dealing with
> hacking updates for the rest of the cycle as projects adopt the new
> rules at their leisure.  I don't like retroactively applying milestone
> 1 as a cutoff either, although I could see making that the policy
> going forward.
> 
> 2) Given that most of the changes involved in fixing the new failures
> are trivial, I think we should encourage combining the fixes into one
> commit.  We _really_ don't need separate commits to fix H305 and H307.
>  This doesn't help much with the reviewer load, but it should reduce
> the gate load somewhat.  It violates the one change-one commit rule,
> but "A foolish consistency..."

The challenge is that hacking updates are basically giant merge conflict
engines. If there is any significant amount of code outstanding in a
project, landing hacking only changes basically means requiring much of
the outstanding code to rebase.

So it's actually expensive in a way that doesn't jump out immediately.
The cost of landing hacking isn't just the code of reviewing the hacking
patches, it's also the cost of the extra roundtrips on outstanding patches.

> 3) We should start requiring specs for all new hacking rules to make
> sure we have consensus (I think oslo-specs is the place for this).  2
> +2's doesn't really accomplish that.  We also may need to raise the
> bar for inclusion of new rules - while I agree with all of the new
> ones added in hacking .9, I wonder if some of them are really necessary.

> 4) I don't think we're at a point where we should freeze hacking
> completely, however.  The import grouping and long line wrapping
> checks in particular are things that reviewers have to enforce today,
> and that has a significant, if less well-defined, cost too.  If we're
> really going to say those rules can't be enforced by hacking then we
> need to remove them from our hacking guidelines and start the long
> process of educating reviewers to stop requiring them.  I'd rather
> just deal with the pain of adding them to hacking one time and never
> have to think about them again.  I'm less convinced the other two that
> were added in .9 are necessary, but in any case these are discussions
> that should happen in spec reviews going forward.

I think both of those cases are really nits to the point that they
aren't worth enforcing. They won't change the correctness of the code.
And barely change the readability.

There are differences with things like the is None checks, or python 3
checks, which change correctness, or prevent subtle bugs. But I think
we're now getting to a level of cleanliness enforcement that trumps
functionally working.

> 5) We may want to come up with some way to globally disable pep8
> checks we don't want to enforce, since we don't have any control over
> that but probably don't want to just stop updating pep8.  That could
> make the pain of these updates much less.

Actually, if you look at python novaclient, the doc string checks, which
are really niggly, and part of hacking are the biggest fails. It's much
less upstream that's doing this to us.

> I could probably come up with a few more, but this is already too
> wall-of-texty for my tastes. :-)
> 
> -Ben
> 
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 

-- 
Sean Dague
http://dague.net



signature.asc
Description: OpenPGP digital sign

Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Ben Nemec
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 06/16/2014 08:37 AM, Thierry Carrez wrote:
> Sean Dague wrote:
>> Hacking 0.9 series was released pretty late for Juno. The entire
>> check queue was flooded this morning with requirements proposals
>> failing pep8 because of it (so at 6am EST we were waiting 1.5 hrs
>> for a check node).
>> 
>> The previous soft policy with pep8 updates was that we set a
>> pep8 version basically release week, and changes stopped being
>> done for style after first milestone.
>> 
>> I think in the spirit of that we should revert the hacking
>> requirements update back to the 0.8 series for Juno. We're past
>> milestone 1, so shouldn't be working on style only fixes at this
>> point.
>> 
>> Proposed review here - https://review.openstack.org/#/c/100231/
>> 
>> I also think in future hacking major releases need to happen
>> within one week of release, or not at all for that series.
> 
> We may also have reached a size where changing style rules is just
> too costly, whatever the moment in the cycle. I think it's good
> that we have rules to enforce a minimum of common style, but the
> added value of those extra rules is limited, while their impact on
> the common gate grows as we add more projects.

A few thoughts:

1) I disagree with the proposition that hacking updates can only
happen in the first week after release.  I get that there needs to be
a cutoff, but I don't think one week is reasonable.  Even if we
release in the first week, you're still going to be dealing with
hacking updates for the rest of the cycle as projects adopt the new
rules at their leisure.  I don't like retroactively applying milestone
1 as a cutoff either, although I could see making that the policy
going forward.

2) Given that most of the changes involved in fixing the new failures
are trivial, I think we should encourage combining the fixes into one
commit.  We _really_ don't need separate commits to fix H305 and H307.
 This doesn't help much with the reviewer load, but it should reduce
the gate load somewhat.  It violates the one change-one commit rule,
but "A foolish consistency..."

3) We should start requiring specs for all new hacking rules to make
sure we have consensus (I think oslo-specs is the place for this).  2
+2's doesn't really accomplish that.  We also may need to raise the
bar for inclusion of new rules - while I agree with all of the new
ones added in hacking .9, I wonder if some of them are really necessary.

4) I don't think we're at a point where we should freeze hacking
completely, however.  The import grouping and long line wrapping
checks in particular are things that reviewers have to enforce today,
and that has a significant, if less well-defined, cost too.  If we're
really going to say those rules can't be enforced by hacking then we
need to remove them from our hacking guidelines and start the long
process of educating reviewers to stop requiring them.  I'd rather
just deal with the pain of adding them to hacking one time and never
have to think about them again.  I'm less convinced the other two that
were added in .9 are necessary, but in any case these are discussions
that should happen in spec reviews going forward.

5) We may want to come up with some way to globally disable pep8
checks we don't want to enforce, since we don't have any control over
that but probably don't want to just stop updating pep8.  That could
make the pain of these updates much less.

I could probably come up with a few more, but this is already too
wall-of-texty for my tastes. :-)

- -Ben
-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJTnx7wAAoJEDehGd0Fy7uqoYAH/0KmxmR873Qn2Kti7LIEUNp4
1FJaBOX09ItxkkvyNRpcsIQu4fWycm60CckSOLfB7rgxgIjgsVkiZ9puE6oCmj2o
Lhe5DhjYA2ROu9h8i0vmzYDnAKeu/WuRGtgyLSElUXeuiLpSrBcEA/03GpkCGiAP
1muAkVgv2oxDDwsaLwL7MmFrlZ1MPTP97lAfsfHbwbsOM5YMuPrRz9PirgHPBtTV
59UyofCGEBTtJKmJRLzRDZyDwTux5xrrc/cefer5GFLQH0ZbxOU1HHFESyc5wFVJ
tI/3nPlbFpqCUtgmnQc8k3lX3d2H1Qr9UfCvYlJFTN1TmPmHmK378ioi81HoAVo=
=tqtf
-END PGP SIGNATURE-

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] revert hacking to 0.8 series

2014-06-16 Thread Thierry Carrez
Sean Dague wrote:
> Hacking 0.9 series was released pretty late for Juno. The entire check
> queue was flooded this morning with requirements proposals failing pep8
> because of it (so at 6am EST we were waiting 1.5 hrs for a check node).
> 
> The previous soft policy with pep8 updates was that we set a pep8
> version basically release week, and changes stopped being done for style
> after first milestone.
> 
> I think in the spirit of that we should revert the hacking requirements
> update back to the 0.8 series for Juno. We're past milestone 1, so
> shouldn't be working on style only fixes at this point.
> 
> Proposed review here - https://review.openstack.org/#/c/100231/
> 
> I also think in future hacking major releases need to happen within one
> week of release, or not at all for that series.

We may also have reached a size where changing style rules is just too
costly, whatever the moment in the cycle. I think it's good that we have
rules to enforce a minimum of common style, but the added value of those
extra rules is limited, while their impact on the common gate grows as
we add more projects.

-- 
Thierry Carrez (ttx)



signature.asc
Description: OpenPGP digital signature
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev