RFC: addCleanup should take *args and **kwargs?
John Arbash Meinel
john at arbash-meinel.com
Fri Apr 13 18:09:09 BST 2007
Aaron Bentley wrote:
> Vincent Ladeuil wrote:
>>>>>>> "robert" == Robert Collins <robertc at robertcollins.net> writes:
>> robert> On Fri, 2007-04-13 at 08:03 +0200, Vincent Ladeuil wrote:
>> >> +1, as long as we take care of checking the presence of the
>> >> callable *and* its (*args, **kwargs)
>> robert> What do you mean by this?
>> addCleanup checks that callable is not already in the cleanup
>> list, if we use the same callable for different parameters, it
>> should still be added, not rejected as a dupe.
>> Nit-picking, better safe than sorry, etc :)
> I don't think you can predict that
> 1. If a programmer mistakently adds a cleanup twice, that this fix will
> catch it
> 2. If a programmer adds a cleanup twice, it is a mistake.
> So I don't think this is a good idea. If double-adding a cleanup causes
> an error, the programmer will see this and fix it. If it is not an
> error, it should not be forbidden.
I agree. I was just thinking about potentials for a "lock/unlock" combo.
Where one of the callers might be helpful by adding 'unlock()' for you.
But the test code adds another lock, so you need to add another unlock.
I would probably rather have addCleanup not check for duplicates.
More information about the bazaar