On 30/07/2010 15:41, Marty Alchin wrote:
This is my first post to python-dev, so for those who might not know
me, I'm the author of Pro Django and more recently, Pro Python.
I haven't looked at the plugin landscape in a while, but I was very
disappointed the last time I looked at how complex typical systems
were in this regard. There seems to be entirely too much time spend
worrying about type checking, interface requirements and the like.
Python is based on simple ideas providing simple solutions, and I
would argue that duck typing is a perfectly acceptable route to take.
There is no type checking or interface requirements in my plugin
proposal for unittest. It is essentially an event based system.
I'd suggest that any plugin system proposal start off simple and work
up as needs arise, rather than trying to cover as many bases as
possible at the outset. I know it doesn't cover all the bases yet
(particularly with regard to discoverability), so I'm not throwing it
in as a proper suggestion, but I'll point out that I wrote up a
dead-simple plugin system a while back[1] that may provide a useful
starting point for discussion.
Tarek and I will look at what common ground there is between our plugin
needs and see if *that* can be usefully abstracted out. FWIW I think PEP
376 (as amended - needs updating I *believe*) for plugin installation
and discovery probably covers most of the common ground anyway.
For the actual plugins our two systems are very different.
I haven't read the existing proposals yet,
If you want to help us this may be a good place to start... ;-)
Michael
but I just wanted to
breathe a word of caution into this before it gets too far into
interfaces and whatnot. I'll be glad to help with any discussion that
takes place on this, though. It'll be a good way to ease into the
mailing list, since it's an area where I've already spent a good deal
of thought.
-Marty
[1] http://martyalchin.com/2008/jan/10/simple-plugin-framework/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/fuzzyman%40voidspace.org.uk
--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog
READ CAREFULLY. By accepting and reading this email you agree, on behalf of
your employer, to release me from all obligations and waivers arising from any
and all NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap,
clickwrap, browsewrap, confidentiality, non-disclosure, non-compete and
acceptable use policies (”BOGUS AGREEMENTS”) that I have entered into with your
employer, its partners, licensors, agents and assigns, in perpetuity, without
prejudice to my ongoing rights and privileges. You further represent that you
have the authority to release me from any BOGUS AGREEMENTS on behalf of your
employer.
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com