Skip to content

v0.9.0

Latest
Compare
Choose a tag to compare
@pauljamescleary pauljamescleary released this 06 Dec 16:32
· 64 commits to master since this release

Significant non-backward compatible release

The 0.9.0 release is an overhaul of the money library. So much of the actual dependencies, namespaces, and type names have changed.

Remove Akka as the core run-time
Money 0.8.x used Akka and Akka Actors to "drive" span data collection and generation. This introduced the following issues:

  1. Incompatible akka versions - if you wanted to use money on a project that was already using akka, the money version of akka could be incompatible with the version in your application
  2. Unncessary overhead - because actors have their own executors / mailboxes / etc., using akka and in particular the way akka was used created overhead in the JVM that was unnecessary

As such, we have removed all need for akka in order to work with money

Introduce a java api
One of the criticisms of money has been that it requires scala to work. This can be an impediment for low-resource applications as the scala library is quite large. A new package money.api has a java only contract that can easily be implemented in other JVM languages.

Note: The default implementation is still scala based

Remove Spring 3 support
Spring 3 has long been EOL. There are a number of known security issues with Spring 3. As such, money now only supports Spring 4.x and above.

This will require you to change your maven dependency, as well as imports, if you upgrade.

Overhaul the config
0.9.0 introduces a new way to configure money. This will break existing installations as the config syntax has changed.

Money still supports configurable collection of span data, including introducing your own handlers.

Removal of TracedFuture
Money 0.8.x supported the concept of tracing scala standard library Future. This proved to be unreliable in usage and had limited to zero adoption.

Support JDK 8, remove support for older versions

Support Scala 2.12, remove support for older versions