mina-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <elecha...@gmail.com>
Subject Re: Q: SSHD - Should we add dependencies to Apache Commons or not ?
Date Tue, 14 Aug 2018 20:49:07 GMT

Le 14/08/2018 à 19:54, Lyor Goldstein a écrit :
> While going over the MINA SSHD code in order to try and break it down
> further to smaller modules, I encountered quite a few utility classes that
> duplicate (exactly or closely) code that already exists in other very
> popular "3rd party" library - specifically Apache Commons (...so not quite
> "3rd party"...) . E.g., *IOUtils*, *GenericUtils*, *ValidateUtils*,
> *NumberUtils*, etc....
> While I understand the advantages of maintaining a low dependency factor,
> there is still the issue "re-inventing the wheel". I would therefore like
> to float this question on the forum and get your opinions on this.
> Specifically, I would suggest we add *compile* dependencies on Apache
> *commons-lang3,
> commons-collections4* and *commons-io* (perhaps also *commons-text,
> commons-codec, commons-compress* but unlikely). At the same time, of
> course, replace the duplicating utilities code with calls to these new
> libraries.
> My main drive is that these are very popular libraries, well maintained and
> thoroughly tested, not to mention very useful. It, therefore, feels
> wasteful to replicate code that is already available out there (and for
> free...). Furthermore, their license is fully compatible with ours - after
> all, they are under the same umbrella as SSHD - i.e., the Apache
> foundation...
> I would welcome your opinion and insight on this

On important aspect of adding external dpendencies is that it' binds ou
users, unless they use OSGi.

The rational behind copying the few methods from mib X or Y into the
SSHD/MINA code base is to avoid having such dependencies.

Of course, it's all about the size of what is copied. At some point, it
would be better to go witha third party dependency instead of copying
its code.


Emmanuel Lecharny


View raw message