[openstack-dev] [all] Thoughts on python-future?

Eric Kao ekcs.openstack at gmail.com
Wed Nov 25 21:08:58 UTC 2015


Thanks for sharing your thoughts and experiences everyone!

It’s really too bad that the library causes all this headache. The goal is
laudable: enable Python 3 code to run on Python 2 with minimal
modification. It’d be really nice to write clean, standard Python 3 code
[e.g., dict0.items() ] rather than special, bridged code [e.g.,
six.iteritems(dict0) ] for Python 2+3 compatibility.

Such is life I guess. The goal inevitably requires messing with Python 2
internals to conform to Python 3 behavior, which inevitably leads to the
issues people mentioned.

Thanks again!

On 11/25/15, 10:10 AM, "Joshua Harlow" <harlowja at fastmail.com> wrote:

>Julien Danjou wrote:
>> On Tue, Nov 24 2015, Eric Kao wrote:
>>
>>> I¹ve been using the python-future library for Python 3 porting and
>>>want to
>>> see what people think of it.
>>>http://python-future.org/overview.html#features
>>>
>>> The end result is standard Python3 code made compatible with Python2
>>>through
>>> library imports. The great thing is that Python 3 execution is mostly
>>> independent of the library, so once Python 2 support is dropped, the
>>>use of
>>> the library can be dropped too.
>>>
>>> Anyone know why it¹s not used in OpenStack perhaps alongside six?
>>>Thanks!
>>
>> python-future has been a dependency of pytimeparse¹ for a while and it
>> has been a nightmare. IIRC, python-future blends into Python magically
>> so it is somehow automatically imported each time you run Python. This
>> had a tendency to break random other Python packages installed in the
>> environment.
>
>Oh, please no then, magically messing with other python packages by
>monkeying with the internals of python we already have enough of (cough
>cough eventlet, cough cough parts of jsonutils in oslo.serialization
>that injects itself into anyjson)...
>
>Just say no to more please ;)
>
>>
>> In the end we just dropped it from pytimeparse and we're much happier.
>>
>> And we're very happy with six. :)
>>
>> ¹  It's used by Gnocchi.
>>
>>
>> 
>>_________________________________________________________________________
>>_
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: 
>>OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev





More information about the OpenStack-dev mailing list