On Feb 22, 11:01 am, Jean-Paul Calderone <[EMAIL PROTECTED]> wrote: > On 22 Feb 2007 04:53:02 -0800, Flavio <[EMAIL PROTECTED]> wrote: > > >Hi, > > >Nowadays the addition of functionality to programs by means of > >plugins is very frequent. > > >I want to know the opinions of experienced Python developers about the > >best practices when it comes to developing a plugin system for a > >Python package. > > >Should plugins be modules in a separate package? > >Should there be a registry of available plugins? how would such a > >registry be implemented? etc. > > >thanks, > > Best practice may be to not develop a new plugin system. There are quite a > few available already. Most likely, at least one of them is suitable for your > application. > > Here are a couple starting points: > > http://twistedmatrix.com/projects/core/documentation/howto/plugin.html > > http://peak.telecommunity.com/DevCenter/setuptools#dynamic-discovery-... > > Jean-Paul
The plugin system provided by twisted looks interesting (though not as simple as it could be, IMHO). Its main problem is that it introduces two dependencies : Twisted plugin and ZopeInterface. I think a functional plugin system could(and should) be done using only the standard library. Flávio -- http://mail.python.org/mailman/listinfo/python-list