[Zope-dev] How to publish Zope2 products on PyPI

Dieter Maurer dieter at handshake.de
Sat Sep 22 01:59:48 EDT 2007

During our latest discussion to put my most important Zope2 products
into a public repository, I have promissed to publish them on
PyPI instead. Yesterday, I started work to fulfill this promiss
and carefully read the PyPI related documentation -- to find
out, that it is not easy to publish Zope2 products.

As the name suggests, PyPI is for Python packages.
And Zope2 products rightfully are no Python packages:

   When a Zope instance starts, it does potentially
   expensive things for its products.

   I have tiny Zope instances with a few inexpensive products
   that start within a few seconds. And I have huge
   Zope instances with lots of products which parse huge
   XML files or have large message catalogs
   and take half to one minute to start.

   Definitely, I do not want that all my Zope
   instances use the same products installed
   via "setuptools" somewhere under the central "site-packages".

My current ideas towards a solution:

  We define a package prefix for Zope2 products, e.g. "zope2.products".
  Zope2 products are published to PyPI as "<prefix>.<productname>".

  We extend the Zope2 configuration with an option "additional-products"
  which lists the products used by the instance that are not
  at a standard place -- such as those installed by "setuptools"


More information about the Zope-Dev mailing list