[issue16267] order of decorators @abstractmethod and @classmethod is significant (is not documented to be in @abstractclassmethod which advises their combined use)

2012-10-18 Thread Darren Dale
Darren Dale added the comment: There is a very practical reason, which was the whole point of issue11610. Descriptors are should declare themselves abstract when they are composed of abstract methods. If you have a property with an concrete getter but an abstract setter, the property should

[issue16267] order of decorators @abstractmethod and @classmethod is significant (is not documented to be in @abstractclassmethod which advises their combined use)

2012-10-17 Thread Darren Dale
Darren Dale added the comment: Quoting the documentation for abstractmethod: "When abstractmethod() is applied in combination with other method descriptors, it should be applied as the innermost decorator, as shown in the following usage examples:" The examples include static

[issue11610] Improved support for abstract base classes with descriptors

2011-12-15 Thread Darren Dale
Darren Dale added the comment: Is this patch ready to go? I haven't heard any feedback on the most recent version. -- ___ Python tracker <http://bugs.python.org/is

[issue11610] Improved support for abstract base classes with descriptors

2011-12-07 Thread Darren Dale
Darren Dale added the comment: New patch addressing comments in review. -- Added file: http://bugs.python.org/file23864/abc_descriptor.patch ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improved support for abstract base classes with descriptors

2011-12-05 Thread Darren Dale
Darren Dale added the comment: Patch addressing latest comments in review. Notable change: defines _PyObject_IsAbstract in object.c/object.h, rather than repeating the code in multiple files and functions. -- Added file: http://bugs.python.org/file23857/abc_descriptor.patch

[issue11610] Improved support for abstract base classes with descriptors

2011-11-30 Thread Darren Dale
Darren Dale added the comment: Here is a new patch addressing comments raised in review. It supersedes previous patch submissions. -- Added file: http://bugs.python.org/file23819/abc_descriptor.patch ___ Python tracker <http://bugs.python.

[issue11610] Improved support for abstract base classes with descriptors

2011-11-27 Thread Darren Dale
Darren Dale added the comment: I'll bump this one last time. -- ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bugs-list mailing list

[issue11610] Improved support for abstract base classes with descriptors

2011-11-07 Thread Darren Dale
Darren Dale added the comment: I just double-checked that the unit tests do not raise any warnings with this patch. Can it be merged? -- ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improved support for abstract base classes with descriptors

2011-10-16 Thread Darren Dale
Darren Dale added the comment: It would be nice if this patch could be merged in time for python-3.3... -- ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improved support for abstract base classes with descriptors

2011-09-15 Thread Darren Dale
Darren Dale added the comment: Any additional comments? -- ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bugs-list mailing list Unsub

[issue11610] Improved support for abstract base classes with descriptors

2011-07-23 Thread Darren Dale
Darren Dale added the comment: Here is a new version of the patch, addressing points raised in the review of the previous version. -- Added file: http://bugs.python.org/file22729/abc_descriptor.patch ___ Python tracker <http://bugs.python.

[issue11610] Improved support for abstract base classes with descriptors

2011-07-22 Thread Darren Dale
Darren Dale added the comment: I've requested additional feedback based on comments at Rietveld. -- ___ Python tracker <http://bugs.python.org/is

[issue11610] Improved support for abstract base classes with descriptors

2011-06-19 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file22323/abc_descriptors.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bug

[issue11610] Improved support for abstract base classes with descriptors

2011-06-19 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file21375/issue11610_v2.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bug

[issue11610] Improved support for abstract base classes with descriptors

2011-06-19 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file21307/issue11610.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bugs-list m

[issue11610] Improved support for abstract base classes with descriptors

2011-06-19 Thread Darren Dale
Darren Dale added the comment: Here is attempt #4. This patch extends the property, classmethod and staticmethod builtins with an __isabstractmethod__ descriptor. Docs and tests are updated as well. "make test" runs without failures. This is my first real attempt with the C-API, a

[issue11610] Improved support for abstract base classes with descriptors

2011-06-12 Thread Darren Dale
Darren Dale added the comment: On Sat, Jun 11, 2011 at 7:32 PM, Eric Snow wrote: > > Eric Snow added the comment: > Per your last message, if a specific descriptor has an abstract setter then > the descriptor should be considered abstract.  If the implementation of that > att

[issue11610] Improved support for abstract base classes with descriptors

2011-06-11 Thread Darren Dale
Darren Dale added the comment: [...] > > This wouldn't allow for the prettier error messages, but it's much cleaner > than having ABCMeta trawling through class attribute dir() lists. I think there is another reason to do it this way. Suppose I have a custom descriptor MyP

