Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wartremover/wartremover
Flexible Scala code linting tool
https://github.com/wartremover/wartremover
compiler-plugin linter macros scala
Last synced: 7 days ago
JSON representation
Flexible Scala code linting tool
- Host: GitHub
- URL: https://github.com/wartremover/wartremover
- Owner: wartremover
- License: apache-2.0
- Created: 2013-01-05T11:29:26.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2025-01-30T01:21:17.000Z (21 days ago)
- Last Synced: 2025-02-06T01:49:32.782Z (14 days ago)
- Topics: compiler-plugin, linter, macros, scala
- Language: Scala
- Homepage: https://www.wartremover.org/
- Size: 1.43 MB
- Stars: 1,092
- Watchers: 32
- Forks: 115
- Open Issues: 107
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# WartRemover
[![scaladoc](https://javadoc.io/badge2/org.wartremover/wartremover_3/javadoc.svg)](https://javadoc.io/doc/org.wartremover/wartremover_3/latest/org/wartremover/warts.html)
[![Maven Central](https://img.shields.io/maven-central/v/org.wartremover/wartremover_3?label=Maven%20Central&color=%236DBE42)](https://search.maven.org/search?q=g:%22org.wartremover%22%20AND%20a:%22wartremover_3%22)WartRemover is a flexible Scala code linting tool.
## Documentation
Documentation for Wartremover is available [here](https://www.wartremover.org).
## 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:```scala
// println("Hello world")
package $line4 {
object $read extends scala.AnyRef {
def (): $line4.$read.type = {
$read.super.();
()
};
object $iw extends scala.AnyRef {
def (): type = {
$iw.super.();
()
};
object $iw extends scala.AnyRef {
def (): type = {
$iw.super.();
()
};
private[this] val res1: Unit = scala.this.Predef.println("Hello world");
def res1: Unit = $iw.this.res1
}
}
}
}
```Adding the generated code to an issue is very useful for debugging.
## License
[The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt)