[Distutils] virtualenv & pypi-server

Andrea Crotti andrea.crotti.0 at gmail.com
Thu Oct 27 17:58:00 CEST 2011


On 10/27/2011 04:34 PM, PJ Eby wrote:
>
> You're making this way too hard.  ;-)
>
> All of the APIs you're using are low-level things, used only for 
> advanced plugin frameworks or installer tools.  All you need for a 
> simple script is:
>
> sys.path.insert(0, abspath('egg_directory'))
> import pkg_resources
> pkg_resources.require('foolproof')
> import foolproof
>
>

Thanks, that's much better right :)
So anyway I do have to work with plugins, specifically envisage plugins.

Moreover, our applications are normally composed by more than one egg, 
and each of them has
its own setup_requires requiring a set of the global eggs.

At the moment the run system is a bit complicated and uses 
pkg_resources.find_plugins...

That said reading the API was still interesting, and for example I found the

working_set.subscribe

In theory I can register a callback function that when something is 
"found" does something,
and I thought immediately that it might be possible to hot-swap some 
plugins at run-time,
is that true doing some tricks with that, is that correct?

def mycallback(dist):
     if dist == 'name':
            # reload(dist), if anything like this can be done at all


More information about the Distutils-SIG mailing list