[issue11610] Improved support for abstract base classes with descriptors

2011-06-11 Thread Darren Dale
Darren Dale added the comment: On Sat, Jun 11, 2011 at 8:55 AM, Nick Coghlan wrote: > > Nick Coghlan added the comment: > > inspect.getattr_static has the necessary logic to search for descriptors > without invoking them. Unfortunately, we can't import inspect, even in

[issue11610] Improved support for abstract base classes with descriptors

2011-06-11 Thread Darren Dale
Darren Dale added the comment: [...] >> Traceback (most recent call last): >>  File "", line 1, in >> TypeError: Can't instantiate abstract class D with abstract methods >> foo.__func__ > > You still need to use @abc.abstractstaticmethod. Thinkin

[issue11610] Improved support for abstract base classes with descriptors

2011-06-11 Thread Darren Dale
Darren Dale added the comment: On Sat, Jun 11, 2011 at 3:11 AM, Daniel Urban wrote: > > Daniel Urban added the comment: > > It doesn't work with staticmethod: > >>>> import abc >>>> >>>> class C(metaclass=abc.ABCMeta): > ...     @sta

[issue11610] Improved support for abstract base classes with descriptors

2011-06-10 Thread Darren Dale
Changes by Darren Dale : -- components: +Library (Lib) -Interpreter Core ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bugs-list mailin

[issue11610] Improved support for abstract base classes with descriptors

2011-06-10 Thread Darren Dale
Changes by Darren Dale : Added file: http://bugs.python.org/file22323/abc_descriptors.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bug

[issue11610] Improved support for abstract base classes with descriptors

2011-06-10 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file22322/abc_descriptors.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bug

[issue11610] Improved support for abstract base classes with descriptors

2011-06-10 Thread Darren Dale
Darren Dale added the comment: Here is an improved patch, which includes feedback from python-dev. "make test" runs without failures, however test_abc.py prints deprecation warnings for abstractproperty. I'm not familiar with the protocol here, do we continue to include

[issue11610] Improved support for abstract base classes with descriptors

