<div class="gmail_quote">On Sun, Aug 2, 2009 at 4:17 PM, Jacob Rus <span dir="ltr">&lt;<a href="mailto:jacobolus@gmail.com">jacobolus@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Robert Lehmann wrote:<br>
<div class="im">&gt; Jacob Rus wrote:<br>
&gt;&gt; Here is a somewhat more substantively changed version. This one does<br>
&gt;&gt; away with the &#39;inited&#39; flag and the &#39;init&#39; function, which might be<br>
&gt;&gt; impossible given that their documented (though I would be extremely<br>
&gt;&gt; surprised if anyone calls them in third-party code)<br>
</div><div class="im">&gt; [snip]<br>
&gt;<br>
&gt; There seem to be quite a bunch of high-profile third-party modules<br>
&gt; relying on this interface, eg. Zope, Plone, TurboGears, and CherryPy. See<br>
&gt; <a href="http://www.google.com/codesearch?q=mimetypes.init+lang%3Apython" target="_blank">http://www.google.com/codesearch?q=mimetypes.init+lang%3Apython</a> for a<br>
&gt; more thorough listing.<br>
&gt;<br>
&gt; Given that most of them aren&#39;t ported to Python 3 yet, I guess, changing<br>
&gt; the semantics in 3.x seems not-too-bad to me.<br>
</div></blockquote><div><br>No, it&#39;s bad.  If I may quote Guido: <a href="http://www.artima.com/weblogs/viewpost.jsp?thread=227041">http://www.artima.com/weblogs/viewpost.jsp?thread=227041</a><br><br><blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 6.8ex; padding-left: 1ex;" class="gmail_quote">
So, once more for emphasis: <strong>Don&#39;t change your APIs at the same time as porting to Py3k!</strong><br></blockquote> <br>Please follow this policy as much as possible in the standard library; the language transition is going to be hard enough.<br>
<br>Put a different way: please don&#39;t change the library unless you&#39;re <i>also</i> going to write a 2to3 fixer that somehow updates all calling code, too.<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">Ooh, okay.  Well I guess we can’t get rid of those then!<br>
</div><div class="im"></div></blockquote><div><br>Indeed not.<br> </div></div><br>