Hi everyone, ... if you followed the mailing list and the PR requests on Github in recent weeks and months you probably know that we merged quite a list of new features, improvements and the usual bug fixes. In fact, I think we had a pretty decent run looking at what was already accomplished and the almost completed changes:
- DONE: Migrated all old Spring XML configuration to Spring Java configuration - DONE: Major JAX-RS Jersey upgrade from 1.x to 2.x - DONE: Major improvements to make Fineract more configurable (without recompiles); database configuration cleaned up, SSL, cache, connection pool are completely configurable now, no more hardcoded values - DONE: Proper use of environment variables for configuration; properties based configuration to select authentication scheme (again, no recompiles) - DONE: Improved and faster Docker image builds with Google JIB - DONE: Introduced Asciidoc for documentation (existing documentation migrated, ongoing effort) - DONE: Support for JDK17 LTS (was JDK11 LTS previously) - DONE: Automatic Gradle project versioning (was previously done manually, Gradle plugin takes care of this now based on Git information) - DONE: Dropped Drizzle JDBC driver; using now MariaDB JDBC driver (that we can package with the distribution) - DONE: Added support for PostgreSQL - DONE: Replaced OpenJPA with EclipseLink - DONE: Replaced Flyway with Liquibase for database migration - DONE: Introduction of Lombok to reduce boilerplate code (ongoing effort) - DONE: Fixed Sonar security hotspots - DONE: Introduced Cucumber BDD testing - DONE: Work on making Fineract more modular started - DONE: Build speed improvements - DONE: Node aware job schedulers - WIP: Alternative implementation for the reporting module based on Eclipse BIRT (replacing Pentaho hosted at mifos) - WIP: (Semi-) automatic releases with JReleaser - WIP: Enforcement of architecture rules with ArchUnit - WIP: Publish most recent documentation with every merge to develop - WIP: Publish release and latest development stable Docker image on Docker Hub - WIP: Migrate integration tests to Cucumber and replace test infrastructure (Gradle Cargo Tomcat plugin, external MariaDB setup) with ready to use Testcontainers (working on test speed) - ... and not to forget the numerous functional improvements! Let me take a moment to thank everyone who contributed with code and ideas, but also everyone who tried and tested Fineract and gave valuable feedback for bug fixes and improvements. I hope I didn't forget anything important in the list above, but I think it's safe to say that all these changes taken together are quite an important step forward. If you have a moment please also have a look at this year's GSoC proposals; quite an impressive list there and I hope that most if not all of the projects find their way into the upstream codebase this year. And finally we have more new features and improvements in preparation (that's maybe for a separate post). This is why I'd like to suggest having a new release 1.7.0 beginning/mid May 2022. The main focus recently has been to polish off some rough edges we might still have and most importantly to beef up the documentation for all the new features, but also to improve the existing documentation. Please let us know what you think and what else you need/would like to see in this release. Cheers, Aleks
