id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,branch,branch_author,launchpad_bug
6096,Make setup.py on Python 3 create public API versions of _XXXpy3.py modules,itamar,,"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.",enhancement,closed,normal,Python-3.x,core,invalid,,exarkun,,,
