<div dir="ltr"><div class="markdown-here-wrapper" style><p style="margin:1.2em 0px!important">On Tue, Mar 17, 2015 at 8:04 PM, Terry Reedy <<a href="mailto:tjreedy@udel.edu" target="_blank">tjreedy@udel.edu</a>> wrote:</p>
<p style="margin:1.2em 0px!important"></p><div class="markdown-here-exclude"><p></p><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">pep8, autopep8, and similar applications do not belong in the stdlib. They are easily installed with, for instance, 'pip install autopep8'.</blockquote><p></p></div><p style="margin:1.2em 0px!important"></p>
<p style="margin:1.2em 0px!important">I am not proposing putting <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code> in the standard library. I am proposing that an auto-styler be included with Python as a first-class utility. The emphasis here is on <em>included</em> and <em>first-class</em>.</p>
<p style="margin:1.2em 0px!important">That auto-styler may well be based somehow on <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code>, but that is a separate discussion about <em>implementation</em>. I am first checking that the <em>idea</em> is sound. I can’t tell if you had any objections to that idea. Yes, I know that today I can install and use <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code> as a third-party utility using <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">pip</code>, but <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code> today is neither included with Python nor a first-class utility.</p>
<p style="margin:1.2em 0px!important">(FWIW, couldn’t <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code> somehow be adapted to be an included module that can be invoked via <a href="https://www.python.org/dev/peps/pep-0338/"><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">python -m</code></a> — e.g. <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">python -m compileall</code>, <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">python -m SimpleHTTPServer</code> — just as far as the mechanics are concerned? As I noted in my original post, I’m not in a position yet to specifically propose how an included auto-styler would work, but let’s say for argument’s sake that 1) we decided we liked the idea and 2) <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)">autopep8</code> fit the bill for promotion to an included utility, and 3) we addressed Andrew’s points.)</p>
<p style="margin:1.2em 0px!important">Nick</p>
<div title="MDH:PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxkaXYgY2xhc3M9ImdtYWlsX3F1b3RlIj5PbiBUdWUs
IE1hciAxNywgMjAxNSBhdCA4OjA0IFBNLCBUZXJyeSBSZWVkeSA8c3BhbiBkaXI9Imx0ciI+Jmx0
OzxhIGhyZWY9Im1haWx0bzp0anJlZWR5QHVkZWwuZWR1IiB0YXJnZXQ9Il9ibGFuayI+dGpyZWVk
eUB1ZGVsLmVkdTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9Imdt
YWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOiAwcHggMHB4IDBweCAwLjhleDsgYm9yZGVyLWxlZnQt
d2lkdGg6IDFweDsgYm9yZGVyLWxlZnQtY29sb3I6IHJnYigyMDQsIDIwNCwgMjA0KTsgYm9yZGVy
LWxlZnQtc3R5bGU6IHNvbGlkOyBwYWRkaW5nLWxlZnQ6IDFleDsiPnBlcDgsIGF1dG9wZXA4LCBh
bmQgc2ltaWxhciBhcHBsaWNhdGlvbnMgZG8gbm90IGJlbG9uZyBpbiB0aGUgc3RkbGliLiBUaGV5
IGFyZSBlYXNpbHkgaW5zdGFsbGVkIHdpdGgsIGZvciBpbnN0YW5jZSwgJ3BpcCBpbnN0YWxsIGF1
dG9wZXA4Jy48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPkkgYW0gbm90IHByb3Bvc2luZyBwdXR0aW5n
IGBhdXRvcGVwOGAgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkuIEkgYW0gcHJvcG9zaW5nIHRoYXQg
YW4gYXV0by1zdHlsZXIgYmUgaW5jbHVkZWQgd2l0aCBQeXRob24gYXMgYSBmaXJzdC1jbGFzcyB1
dGlsaXR5LiBUaGUgZW1waGFzaXMgaGVyZSBpcyBvbiBfaW5jbHVkZWRfIGFuZCBfZmlyc3QtY2xh
c3NfLjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PC9kaXY+PGRpdiBjbGFzcz0i
Z21haWxfZXh0cmEiPlRoYXQgYXV0by1zdHlsZXIgbWF5IHdlbGwgYmUgYmFzZWQgc29tZWhvdyBv
biBgYXV0b3BlcDhgLCBidXQgdGhhdCBpcyBhIHNlcGFyYXRlIGRpc2N1c3Npb24gYWJvdXQgX2lt
cGxlbWVudGF0aW9uXy4gSSBhbSBmaXJzdCBjaGVja2luZyB0aGF0IHRoZSBfaWRlYV8gaXMgc291
bmQuIEkgY2FuJ3QgdGVsbCBpZiB5b3UgaGFkIGFueSBvYmplY3Rpb25zIHRvIHRoYXQgaWRlYS4g
WWVzLCBJIGtub3cgdGhhdCB0b2RheSBJIGNhbiBpbnN0YWxsIGFuZCB1c2UgYGF1dG9wZXA4YCBh
cyBhIHRoaXJkLXBhcnR5IHV0aWxpdHkgdXNpbmcgYHBpcGAsIGJ1dCBgYXV0b3BlcDhgIHRvZGF5
IGlzIG5laXRoZXIgaW5jbHVkZWQgd2l0aCBQeXRob24gbm9yIGEgZmlyc3QtY2xhc3MgdXRpbGl0
eS48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjwvZGl2PjxkaXYgY2xhc3M9Imdt
YWlsX2V4dHJhIj4oRldJVywgY291bGRuJ3QgYGF1dG9wZXA4YCBzb21laG93IGJlIGFkYXB0ZWQg
dG8gYmUgYW4gaW5jbHVkZWQgbW9kdWxlIHRoYXQgY2FuIGJlIGludm9rZWQgdmlhIFtgcHl0aG9u
IC1tYF0oaHR0cHM6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDMzOC8pIC0tIGUuZy4g
YHB5dGhvbiAtbSBjb21waWxlYWxsYCwgYHB5dGhvbiAtbSBTaW1wbGVIVFRQU2VydmVyYCAtLSBq
dXN0IGFzIGZhciBhcyB0aGUgbWVjaGFuaWNzIGFyZSBjb25jZXJuZWQ/IEFzIEkgbm90ZWQgaW4g
bXkgb3JpZ2luYWwgcG9zdCwgSSdtIG5vdCBpbiBhIHBvc2l0aW9uIHlldCB0byBzcGVjaWZpY2Fs
bHkgcHJvcG9zZSBob3cgYW4gaW5jbHVkZWQgYXV0by1zdHlsZXIgd291bGQgd29yaywgYnV0IGxl
dCdzIHNheSBmb3IgYXJndW1lbnQncyBzYWtlIHRoYXQgMSkgd2UgZGVjaWRlZCB3ZSBsaWtlZCB0
aGUgaWRlYSBhbmQgMikgYGF1dG9wZXA4YCBmaXQgdGhlIGJpbGwgZm9yIHByb21vdGlvbiB0byBh
biBpbmNsdWRlZCB1dGlsaXR5LCBhbmQgMykgd2UgYWRkcmVzc2VkIEFuZHJldydzIHBvaW50cy4p
PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxicj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFp
bF9leHRyYSI+TmljazwvZGl2Pg==" style="height:0;width:0;max-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0"></div></div></div>