Does my Scala Value Class really not get allocated?
Scala’s Value Classes are a powerful and widely used mechanism for extension methods and additional type safety, both without incurring the runtime overhead of an allocation. For example, we can provide additional methods for instances of Foo (which may well be defined in a library out of our control) as ... Read More
Understanding JVM soft references for great good (and building a cache)
Java (the island) landscapeThere are plenty of good and popular caching libraries on the JVM, including ehcache, guava and many others. However in some situations it’s worth exploring other options. Maybe you need better performance. Or you want to allow the cache to grow and fill up the entire heap, ... Read More
Open sourcing release plugin `sbt-ci-release-early`
Today we’re happy to announce another open source project: sbt-ci-release-early. It’s an sbt plugin that takes care of automatically releasing your projects including git tags, and supports both your in-house setup (e.g. jenkins/artifactory) as well as your public builds (e.g. travis.ci/sonatype).In essence, it allows you to fully automatically release a ... Read More