Fineract CN currently depends on 'org.mariadb.jdbc:mariadb-java-client:1.4.3' as our JDBC driver. It's for our connection to an SQL database, and can be used for MySQL as well as MariaDB. This component is licensed as LGPL, and therefore, needs to be replaced before we release. The current suggestion is to replace it with drizzle. Other suggestions are also welcome.
Why can't we have dependencies to LGPL software? This sequence of events would be bad:
1.) We include LGPL software in our release.
2.) Our code, including the LGPL dependency is included in proprietary code of CompanyOmega
3.) Some judge somewhere decides that the "firewall" separating our code from the LGPL isn't strong enough to call prevent the viral aspects of LGPL from taking effect.
4.) CompanyOmega's proprietary code is now all open source and they go out of business.
It's not a likely sequence, but because of the size of the negative outcome, we avoid it by not including LGPL (or any other Category X software) in our releases.