@@ -8,11 +8,11 @@ Overview
88Python 2. It allows you to maintain a single, clean Python 3.x-compatible
99codebase with minimal cruft and run it easily on Python 2 mostly unchanged.
1010
11- It provides ``future `` and ``past `` packages with backports and forward ports
12- of features from Python 3 and 2. It also comes with ``futurize ``, a customized
13- 2to3-based script that helps you to convert code easily to supporting
14- both Python 2 and 3 in a single codebase, module by module, from either
15- Python 2 or Python 3 .
11+ It provides ``future `` and ``past `` packages with backports and forward ports of
12+ features from Python 3 and 2. It also comes with ``futurize `` and
13+ `` pasteurize ``, customized 2to3-based scripts that helps you to convert either
14+ Py2 or Py3 code easily to support both Python 2 and 3 in a single clean
15+ Py3-style codebase, module by module .
1616
1717
1818.. _features :
@@ -26,20 +26,21 @@ Features
2626- ``future `` package provides backports and remappings from the Py3 standard
2727 library
2828
29+ - ``future.translation `` package supports transparent translation of
30+ Python 2 modules to Python 3 upon import. [This feature is currently in
31+ alpha.]
32+
2933- 330+ unit tests
3034
31- - ``futurize `` script based on ``2to3 `` and parts of `` 3to2 `` and
32- ``python-modernize ``, for automatic conversion from either Py2 or Py3
33- to a clean single-source codebase compatible with Python 2.6+ and
35+ - ``futurize `` and `` pasteurize `` scripts based on ``2to3 `` and parts of
36+ ``3to2 `` and `` python-modernize ``, for automatic conversion from either Py2
37+ or Py3 to a clean single-source codebase compatible with Python 2.6+ and
3438 Python 3.3+.
3539
36- - a comprehensive set of utility functions and decorators selected from
40+ - a curated set of utility functions and decorators selected from
3741 Py2/3 compatibility interfaces from projects like ``six ``, ``IPython ``,
3842 ``Jinja2 ``, ``Django ``, and ``Pandas ``.
3943
40- - ``future.translation `` package supports transparent translation of
41- Python 2 modules to Python 3 upon import. [Experimental]
42-
4344- ``past `` package provides forward-ports of Python 2 types and resurrects
4445 some Python 2 builtins (to aid with per-module code migrations)
4546
@@ -154,9 +155,17 @@ Example::
154155 >>> autotranslate('plotrique')
155156 >>> import plotrique
156157
157- Note: this feature is still in alpha and needs more testing and
158- development to support a full range of real-world Python 2 modules.
158+ This transparently translates and runs the ``plotrique `` module and any
159+ submodules in the ``plotrique `` package that ``plotrique `` imports.
160+
161+ This is intended to help you migrate to Python 3 without the need for all
162+ your code's dependencies to support Python 3 yet. It should be used as a
163+ last resort; ideally Python 2-only dependencies should be ported
164+ properly to a Python 2/3 compatible codebase using a tool like
165+ ``futurize `` and the changes should be pushed to the upstream project.
159166
167+ Note: the translation feature is still in alpha and needs more testing and
168+ development to support a full range of real-world Python 2 modules.
160169
161170
162171Next steps
0 commit comments