Disclaimer: my knowledge is not complete, and my track record of writing emails late at night is not very good. Take this with a big grain of salt.
On Fri, Mar 21, 2008 at 11:57:31AM -0700, Timothy Selivanow wrote: > As the subject implies, I'm working on a package for Fedora. I've come > across some missing dependencies, and some that are different versions. > Because of the way that Python packages are put together (shared library > environment), I'm trying to strip out everything that is not Zope > specific (e.g. mechanize, docutils, etc.) that way Zope won't clobber > already existing packages, and new packages won't clobber Zope. Be careful: I wouldn't be surprised if the foreign packages in the Zope tree have bugfixes applied to them. I trust those fixes were also sent to their respective upstreams as well, but it may make it a bit more difficult to find out which upstream version is really needed. > Here is my list (that I've discovered so far...) and some notes and > questions. I would appreciate any information on resolving these. My > list was taken from Zope-3.4.0c1/build/lib.linux-x86_64-2.5 (in my arch > specific case...) after doing a `python install.py build` (side note, > why is it called install.py and not setup.py?). Good question. It's called setup.py in the Subversion tree -- but the tarball is not based on the old monolithic SVN tree any more. > BTrees -- > Does not currently exist in Fedora as a separate package. > Is this of Zope origin? (If not, where? Required version?) > If Zope origin, is it useful outside of Zope? It is part of ZODB. It may be useful outside of Zope. > persistent -- > Does not currently exist in Fedora as a separate package. > Is this of Zope origin? (If not, where? Required version?) > If Zope origin, is it useful outside of Zope? ZODB again. > transaction -- > Does not currently exist in Fedora as a separate package. > Is this of Zope origin? (If not, where? Required version?) > If not Zope origin, is it useful outside of Zope? ZODB again. > ThreadedAsync -- > Does not currently exist in Fedora as a separate package. > Is this of Zope origin? (If not, where? Required version?) > If Zope origin, is it useful outside of Zope? ZODB again. > ClientForm -- > This currently exists in Fedora (version 0.2.7) > Diffing the directories and files reveals differences. > What version is required for Zope? What about newer versions? > > mechanize -- > This currently exists in Fedora (version 0.1.6) > Diffing the directories and files reveals differences. > What version is required for Zope? What about newer versions? > I'm pretty sure these two are only used for zope.testbrowser. It ought to be sufficient to take the latest upstream version and see if zope.testbrowser's test suite passes with it. Benji York is the one with most knowledge about zope.testbrowser and its dependencies. If he offers different advice, listen to him, not to me. > twisted -- > This currently exists in Fedora (version 2.4.0) > Diffing the directories reveals that is it mostly compatible, > however, missing some features (I have a list). > What parts are required by Zope? > Some of the missing parts are no longer being maintained, or are > incompatible with newest Twisted (2.5.0). Thoughts? AFAIK twisted is only bundled with Zope 3 for convenience. It is used for its HTTP server as one of the alternatives (the other ones being ZServer and WSGI), but even that part is not used by default. > pytz -- > This currently exists in Fedora (version 2006p) > Diffing the directories and files reveals differences. > What version is required for Zope? What about newer versions? > The Zope versions do not have the .py extension. Possible > problems with Zope if they do (i.e., lib resolving)? I think any non-broken pytz version should work. (Ubuntu once shipped a completely broken one.) > RestrictedPython -- > Does not currently exist in Fedora as a separate package. > Is this it? <http://pypi.python.org/pypi/RestrictedPython/3.4.2> > Required version for Zope? What about newer versions? I honestly have no idea. > Also, there is an existing package in Fedora called > python-zope-interface, version 3.0.1 I assume (in F8), and I'm wondering > if it would be worth keeping separate (or at least available, updated, > maybe with a Conflicts: zope) in Fedora and are there other parts of > Zope (e.g. ZODB, ZEO) that would be useful by themselves? Yes and no. The Zope 3 upstream is now split into hundreds of little packages (Python eggs), each registered on the Python Package Index, with intricate and sometimes suboptimal dependency lists. If there's an easy way to convert a Python egg to an RPM, you may want to look at this, but beware: the dust hasn't fully settled yet. There's no guarantee that the packages on PyPI will work with each other at any given point of time. The Zope 3 Known Good Set fixes that, so you may want to look into it: http://wiki.zope.org/zope3/FAQGeneral#what-is-the-kgs-known-good-set On the other hand having multiple small packages will make your job harder. > I'm sorry if this seems daunting (it is on my side ;) and/or demanding, > but I would like this packaged the best possible way for both projects. > Who knows, this might show up in future RHEL versions (maybe I'm > delusional ;) The current consensus in the Zope community seems to be "avoid distribution packages, build your own Python from sources, then install Zope from sources in a sandbox". My personal experience with Zope 2 Debian packages reinforces the notion, although I still stubbornly stick with Python that comes with my distro. Well, sudo apt-get install zope2.9-sandbox was *very* nice for playing around in a sandbox, but for production use I will install Zope from sources. And I will probably have multiple different installations of different versions of Zope in different sandboxes, because each upgrade has to be carefully tested and scheduled with the clients. That's the voice of practicality. The voice of idealism says that yes, every little Zope package ought to be packaged in each popular distro, and these should work together nicely, and be bug-free and fully supported. It will take a lot of time and work to reach that state, and I'm afraid most of the Zopers are too busy building production applications to be much help with this. At least we have automated test suites... > Thank you for your time and patience. Marius Gedminas -- Despite all appearances, your boss is a thinking, feeling, human being.
signature.asc
Description: Digital signature
_______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )