Zope 3 Using Python 2.5
This page will try to summarize the project idea "Zope 3 Using Python 2.5" for Google Summer of Code 2007. Visit Summer of Code 2007 page for mode ideas about projects.
-- Baiju M <baiju.m.mail AT gmail.com>
Why and How?
First read the follow ups of this mail: http://mail.zope.org/pipermail/zope3-dev/2006-September/020569.html
A very high level overview of the work by Jim is like this
I suspect that even Zope 3's security system will need a fair bit of work: - We need to rework or replace the small bit of RestrictedPython we use, and - If new Python type slots have been added, we'll need to reflect them in zope.proxy.
You can skip the Zope 2 part for this project. And remember what Jim Fulton said: "it will take a fair bit of work to get to it" .
Tres Seaver wrote in another reply
The hardest bit is the change to the way the compiler works: RestrictedPython is completely incompatible with the new AST-based strategy."
See this comment by Jim Fulton
As we move toward splitting things up into eggs, people can help out by getting things working on an egg-by-egg basis.
Now all packages in zope namespace is eggified, so you can do one by one! You can also read some interesting thoughts in the same mail .
File-system-based templates are trusted in Zope 3. (I wonder if file-system-based templates are still untrusted in Zope 2.) Still official releases have to be backward compatible and thus have to support TTW templates. I very much hope that will switch to egg-based development and distribution over the coming months. If we do that, it might be possible and would be interesting for people to create alternate distributions focused on on different needs. It would be interesting to have distributions that didn't support untrusted Python code.
And there are some small bit of code to be fixed
Warning: 'with' will become a reserved keyword in Python 2.6
Related mails
- http://mail.zope.org/pipermail/zope3-dev/2006-September/020595.html
- http://mail.zope.org/pipermail/zope3-dev/2006-September/020589.html
- http://mail.zope.org/pipermail/zope3-dev/2006-September/020617.html
- http://mail.zope.org/pipermail/zope3-dev/2006-September/020639.html
- http://mail.zope.org/pipermail/zope3-dev/2006-September/020632.html
- http://mail.zope.org/pipermail/zope3-dev/2007-July/023149.html
Current Status
The project is currently completed and the final code uploaded can be obtained from the following link. http://google-summer-of-code-2007-zope.googlecode.com/files/Nikhil_N.tar.gz
Important Topics
Some of the important topics related to this project and their links are given. Please add useful links or topics to these if any.
Python Changes
Restricted Python
Renormalization:
Buildout
Notes
- Script to find modified API functions: http://svn.effbot.python-hosting.com/stuff/sandbox/python/ssizecheck.py
- Using ssize_t as the index type: http://www.python.org/dev/peps/pep-0353/
- Porting to Python 2.5 : http://docs.python.org/whatsnew/porting.html
- src/zope/documenttemplate/ustr.py:18 , See thread: http://mail.python.org/pipermail/python-list/2006-December/418934.html
- src/zope/app/security/globalmodules.zcml:226 'gopherlib' module is deprecated in Python 2.5
... --nadako, Tue, 04 Mar 2008 18:31:33 +0000 reply
What's the status of this project? The ModuleImplementationStatus page says that all zope.* and zope.app.* modules were ported on 2.5. Are those changes committed/released? Are there any plans on this?
... --Nikhil N, Tue, 04 Mar 2008 18:59:18 +0000 reply
All the changes said in the module implementation status are committed to the Zope's repository. The future plan on this is to port the zope2 also to Python 2.5. Due to some personal reason I will not be able to continue this work for some time. Any one interested can step in and I will help as my time knowledge permits.
-Nikhil
