[PEAK] Patch to clear RuleSet
Phillip J. Eby
pje at telecommunity.com
Tue Jul 15 13:14:41 EDT 2008
At 11:05 AM 7/15/2008 -0400, Phillip J. Eby wrote:
>At 01:58 PM 7/9/2008 +0200, Alberto Valverde wrote:
>>It has been requested in turbogears-trunk  for a mechanism to clear
>>all rules in a generic function like the old RuleDispatch's
>>GenericFunction.clear() method. I've created a patch against the latest
>>trunk that implements this. Maybe you want to consider adding it.
>Actually, I'd prefer to add a RuleSet.clear() method, so you could
>use rules_for(func).clear() in that case, rather than having a
>It also appears to me that RuleSet.__iter__ is broken, in that it
>really should hold the lock for the entire iteration, as it's not
>threadsafe otherwise. :( So, certainly the remove() operation
>should be atomic too.
Okay, both RuleSet.clear() and a fixed RuleSet.__iter__ are in SVN
and a snapshot build now, along with a temporary fix for the IsSubclass issue.
It seems to me that there is more to the issubclass issue than meets
the eye, in that there are potentially other test combinations that
might really need to be ordered similarly. I'll write up another
post with some thoughts on that as soon as it's practical.
More information about the PEAK