Le mardi 24 mai 2011 à 08:16 +0000, Vinay Sajip a écrit : > > I opened an issue for this idea. Brett and Marc-Andree Lemburg don't > > want to deprecate codecs.open() & friends because they want to be able > > to write code working on Python 2 and on Python 3 without any change. I > > don't think it's realistic: nontrivial programs require at least the six > > module, and most likely the 2to3 program. The six module can have its > > "codecs.open" function if codecs.open is removed from Python 3.4. > > What's "non-trivial"? Both pip and virtualenv (widely used programs) were > ported > to Python 3 using a single codebase for 2.x and 3.x, because it seemed to > involve the least ongoing maintenance burden. Though these particular programs > don't use codecs.open, I don't see much value in making it harder to write > programs which can run under both 2.x and 3.x; that's not going to speed > adoption of 3.x.
pip has a pip.backwardcompat module which is vey similar to six. If codecs.open() is deprecated or removed, it will be trivial to add a wrapper for codecs.open() or open() to six and pip.backwardcompat. virtualenv.py starts also with a thin compatibility layer. But yes, each program using a compatibily layer/module will have to be updated. Victor _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com