Hash: SHA1

Tim Peters wrote:
> [Julien Anguenot]
>>>+    def beforeCommitHookOrdered(hook, order, *args, **kws):
>>>"""Register a hook to call before the transaction is committed. ...
>>>+        Note, a hook __call__() method can't define any 'order' argument
> since
>>>+        this one is reserved by this method
> [Florent Guillaume]
>>If that's a concern, maybe it can be called order__ or something ? What's
>>the pythonic way to do this ?
> It would be more accurate to say that the hook's __call__ method can't be
> invoked with a keyword argument named `order`.  The same is equally true of
> invoking it with a keyword argument named `hook`.  There's no problem if
> __call__ defines arguments named `hook` and/or `order` provided those are
> passed positionally to __call__.
> The problem (such as it is) is really inherited from the older function:
>     def beforeCommitHook(self, hook, *args, **kws):
> The "most Pythonic" way would have been to define that as
>     def beforeCommitHook(self, hook, args=(), kws=None):
>         if kws is None:
>             kws = {}
> much like Python's thread.start_new_thread() and threading.Thread()
> constructor.  Then Julien could have added an optional new `order=0`
> argument to the old function too (instead of creating an additional
> function).
> While not ideal, it's minor, and naming the fixed arguments (in both
> methods), e.g., __hook and __order would remove most of the little ugliness.

I renamed those arguments in both methods.

How can we solve this 2 methods problem ? Deprecation of the old one ?
Or can we live like this ?

- --
Julien Anguenot | Nuxeo R&D (Paris, France)
CPS Platform : http://www.cps-project.org
Zope3 / ECM   : http://www.z3lab.org
mail: anguenot at nuxeo.com; tel: +33 (0) 6 72 57 57 66
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to