Awesome
WartRemover
WartRemover is a flexible Scala code linting tool.
Documentation
Documentation for Wartremover is available here.
Reporting Issues
It's very useful to get the tree expanded by the Scala compiler,
rather than the original source. Adding the -Xprint:typer
flag to
the Scala compiler will show code like the following:
// println("Hello world")
package $line4 {
object $read extends scala.AnyRef {
def <init>(): $line4.$read.type = {
$read.super.<init>();
()
};
object $iw extends scala.AnyRef {
def <init>(): type = {
$iw.super.<init>();
()
};
object $iw extends scala.AnyRef {
def <init>(): type = {
$iw.super.<init>();
()
};
private[this] val res1: Unit = scala.this.Predef.println("Hello world");
<stable> <accessor> def res1: Unit = $iw.this.res1
}
}
}
}
Adding the generated code to an issue is very useful for debugging.