OpenMRS has a powerful SDK, which contains many useful features for developing OpenMRS. However, as OpenMRS has continued to evolve, the SDK has grown increasingly brittle. This project seeks to revamp the SDK to better support OpenMRS's needs going forward. The main goal here is to revamp the tooling so that it better supports newer versions of OpenMRS while providing a legacy interface for the things that work today.
Excellent Java skills
Some experience with Maven (having written a Maven plugin before is a huge plus)
Experience with or desire to learn about refactoring
Project Rating and length
Spin-off a version of the SDK to support OpenMRS 1.x releases based on Java 7
Revamp the SDK to take advantage of Java 8 features
Upgrade the SDK to use a recent version of Maven as the core
Improve the documentation system for all plugins
Rework the build-distro and setup commands so that we can specify per-version customizations. For instance, for OpenMRS versions from 2.0 - 2.3, the SDK should default to producing Docker images based on Java 8. For 2.4+, basing Docker images on Java 11, etc.