Differences between revisions 1 and 2
Revision 1 as of 2011-04-18 14:23:25
Size: 1986
Editor: ?GaeLeMignot
Comment:
Revision 2 as of 2011-04-18 15:14:30
Size: 2006
Editor: GeoffSimmons
Comment: Minor formatting adjustments.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#language en
Line 3: Line 4:
1. We want to be able to install Zope through Debian packages, like all other software we have on the system.  1. We want to be able to install Zope through Debian packages, like all other software we have on the system.
Line 5: Line 6:
2. The Zope instances should use the system Python and the system Python libraries (python-ldap, python-imaging, ...).  1. The Zope instances should use the system Python and the system Python libraries (python-ldap, python-imaging, ...).
Line 7: Line 8:
3. We need to be able to install several major versions of Zope (like 2.12 and 2.13) at the same time, like we can install python 2.5 and python 2.6 at the same time on squeeze.  1. We need to be able to install several major versions of Zope (like 2.12 and 2.13) at the same time, like we can install python 2.5 and python 2.6 at the same time on squeeze.
Line 9: Line 10:
4. We must not clash with other frameworks using the ztk like Pyramid or Zope 3.  1. We must not clash with other frameworks using the ztk like Pyramid or Zope 3.
Line 11: Line 12:
5. We would like to keep dzhandle if possible.  1. We would like to keep dzhandle if possible.
Line 19: Line 20:
Two solutions were evoked to solve that problem : Two solutions were evoked to solve that problem:
Line 21: Line 22:
1. Versionning each component of the ztk so we can install at the same time zope-foo 1.2.1 and zope-foo 1.3.0.  1. Versionning each component of the ztk so we can install at the same time zope-foo 1.2.1 and zope-foo 1.3.0.
Line 23: Line 24:
2. Packaging inside a zope2.12 package all the requirements of zope2.12 which are not the current mainstream ztk.  1. Packaging inside a zope2.12 package all the requirements of zope2.12 which are not the current mainstream ztk.

Summary of the goals and requirements

  1. We want to be able to install Zope through Debian packages, like all other software we have on the system.
  2. The Zope instances should use the system Python and the system Python libraries (python-ldap, python-imaging, ...).
  3. We need to be able to install several major versions of Zope (like 2.12 and 2.13) at the same time, like we can install python 2.5 and python 2.6 at the same time on squeeze.
  4. We must not clash with other frameworks using the ztk like Pyramid or Zope 3.
  5. We would like to keep dzhandle if possible.

The problem of ztk

The main problem of ztk is that it often breaks backward compatibility. Zope 2.12 and Zope 2.13 for example have conflicting dependencies, you cannot run Zope 2.12 on top on the version of the ztk used by Zope 2.13.

The possible solutions

Two solutions were evoked to solve that problem:

  1. Versionning each component of the ztk so we can install at the same time zope-foo 1.2.1 and zope-foo 1.3.0.
  2. Packaging inside a zope2.12 package all the requirements of zope2.12 which are not the current mainstream ztk.

Regarding the fact there are dozens of ztk packages used by Zope 2.12+ and that the backward compatibility is sometimes broken on minor versions, the solution 1. didn't practicable to us.

Therefore, even if we don't really like it, the solution of having a Zope 2.12 package containing all its the requirements which aren't already provided into a path like /usr/lib/zope2.12/lib/python seems the only viable solution.

Existing package

There is an existing package on svn://svn.debian.org/pkg-zope/zope2.12/trunk that is currently broken, but contains most of the code to pull the dependencies using easy_install, package them into a Debian source package, and then from that source build a stand-alone Zope 2.12 package.

The first step will be to make that package fully functional, and then to polish it.