<div class="gmail_quote">On 9 September 2010 03:40, Fernando Perez <span dir="ltr">&lt;<a href="http://fperez.net">fperez.net</a>@<a href="http://gmail.com">gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div id=":c9">The issue is balancing:<br>
<br>
- the nastiness of a codebase chock full of conditionals<br>
<br>
- the load of maintaining two codebases without them diverging.<br>
<br>
I really don&#39;t know which way the balance will tilt between these<br>
competing forces; I&#39;m more than happy to hear from you or others on<br>
this matter.<br></div></blockquote><div><br>I&#39;ve just looked at the changes made by 2to3, and it&#39;s actually closer than I had imagined, although I still don&#39;t think it&#39;s quite close enough to try to have a single codebase. We could support several of the changes with little effort, e.g. using print_function from __future__. Unicode strings would be the big problem: there&#39;d either be conditional code scattered throughout, or confusing abstractions to hide the difference. We&#39;d also need to do something with the code that handles old-style classes (I removed references to ClassType and InstanceType from the py3 branch).<br>

<br>To sum up: I think it&#39;s easiest to use the magic of DVCSs and 2to3 to keep separate branches.<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div id=":c9"><div class="im">

</div>Great.  Keep us posted, and when you think you are ready to start<br>
considering changes from -prep back upstream, we&#39;ll look at them.</div></blockquote><div><br>I&#39;ve done all the changes I&#39;ve got planned for now (I essentially looked through the changes I&#39;d had to apply after running 2to3, and reapplied those that work in 2.6). Is there a standard set of tests I should run to confirm I haven&#39;t broken anything?<br>

<br>Best wishes,<br>Thomas<br></div></div><br>