Rico is an open-source application framework led by Karakun supporting you to build better solutions in less time.

We are happy to share with you the new release 2.0 of Rico (Github, Bintray).

The reason that we have released a new major version number is that the changes introduced contain a set of breaking API changes that are outlined below.

Despite we announced with the last release that the next thing that will be addressed is the optimization of the Rico Remoting protocol, the team decided to focus on the following features. Reason behind this shift was an evaluation of the current state of Remoting (both in comparison to the other modules and with experiences from our projects) with the outcome that Remoting fulfils the use cases it is currently use for just fine and more optimization would be more driven by technical aspects than by actual requirements. Thus we decided to invest in areas where we see more impact.

So, what has been worked on?

What’s new?

Since Rico provides several modules that can be used standalone or in combination with each other we updated some of these modules and added several new features. Especially the Metrics and Logging modules have received some nice refactoring and additions which make these modules even easier to integrate and use in enterprise environments. The following topics give a quick overview about the most important changes in the 2.0 release.

Metrics

Logging

  • Extend context information for MDC in Log4J & Logback appender (PR 130,128)
  • Provide OS & Java information in RicoApplicationContext (PR 126)
  • Find out more in the documentation

TaskChain

  • Renamed the ProcessChain API to TaskChain API and added more flexibility to the fluent API (PR 114)
  • Find all the details in the documentation

Documentation & Samples

We have improve and extended the documentation for Rico tremendously. The outcome is available online.

In addition, we also updated our samples so you can use these as a reference. Please note, that every sample project has an separate README that contains a description not only on how to install and start the sample but also with some detailed information on the demonstrated feature.

Other changes

  • dev.rico.server.timing.Metric renamed to dev.rico.server.timing.ServerTimer
  • dev.rico.core.context.ContextManager renamed to dev.rico.core.context.RicoApplicationContext
  • Added additional global context attributes. For complete list see documentation
  • ServerModule SPI has been refactored, added convenience methods to ServerCoreComponents (PR 141)
  • Scheduler functionality provided as managed bean on the Server (SpringBoot, JakartaEE) (PR 132, PR 131)
  • Renamed dev.rico.core.lang.Tuple to dev.rico.core.lang.Pair (PR 125)

next …

With this release, we delivered more of the steps as planned in our roadmap (see “Outlook” on our homepage ).

Have fun using Rico to build awesome solutions and don’t hesitate to get in touch with us. We would love to hear from you and discuss further requirements.