Repository navigation
Python 3 Porting
The Pyramid master nominally runs on Python 3.2 (as of September 25, 2011). It does not require a "translation" (via 2to3 or 3to2) but instead uses a single codebase that run under 2 and 3.
Currently neither scaffolding ("paster create") or paster commands like "paster pshell" or "paster pview" work. Also, some scaffolding dependencies such as zope.sqlalchemy and the transaction package are not yet ported.
PasteScript has not been ported, nor have its dependencies. We likely will need to replace PasteScript rather than port it, unless someone is brave enough to do it in the meantime. Here's a list of the resulting packages that don't work that we will need to replace.
- Paste (won't port, will replace; see Pyramid 2 Brainstorm)
- PasteDeploy (won't port, will replace; see also https://github.com/wsgicabal/wiseguy; and Pyramid 2 Brainstorm)
- PasteScript (won't port, will replace; see also https://github.com/wsgicabal/wiseguy and Pyramid 2 Brainstorm).
- transaction (http://svn.zope.org/transaction/trunk/)
- zope.sqlalchemy (http://svn.zope.org/zope.sqlalchemy/trunk/)
- ZODB (http://svn.zope.org/ZODB/trunk/; likely won't be ported by us, too large, just maybe keep an eye on other efforts; for example https://mail.zope.org/pipermail/zodb-dev/2011-September/014363.html)
- Chameleon (already worked under Py2.5 and Py3.2)
- Mako (already worked under Py2.4-Py3.2)
- MarkupSafe (already worked under Py2.4-Py3.2)
- translationstring (merged jayd3e's py3 branch to trunk, released as 0.4)
- venusian (jbohman ported, released as 1.0a1)
- zope.interface (ported as of 3.6.0+)
- repoze.lru (jbohman ported, released as 0.4)
- zope.deprecation (chrism ported, released as 3.5.0)
- WebTest (ported by gawel, released as 1.3.1)
- WebOb (Joe Dallago: GSOC 2011 project, Chris McDonough picked up porting work, docs and testing work still remains, but webob trunk at https://github.com/Pylons/webob has 3.2 support)
- zope.component (jbohman factored out "zope.registry" and placed it in zope SVN; also see https://mail.zope.org/pipermail/zope-dev/2011-August/043340.html, this code was later moved to zope.interface in version 3.8.0)
- zope.configuration (removed core dependency on this in Pyramid 1.2a5+; still dep'ed on by pyramid_zcml)
- zope.i18nmessageid (transitive dep of zope.configuration; removed z.config dep in Pyramid 1.2a5+)
- zope.schema (transitive dep of zope.configuration; removed z.config dep in Pyramid 1.2a5+)
- zope.event (transitive dep of zope.component, will remove zope.component dep)
Related Zope package info: http://permalink.gmane.org/gmane.comp.web.zope.devel/26373