-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hanno Schlichting wrote: > Hi. > > I'd like to get feedback on an idea I had recently. > > Problem > > Zope2 currently includes large parts of Zope 3. Not all of the zope.* > and zope.app.* packages are maintained or are in use. > > Still Zope 2 includes large amounts of them and thus implicitly > advertises them to be used. In addition they blow up the installed code > size and add a long term maintenance burden. > > The move to gain Python 2.6 compatibility has shown some of this and I > expect to see more work in moving to Python 3 at a later stage. > > Assumption > > Zope 2.12 will most probably see two kind of distributions. > > One is a Zope2 egg, consisting of one large Zope2 egg which pulls in > everything that has been eggified on their own as dependencies. This > includes the ZODB and all zope.* and zope.app.* packages. > > The second distribution is a tradtional tarball, which exactly matches > the current distribution format. > > Proposal > > I'd like to change the egg distribution alone and introduce one > setuptools extra to it. The old tarball distribution would stay the same. > > The standard Zope2 egg install would only include those zope.* and > zope.app.* packages which it actually requires. > > The extra would be called 'zope_app' and pull in all zope.* and > zope.app.* packages which we did include so far, but are not actually > required to run Zope 2. > > For example: > > extras_require = dict( > zope_app = [ > 'zope.app.rotterdam', > 'zope.app.<...>', > ], > ), > > Rational > > Any package that does require any of the zope.* or zope.app.* packages > can define those as an explicit dependency itself. The zope_app extra > makes the transition phase easier, in which packages do not yet declare > all their dependencies. In the long run, the extra can be dropped entirely. > > This proposal makes it possible to get a smaller, well-defined Zope2 > egg. The first egg release of Zope2 gives us an opportunity to do this > move without breaking backwards compatibility. > > While Zope 2 has included large parts of Zope 3, it never exactly > included all of it. As Zope 3 is not likely to see an ongoing monolithic > release, I don't see a reason for Zope 2 to include Zope 3 in the > monolithic fashion we do so far. > > Implementation > > This is not yet implemented but should be quite easy. Figuring out the > exact packages which are required by Zope 2 is to be done.
+1 to releasing a Zope 2.12 egg with "minimal" / "correct" dependencies. Perhaps the following script would help to identify them: http://www.tarind.com/py2depgraph.py Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 [EMAIL PROTECTED] Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFJBK9s+gerLs4ltQ4RApXCAJ0XxxlGM6kqPiepsDySVXBA4C4NnQCeI53v qJcn001PPGZjJ1YlhUUMT0U= =UprJ -----END PGP 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 )