curl based "package manager"

If you are an engineer who uses scala repl and sbt a lot like I do, chances are you probably use Ammonite and sbt-extras. If you don't, then you should really consider it. But this is not the point of the post. The point is that those tools (and many others of same kind) are »

git remote: make it easy

Recently I was installing new version of Linux Mint, my preferred Linux distro, and dragged some handy aliases I use from my old .bashrc. One of my recent additions was the one I called gitr from git remote. I work in a team, and from time to time I find myself in a need to »

Scalatest, Maven and Missing Tests

As you may know ScalaTest provides a JUnitRunner and you can perfectly run your scala tests as if they are regular junit tests. In particular, you can run them from maven, using surefire plugin. Why would you do this? In case you have a mixed Java/Scala project with tests written using junit as well »

Redis Lua Tips

As you may know Redis allows you to pass a Lua script which will be executed on server side. What great about it is that it will be executed atomically, as Redis is single-threaded. Though beware of long-running scripts as they can hog the server. So what good can you do with Lua? Actually a »

Call Scala curried functions from Java

For some reason I thought scala curried functions is one of the features you will have troubles using from Java. But it happens that you can perfectly call a curried Scala function class A { def curried(i: Int)(s: String) = i + s.toInt } from Java new A().curried(5, "7") »

Sbt Plugins: No Default Package Please

Usually people don't put sbt builds in a package (I'm talking about scala files here), especially for simple and small projects. And they easily can use all the sbt plugins. But there are other users who have bigger and more complex builds. So they put their builds in packages and then they discover they can »

Override a list property for Typesafe Config

Today I naively was trying to override a list property for a unit test with the following code System.setProperty("list.property", """[ "val1", "val2"]""") The tested code is reading the list property using typesafe config library val listProperty = config.getListString.asScala.toSet That was throwing com.typesafe.config.ConfigException$WrongType: system properties: list.property has »