On Tue, 22 Nov 2005, "Martin v. Löwis" wrote: > > As > > I've already stated, applying this same policy to Java libraries would > > be to demanding that all the .class files be extracted to the filesystem > > and any manifest files be deleted, before Debian would consent to > > package them. In other words, it would be silly and pointless, because > > the users would then ignore the packages in favor of actual jars, > > because then their applications would actually work. > > This is not the same. A java .jar file is deployed by putting it on > disk. For an egg, an (apparently undocumented) number of additional > steps is necessary, such as editing easy-install.pth. > > In Java, the drawback of course is that each user has to edit > CLASSPATH to include all the jar files desired. easy_setup > makes this unnecessary, but in a way unfriendly to dpkg (and > I assume other Linux package formats).
Actually, I believe this is the eventual primary intended mode of operation of eggs. In that case, the necessary sys.path manipulation is handled either by setuptools' wrapper scripts / wrapper .exe files calling require(version), or by calling that function elsewhere. The difference from .jar files is that you have the *option* of doing a global install into site-packages, which adds an entry to the .pth file. Phillip's primary use case for the whole egg / setuptools thing is, IIUC, precisely the zero-install case, in particular to support installation of plug-ins by dropping them into a directory, without even requiring any "add it to a path" step. Can I ask you (Martin) a couple of questions? 1. Does the above affect your concern about reading many zip files? 2. I understand your concern about memory usage (though the above seems to make it a non-issue in practice, if used sensibly), but I must have missed the argument you made for setuptools and/or Python Eggs being problematic for distributors such as Debian and Gentoo. What specifically is/are the problem(s)? It seems at least two distributions are already actively moving towards use of Python Eggs, so it would be good to inform those distributors of any problem you see before they get too far. John