-----BEGIN PGP SIGNED MESSAGE----- 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 ? J. - -- 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 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org iD8DBQFC99mKGhoG8MxZ/pIRAuAdAJwLWEcU6PZsmupCZ5FdFecl/7oKlQCfbEgw knkz+aMA5xQd/8lV4QYMc5U= =fLAS -----END PGP SIGNATURE----- _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev