[Twisted-Python] PyRendezvous has been relicensed to LGPL(!)
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
> On Sunday, March 23, 2003, at 11:22 PM, Bob Ippolito wrote:
>> I saw on freshmeat today that PyRendezvous (
>> 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.
More information about the Twisted-Python