On 23 Sep 2007, at 19:05 , Dieter Maurer wrote:
Philipp von Weitershausen wrote at 2007-9-22 19:27 +0200:
... Dieter Maurer wrote: ... * PyPI doesn't necessarily have to contain eggs. It's primarily a discovery mechanism for humans. The fact that setuptools can download packages from it is not as important as the fact that developers can find packages there.
The reason why I had to promiss to make my products available via PyPI was that they can be downloaded from there.
Right. So then I don't understand why need all that extra machinery in Zope and an extra namespace.
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"
As long as the packages are on the PYTHONPATH, Zope 2 will find them. I don't think there's a need for this new directive.
But, such packages are not treated as Zope2 products -- which is essential for packages that are to be used as Zope2 products.
If a package is in the Products.* namespace, Zope 2 will find it and load it. No matter where on the PYTHONPATH it is located. So I think my statement is correct.
I have learned meanwhile that by some disregard of concerns, Five can turn a package into a Zope2 product.
Yup. You can put your software into an arbitrarily named Python package (e.g. dieter.mystuff) and have it be treated like a Zope 2 product (which really just means calling an initialize() function at some point).
Thus, the functionality is there -- just maybe in the wrong place.
If Five's registerPackage functionality is what you had been proposing all along, then I have been misunderstanding you terribly. Either way, you don't elaborate on why you think that this is the "wrong" place for it. I personally consider registerPackage a solutino for integrating new software (Zope 3-style software in Python packages) into a legacy discovery mechanism (the automatic Products.* loading).