Upgrade to Grails 5 to improve internationalization, security and testing

If you haven’t noticed, OpenBoxes has been stuck on Grails 1.3.9 for a while now. Please don’t do the math, it’s embarrassing.

There are obvious reasons to do this upgrade

  • Improve performance and reliability
  • Incorporate newer technologies and standards (microservices, Spock)
  • Patch security vulnerabilities and framework bugs that were fixed years ago (Spring, Hibernate)
  • Replace EOL’d technologies that are no longer supported (Java 7)

Whether it’s writing unit tests more easily or making some much-needed improvements around security (i.e. authentication, authorization, REST API security), Grails 5 will allow us to make a huge improvement to OpenBoxes core without writing a single line of code!

Note: While hypothetically true, we’ll probably need to write some code to fix regressions brought about by the upgrade. So technically I’m lying. Apologies to you, dear reader.

We are also hoping this upgrade will allow us to attract more developers by making the application more fun and enriching to contribute to as we’ll be using more relevant technologies. In addition, we think that the upgrade will improve OpenBoxes’s shelf-readiness making it easier for implementers to configure a more secure system that will reduce their time to deployment and lower operational costs.

We are currently exploring funding for this project and wanted to solicit feedback from the community regarding our proposal. Please review the proposal and make any suggestions in the comments below.