On 02/08/2010 00:46, Tarek Ziadé wrote:
[snip...]
I don't think that unittest would use a distutils2 (or pkgutil) supplied API
for activation.
But the discovery API you will use might just simply filter out
disabled plugins.

I did consider asking this but thought it was a silly question - there *must* be an API to get all plugins otherwise applications couldn't activate or deactivate them (or allow their users to do this) - and then how could users activate a non-active plugin? (I guess there could be private APIs that only distutils2 is supposed to use, or the script that you mentioned.)

On the other hand if the user has deactivated a plugin through distutils2 I have no problem with it not being available to unittest.

In any case, if unittest2 tries to bypass this activation flag I don't
see the point of having it there
since its purpose is to let the end-user deactivate a plugin that
might be used by several applications.


Right. As I explained, I don't think unittest *can* use this mechanism since it can have plugins active for one project but not for another. I would really have no problem with this machinery existing, but it wouldn't be useful/usable by unittest for plugins.

It sounds like it can fairly easily be bolted on as a new feature set later *anyway*, so dropping it for now simplifies the initial implementation.

Wouldn't that mean that distutils2 would still need its *own* system for telling whether or not installed plugins are active? So maybe you have to build it anyway.

unittest needs *separate* per user and per project
activation (a plugin active for a project may not be needed in other
projects and so won't be enabled at the user level for example).
And sharing plugins across apps is a use case too: Nose could use
unittest2 plugins and vice-versa.

Hehe, well - that's a different story...

Michael

Tarek


--
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

Reply via email to