2011-06-10 Thread Darren Dale
Darren Dale added the comment: I posted the following at python-dev (http://mail.python.org/pipermail/python-dev/2011-June/111837.html): I would like to try to address some shortfalls with the way python deals with abstract base classes containing descriptors. I originally was just concerned

[issue11610] Improving property to accept abstract methods

2011-05-27 Thread Darren Dale
Darren Dale added the comment: Thank you for the suggestion. I will follow up at python-dev, but it will probably be a few weeks before I have time to do a proper job of it. -- ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: It just occurred to me, there is a potential problem with abstractproperty and the decorator syntax in my patch: class Foo: @abstractproperty def p(self): pass # p is abstract, but has no abstract methods @p.setter def p(self, val): pass

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: On Sat, May 14, 2011 at 6:24 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > 2011/5/14 Darren Dale : >> >> Darren Dale added the comment: >> >> It definitely is a common case, and alwa

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: On Sat, May 14, 2011 at 5:55 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > Okay: how about this. We retain the passing of @abstractmethod to > abstractpropert(), but @abstractgetter decorates the method for you.

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: On Sat, May 14, 2011 at 5:17 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > 2011/5/14 Darren Dale : >> >> Darren Dale added the comment: >> >> On Sat, May 14, 2011 at 4:28 PM, Benjamin Peterson

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: On Sat, May 14, 2011 at 4:28 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > I still dislike the reduntancy of having abstractmethod and abstractproperty > on a method. I think a better idea is having > abstrac

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: On Sat, May 14, 2011 at 12:20 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > 2011/5/14 Darren Dale : >> >> Darren Dale added the comment: >> >> Is there anything preventing this patch from bein

[issue11610] Improving property to accept abstract methods

2011-05-14 Thread Darren Dale
Darren Dale added the comment: Is there anything preventing this patch from being merged? -- nosy: +Darren.Dale ___ Python tracker <http://bugs.python.org/issue11

[issue8094] Multiprocessing infinite loop

2011-04-20 Thread Darren Dale
Darren Dale added the comment: I think I have a similar situation: C:\Py\Scripts\foo --- if __name__ == '__main__': import bar bar.main() C:\Py\Lib\site-packages\bar.py --- from multiprocessing import Pool def task(arg): return arg def main(): pool = Pool

[issue11610] Improving property to accept abstract methods

2011-04-10 Thread Darren Dale
Darren Dale added the comment: So, are there objections to this patch, or can it be merged? -- ___ Python tracker <http://bugs.python.org/issue11610> ___ ___

[issue11610] Improving property to accept abstract methods

2011-03-29 Thread Darren Dale
Darren Dale added the comment: On Tue, Mar 29, 2011 at 10:24 PM, Darren Dale wrote: > > Darren Dale added the comment: > > On Tue, Mar 29, 2011 at 9:31 PM, Benjamin Peterson > wrote: >> 2011/3/29 Darren Dale : >>> The benefit of abstractproperty.abstract

[issue11610] Improving property to accept abstract methods

2011-03-29 Thread Darren Dale
Darren Dale added the comment: On Tue, Mar 29, 2011 at 9:31 PM, Benjamin Peterson wrote: > 2011/3/29 Darren Dale : >> The benefit of abstractproperty.abstract{...} is that one decorator is >> required instead of two, right? Are there others? > > Mostly it doesn'

[issue11610] Improving property to accept abstract methods

2011-03-29 Thread Darren Dale
Darren Dale added the comment: I see some problems with this approach, but maybe I haven't fully appreciated it. Let me summarize the goals and constraints as I see them: 1) compatible with long-form and decorator syntax of {abstract}property declaration 2) backwards compatible, no chan

[issue11610] Improving property to accept abstract methods

2011-03-29 Thread Darren Dale
Darren Dale added the comment: Benjamin: have you thought this idea through? -- ___ Python tracker <http://bugs.python.org/issue11610> ___ ___ Python-bugs-list m

[issue11610] Improving property to accept abstract methods

2011-03-24 Thread Darren Dale
Darren Dale added the comment: (Ned, I'm running 10.6.6 with a 64-bit kernel. I've tried running ./configure without any arguments, and also with --prefix=/opt/local, since I install essentially everything with MacPorts.) -- ___ Pyth

[issue11610] Improving property to accept abstract methods

2011-03-24 Thread Darren Dale
Darren Dale added the comment: Here is a new version of the patch. I think it addresses all of the issues that have been raised to date. I had to comment out the -lintl line in Modules/Setup to build on OS X, this seems to be a similar issue to http://bugs.python.org/issue6154 . So I don&#

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file21295/property_with_abstractmethod_v2.patch ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Changes by Darren Dale : Removed file: http://bugs.python.org/file21293/property_with_abstractmethod.patch ___ Python tracker <http://bugs.python.org/issue11610> ___ ___

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Darren Dale added the comment: Thank you Daniel and Benjamin for the helpful feedback. I think the attached patch is a much better approach. It only touches abc.abstractproperty (instead of the builtin property), and uses a class method as a factory to return instances of either property or

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Darren Dale added the comment: On Sun, Mar 20, 2011 at 5:18 AM, Daniel Urban wrote: > > Daniel Urban added the comment: > > I tried to test your patch, but the build dies with this error: > Fatal Python error: Py_Initialize: can't initialize sys standard streams > Trac

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Darren Dale added the comment: On Sun, Mar 20, 2011 at 12:19 PM, Benjamin Peterson wrote: > > Benjamin Peterson added the comment: > > I think a better idea would be to override getter and friends on the > abstractproperty class. I just suggested the same at python-ideas.

[issue11610] Improving property to accept abstract methods

2011-03-20 Thread Darren Dale
Darren Dale added the comment: On Sun, Mar 20, 2011 at 5:18 AM, Daniel Urban wrote: > > Daniel Urban added the comment: > > I tried to test your patch, but the build dies with this error: > Fatal Python error: Py_Initialize: can't initialize sys standard streams > Trac

[issue11610] Improving property to accept abstract methods

2011-03-19 Thread Darren Dale
Darren Dale added the comment: Here is a new patch that addresses a couple problems found in review: * Unit tests contained a typo (Property instead of property) * DeprecationWarning would be issued when importing abc rather than when creating abstractproperty. (whether abstractproperty

[issue11610] Improving property to accept abstract methods

2011-03-19 Thread Darren Dale
Darren Dale added the comment: The discussion on python-ideas: http://mail.python.org/pipermail/python-ideas/2011-March/009411.html -- ___ Python tracker <http://bugs.python.org/issue11

[issue11610] Improving property to accept abstract methods

2011-03-19 Thread Darren Dale
New submission from Darren Dale : I posted a suggestion at python-ideas that the declaration of abstract properties could be improved in such a way that they could be declared with either the long-form or decorator syntax using the built-in property and abc.abstractmethod: {{{ class

[issue10031] Withdraw anti-recommendation of relative imports from documentation

2010-10-05 Thread Darren Dale
New submission from Darren Dale : Old-style relative imports have been strongly discouraged in some sections of the python documentation. This was discussed on the python-dev mailing list. Executive summary: "The issue is implementing a PEP with nice support for relative imports, and