[Twisted-Python] PyRendezvous has been relicensed to LGPL(!)

Bob Ippolito bob at redivi.com
Mon Mar 24 07:11:53 EST 2003


On Monday, Mar 24, 2003, at 06:40 America/New_York, Glyph Lefkowitz  
wrote:

> On Sunday, March 23, 2003, at 11:22 PM, Bob Ippolito wrote:
>
>> I saw on freshmeat today that PyRendezvous (  
>> http://radio.weblogs.com/0105002/stories/2003/01/06/ 
>> multicastDnsServiceDiscoverForPython.html ) has been relicensed to  
>> LGPL, so maybe we don't have to write our own, at least not all of >> it.
>
> We do tend to NIH here, but there are usually good reasons.  Here are  
> a few why rewriting would be a good idea in this case:
>
> 1. I can't accept GPL'd software into Twisted if the author isn't  
> willing to contribute it.  Perhaps this means we need some kind of  
> 'contrib' section?

That's entirely true.. a contrib section would probably be pretty  
interesting, I don't know how that would work or if it would ever  
really get used though.

> 2. That particular project's implementation was completely terrible; I  
> may be wrong about this, because I haven't evaluated it thoroughly,  
> but it's pretty well tied to threading and blocking.

At a cursory glance, that's what it looked like to me as well.. but  
then I looked a little closer and saw that most of this stuff could be  
hacked apart rather easily (i.e. deleting a bunch of code) and modified  
to fit the reactor pattern.

> 3. Twisted is going to need to rely on service discovery for a lot of  
> stuff, eventually.  I _want_ a version of this rewritten from scratch  
> with Twisted idioms in mind.  (I also wouldn't want something this  
> potentially important to the core to be off in a seldom-maintained  
> 'contrib' module.)

I agree, but if we can create a throwaway prototype of zeroconf service  
discovery by modifying this module then I think we'll be much better  
off for when we do develop our own.  It'll give us a clear picture of  
how NOT to do it in Twisted, what we can and can't do with it, and how  
best to make the API because we'll have surely used one that didn't  
quite make perfect sense in the Twisted world.

-bob





More information about the Twisted-Python mailing list