<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Oct 29, 2013 at 11:17 AM, Robert Collins <span dir="ltr"><<a href="mailto:robertc@robertcollins.net" target="_blank">robertc@robertcollins.net</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On 28 October 2013 23:54, Joe Gordon <<a href="mailto:joe.gordon0@gmail.com">joe.gordon0@gmail.com</a>> wrote:<br>


<br>
<br>
> We don't just gate without telling people, the first two items in hacking<br>
> are read pep8<br>
><br>
> <a href="http://docs.openstack.org/developer/hacking/" target="_blank">http://docs.openstack.org/developer/hacking/</a><br>
<br>
</div>The gate is super useful, but it's reactive, not proactive. And good<br>
documentation isn't a replacement for just doing the right thing.<br></blockquote><div><br></div><div>And what is the right thing?  From what you have said my understand is that the correct thing is: To keep the barrier to entry for new developers as low as possible by including modelines in every file so that anyone who uses vim and uses modelines have the correct tabstop etc. But this isn't enough to pass gate (<a href="http://www.python.org/dev/peps/pep-0008/#whitespace-in-expressions-and-statements">http://www.python.org/dev/peps/pep-0008/#whitespace-in-expressions-and-statements</a> etc), so unless someone runs flake8 or 'tox -epep8' locally they will still end up with the gate failing them. So I don't think the current state of modelines reduces the barrier to entry in a meaningful way (At the very least, if we keep them they should be on every file).</div>

<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><br>
<br>
>> > * Why have the same config 828 times for one repo alone?  This<br>
>> > violates the DRY principle (Don't Repeat Yourself).<br>
>><br>
>> Because afaik there's no standard way to inform editors of<br>
>> project-specific style guidelines. Plus previously mentioned benefit of<br>
>> stickiness.<br>
><br>
><br>
> PEP8 is hardly project specific.<br>
<br>
</div>The definition of PEP8 is (moderately) global. The choice to use PEP8<br>
is project specific.<br></blockquote><div><br></div><div>Yup, That is why I didn't say 'everyone uses PEP8,' when using PEP8 I was referring to the definition (and not even the python library).</div><div> </div>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><br>
<br>
>> That's not very welcoming. If a project want to be particular about<br>
>> its style, it has a responsibilty to not just gate but also assist in<br>
>> following that style.<br>
><br>
> We do try to make it easy to follow the style. Its fully documented here<br>
> <a href="http://docs.openstack.org/developer/hacking/" target="_blank">http://docs.openstack.org/developer/hacking/</a>.  Also the modeline we use is<br>
> hardly enough to follow the style (80 char limit, spacing between functions,<br>
> between classes etc.) And we provide several ways for a user to run the full<br>
> set of style tests locally.<br>
<br>
</div>Documentation isn't the same as helping. Yes, it's true that the modeline isn't<br>
sufficient, but it does get some of the key variation project<br>
guidelines tend to have: spaces and tabs.  </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><br>
<br>
-Rob<br>
<br>
<br>
--<br>
Robert Collins <<a href="mailto:rbtcollins@hp.com">rbtcollins@hp.com</a>><br>
Distinguished Technologist<br>
HP Converged Cloud<br>
<br>
</div><div class=""><div class="h5">_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></blockquote></div><br></div></div>