Ticket #6096 enhancement closed invalid
Make setup.py on Python 3 create public API versions of _XXXpy3.py modules
| Reported by: | itamar | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | Python-3.x |
| Component: | core | Keywords: | |
| Cc: | exarkun | Branch: | |
| Author: | Launchpad Bug: |
Description
Currently for Python 3 we have a number of modules that are only partially ported, with names like _foopy3.py for the ported parts of foo.py. Only the former is installed on Python 3 (see #6040). We could have users of Twisted on Python 3 use these private modules in their code temporarily, but that means it's harder for them to support both Python 2 and Python 3, and they'll have to change their code once these temporary modules go away.
Another alternative is to have the installed version of Twisted on Python 3 fix this issue. In particular, for twisted/bar/_foopy3.py, setup.py should install a corresponding twisted/bar/foo.py with the following code:
from twisted.bar._foopy3 import * __all__ = list(locals().keys())
Or something to that effect.
Given we're not guaranteeing backwards compat for now on Python 3, this is more of a nice-to-have thing.
