[Python-Dev] readd u'' literal support in 3.3?
regebro at gmail.com
Wed Dec 14 08:21:07 CET 2011
On Tue, Dec 13, 2011 at 23:38, Nick Coghlan <ncoghlan at gmail.com> wrote:
> On Wed, Dec 14, 2011 at 8:17 AM, Michael Foord
> <fuzzyman at voidspace.org.uk> wrote:
>> More specifically "six"  is the name of Benjamin Peterson's support
>> package to help write code that works on both 2 and 3. So the idea is that
>> the conversion isn't just a straight syntax conversion - but that it [could]
>> generate code using this library.
> The thing is, the code you want to generate varies depending on
> whether you want to target 2.6+, or include 2.5 and earlier.
Sure. This is different fixers, and then script to run it could have a
parameter for version.
I'd expect though that a 2to6 first targets 2.6+, and possibly never
end up supporting 2.5 at all. I do realize there still is 2.4 out in
the wild, but fewer and fewer people need to support it, and the
effort to support it is much higher.
> String translation is also an open question. For some codebases, you
> want both u"" and "" to translate to a Unicode "" (either in Py3k or
> via the future import), but if a code base deals with WSGI-style
> native strings (by means of u"" for text, "" for native, b"" for
> binary), then the more appropriate translation is to use the future
> import and map them to "", str("") and b"" respectively.
Yeah, that can't be done automatically. There is no generic way to
determine if a string should be binary, unicode or native.
More information about the Python-Dev