[Python-Dev] readd u'' literal support in 3.3?

Jannis Leidel jannis at leidel.info
Thu Dec 8 16:53:22 CET 2011

On 08.12.2011, at 16:27, Vinay Sajip wrote:

> Matt Joiner <anacrolix <at> gmail.com> writes:
>> Nobody is using 3 yet ;)
>> Sure, I use it for some personal projects, and other people pretend to
>> support it. Not really.
>> The worst of the pain in porting to Python 3000 has yet to even begin!
> The classic chicken-and-egg problem, right? Someone's got to make a start. If
> you aim for porting with a single codebase and are not too hung up about
> "practicality beats purity" hacks like e = sys.exc_info()[1], then I think
> decent progress can be made with little risk, as long as the project has good
> test coverage (and if it doesn't ... well, that's risky even if you stay on 2.x
> ...).
> Django porting took a week of elapsed time (i.e. < 1 person-week of effort) to
> go from thousands of test failures under 3.x and sqlite to zero test failures.
> Django is a pretty big project, so I can't imagine "ordinary mortal" projects
> are going to be too bad (as long as not implemented pathologically). Of course,
> the Django port has some way to go, but still ... pip and virtualenv are
> relatively mature single code base ports, too. As additional examples - I've
> done Babel, Whoosh, Elixir, WTForms and others the same way.

I don't want to rain on your parade, but even if your port of Django passes all tests, it's not at all near completion. As a framework we not only have to worry about the ability to run on Python 3.X but also how to teach our community to upgrade their projects (if possible at all). That means to reduce the number of hacks needed and thoroughly reviewing to not suddenly lead into a maintenance dead end. E.g. I'm still not sure the one codebase strategy is better than the 2to3 strategy.

Also, stating that pip and virtualenv were easy to port like other projects seems to me like only half of the story -- Carl and
me had to fix a non trivial part of your port before being able to do the Py3k release.

I don't mean to diminish your work, it *is* appreciated, but I'm rather careful with generalizations when it comes to changes of a platform on such epic scale.


More information about the Python-Dev mailing list