[Python-Dev] "setuptools has divided the Python community"
P.J. Eby
pje at telecommunity.com
Thu Mar 26 00:26:32 CET 2009
At 11:35 AM 3/25/2009 -0500, Olemis Lang wrote:
>Yes you're right, Trac requires .egg files for local plugins installs
>(... in /plugins folder ;) so that not all environments but only one
>be able to use the plugin ... but that's not exactly what I'm saying,
>since setuptools AFAIK *MUST* be already there ... so Trac depends on
>setuptools.
It depends on pkg_resources, which you can manually extract from the
setuptools package if you like. I believe there may be some distros
that actually do this, with separate system packages for "setuptools"
(really pkg_resources) and setuptools-devel (the setuptools.* code)
-- in which case you can have pkg_resources installed without the
rest of setuptools being present.
> > If you install a plugin from source using pip
>
>Like you said setuptools is already there ... pip depends on
>setuptools ... isn't it?
Yes, but that doesn't make *Trac* dependent on setuptools,
particularly in the system package manager case.
> > or a system package manager,
> > no .egg file is involved -- you'll have an .egg-info directory instead,
> > alongside the installed code. The pkg_resources API for accessing entry
> > points works with either .egg files or .egg-info directories.
> >
>
>Like I just said setuptools AFAIK *MUST* be there ... isnt it ? Am I
>still wrong ?
Not on the system using the package manager, no. (By 'setuptools'
I'm refering to the setuptools.* modules, not the setuptools
distribution... which is just another byproduct of our globally
confusing terminology for these things.)
>BTW ... if you (or anyone else ;) suggests me another pkg «like»
>setuptools (supporting entry points and so on ...) so that I can try
>how to install and use Trac plugins without setuptools + pkg_* in the
>middle ... I'll be open to try it out ... and learn a little ;)
You'd need pkg_resources, and if you're not using setuptools to
initially generate the files to install, you'd have to create the
entry point files by hand, following the EggFormats documentation I
linked to previously.
More information about the Python-Dev
mailing list