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 Lyor G.
