Development roadmap¶
futurize script¶
“Safe” mode – from Py2 to modern Py2 or Py3 to more-compatible Py3
Split the fixers into two categories: safe and bold
Safe is highly unlikely to break existing Py2 or Py3 support. The output of this still requires
future
imports. Examples:- Compatible metaclass syntax on Py3
- Explicit inheritance from object on Py3
Bold might make assumptions about which strings on Py2 should be unicode strings and which should be bytestrings.
- We should also build up a database of which standard library interfaces on Py2 and Py3 accept unicode strings versus byte-strings, which have changed, and which haven’t.
Windows support
future package¶
- [Done] Add more tests for bytes ... preferably all from test_bytes.py in Py3.3.
- [Done] Add remove_hooks() and install_hooks() as functions in the
future.standard_library
module. (See the uprefix module for how to do this.)
Experimental: - Add:
from future import bytes_literals
from future import new_metaclass_syntax
from future import new_style_classes
[Done] Maybe:
from future.builtins import str
should import a custom str is a Py3 str-like object which inherits from unicode and removes the decode() method and has any other Py3-like behaviours (possibly stricter casting?)