Curb Your Enthusiasm (was Re: Python 2.2 Support has been officially dropped (was Re: [Twisted-Python] Python 2.2 Support))

Thomas HERVE therve at free.fr
Tue Dec 27 12:04:20 EST 2005


Quoting glyph at divmod.com:

> On Tue, 27 Dec 2005 15:45:48 +0100, Thomas HERVE <therve at free.fr> wrote:
>> Quoting Jean-Paul Calderone <exarkun at divmod.com>:
>>> Patches that remove usage of the string module will surely be accepted. :)
>>
>> It would be good : I count 94 occurences of string import in the trunk. I'll
>> open a topic.
>
> This is a worthwhile goal since we made the decision to stop 
> importing the string module several years ago, however:

[Issue created here : http://twistedmatrix.com/bugs/issue1381].

> Just because Python2.2 support has been dropped does not mean that we 
> should waste time crawling all over the codebase to update "old" code 
> to the new standard.

Ok I understand that. Hopefully it doesn't apply to the string module :).

> 2) If you're that enthused to do work on Twisted, there are lots of 
> other, more worthwhile projects you could be engaging in.  I'm 
> tempted to write a list, but you know where the bugtracker is.  Let's 
> not make any unnecessary work.  If you're interested in stylistic 
> improvements, one thing you might want to look at is removing uses of 
> deprecated trial APIs such as wait() from the unit tests.

Great. I'm willing to work on Twisted, and I have time for that. I work
full-time on Twisted-based applications, and my employer is well-disposed to
give a bit of this time to Twisted itself. Indeed taking tasks in the bts is a
good way to help Twisted.

>> Ok, thanks for your answer. I miss new-style class for mainly one 
>> thing : the
>> automatic __init__, great for subclasses.
>
> How is __init__ more automatic in new-style classes?  Do you mean super()?

Well I mean like that:

class MyClass(TwistedClass):
    def __init__(self, myargs):
        super(TwistedClass, self).__init__() # doesn't work
        TwistedClass.__init__(self) # doesn't work either

> At any rate, when we do start a new-style push, we should probably 
> have a 'from twisted import __metaclass__' at the top of each file, 
> to make updating the codebase to incorporate object-model and/or 
> debugging enhancements easier.

I remember seeing this in Nevow, without understanding it at first. It 
seeems to
solve the super problem, but looks a bit like black magic :).

Thanks a lot for your patience, I'll try to bit less noisy and more useful.

-- 
Thomas





More information about the Twisted-Python mailing list