<div class="gmail_quote">On Tue, Dec 13, 2011 at 11:24 AM, Antoine Pitrou <span dir="ltr">&lt;<a href="mailto:solipsis@pitrou.net">solipsis@pitrou.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Tue, 13 Dec 2011 15:28:31 +0100<br>
&quot;Laurence Rowe&quot; &lt;<a href="mailto:l@lrowe.co.uk">l@lrowe.co.uk</a>&gt; wrote:<br>
&gt;<br>
&gt; The approach that most people seem to have settled on for porting<br>
&gt; libraries to Python 3 is to make a single codebase that is compatible with<br>
&gt; both Python 2 and Python 3, perhaps making use of the six library.<br>
<br>
</div>Do you have evidence that &quot;most&quot; people have settled on that approach?<br>
(besides the couple of library writers who have commented on this<br>
thread)<br></blockquote><div><br></div><div>I&#39;ve seen more projects doing it that way than maintaining dual code bases.  In retrospect, it seems way more attractive than having to run a converter all the time, especially if I could run a &quot;2to6&quot; tool *once* and then simply write new code using six-isms</div>
<div><br></div><div>Among other things, it means that:</div><div><br></div><div>* There&#39;s only one codebase</div><div>* If the conversion isn&#39;t perfect, you only have to fix it once</div><div>* Line numbers are the same</div>
<div>* There&#39;s no conversion step slowing down development</div><div><br></div><div>So, I expect that if the approach is at all viable, it&#39;ll quickly become the One Obvious Way to do it.  In effect, 2to3 is a &quot;purity&quot; solution, but six is more like a &quot;practicality&quot; solution.</div>
<div><br></div><div>And if there&#39;s official support for it, so much the better.</div><div><br></div></div>