Richard Wallace ha scritto:
> Next, is how we'll get the project started.
> 1) Start from scratch

I would avoid this, even if I think our final result will have very few
things in common with the original work.

> 2) Copy protocol-dns and build from there, using dnsjava and dnsjnio for
> reference.
> 3) Pursue importing, relicensing under ASL 2.0, and refactoring dnsjava
> (http://www.dnsjava.org/index.html), with permission from Brian
> Wellington, the author.
> 4) Import dnsjava under the BSD license, changing the name and package
> and making a reference to the original dnsjava in the LICENSE file
> (assuming this is the way it works according to the BSD license).

As I wrote previously unless someone will state that he/she is willing
to implement DNSSEC, Cache and other more complex issues related to dns,
I really think we should go for starting from dnsjava code: we will
probably need big refactorings from this and probably we'll end
rewriting 90% of it, but I think that the overall quality will be much
better it we refactor than if we write from scratch.

Let's remember that DNSSEC and Cache management (using TTL expiration)
is a big part of the dnsjava library, and to add asynchronous suopport
there is no need to rewrite it from scratch (if we try to mantain its
Message model). Furthermore if we try to have similar message models it
will be more easy to port applications based on dnsjava (e.g: JAMES jSPF
and JAMES Server are dnsjava apps)

> 5) Pursue importing, relicensing under ASL 2.0, and building from
> dnsjnio (http://sourceforge.net/projects/dnsjnio/), with permission from
> the author, Alex.

Please note that dnsjnio is only a simple wrapper around dnsjava adding
asynchronouos capability using NIO directly. If we start a sandbox in
MINA it seems clear that the library will have to use MINA, so most code
is not reusable.
Of course I would really like to see Alex as a contributor to this
project too!

I think dnsjava is great but it's bigger limit is Brian Wellington is a
single mantainer (even if he has been really good in this years).

> I like #3 if Brian is willing to contribute the code.  It is mature and
> well used by other projects.  It has a good, solid suite of unit tests
> that will help in porting it to use MINA.  I don't like the idea of
> trying to use dnsjava without Brian's approval even if it is within the
> bounds of the BSD license.  So if we can't get approval from him, my
> next choice would be #2.  I haven't had a chance to look much at
> dnsjnio, so I'm not sure about #5, although Stefano seems to think that
> he'd be more willing to relicense his code.

See the previous paragraph.

> I'm sure there are some alternatives I'm missing.  But I hope this is a
> good start at summarizing the options we've come up with so far.

I see the same alternatives.

Stefano

Reply via email to