All Projects → wartremover → Wartremover

wartremover / Wartremover

Licence: apache-2.0
Flexible Scala code linting tool

Programming Languages

scala
5932 projects
macros
77 projects

Labels

Projects that are alternatives of or similar to Wartremover

Super Linter
Combination of multiple linters to install as a GitHub Action
Stars: ✭ 7,445 (+678.77%)
Mutual labels:  linter
Cuke linter
A linting tool for Cucumber
Stars: ✭ 24 (-97.49%)
Mutual labels:  linter
Iblinter
A linter tool for Interface Builder
Stars: ✭ 915 (-4.29%)
Mutual labels:  linter
Jupyterlab Lsp
Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol
Stars: ✭ 796 (-16.74%)
Mutual labels:  linter
Sonar Jproperties Plugin
SonarQube Java Properties Analyzer
Stars: ✭ 5 (-99.48%)
Mutual labels:  linter
Sublimelinter Eslint
This linter plugin for SublimeLinter provides an interface to ESLint
Stars: ✭ 839 (-12.24%)
Mutual labels:  linter
Pydocstyle
docstring style checker
Stars: ✭ 752 (-21.34%)
Mutual labels:  linter
Aurora
📦 A set of configs and rules for Typescript projects.
Stars: ✭ 30 (-96.86%)
Mutual labels:  linter
Dll
Go linter for finding defer statements inside for loops
Stars: ✭ 23 (-97.59%)
Mutual labels:  linter
Eslint Closure
ESLint Plugin and Config for the Google JavaScript Style Guide
Stars: ✭ 21 (-97.8%)
Mutual labels:  linter
Sublime Phpcs
🔍 PHP CodeSniffer, PHP Coding Standard Fixer, Linter and Mess Detector Support for Sublime Text
Stars: ✭ 805 (-15.79%)
Mutual labels:  linter
Lintr
Static Code Analysis for R
Stars: ✭ 817 (-14.54%)
Mutual labels:  linter
Go Critic
The most opinionated Go source code linter for code audit.
Stars: ✭ 875 (-8.47%)
Mutual labels:  linter
Awesome Go Linters
A curated list of awesome Go linters. More than 60 linters and tools!
Stars: ✭ 801 (-16.21%)
Mutual labels:  linter
Eryngii
[WIP] Erlang lint and formatter
Stars: ✭ 28 (-97.07%)
Mutual labels:  linter
Sonarts
Static code analyzer for TypeScript
Stars: ✭ 776 (-18.83%)
Mutual labels:  linter
Bpmn Js Bpmnlint
A bpmnlint plug-in for bpmn-js.
Stars: ✭ 26 (-97.28%)
Mutual labels:  linter
Ale Sensible
Pretty, responsive and smooth defaults for a sane ALE, gets you started in 30 seconds
Stars: ✭ 30 (-96.86%)
Mutual labels:  linter
Rubocop Packaging
A RuboCop extension focused on enforcing upstream best practices and coding conventions.
Stars: ✭ 29 (-96.97%)
Mutual labels:  linter
Pyupgrade
A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.
Stars: ✭ 883 (-7.64%)
Mutual labels:  linter

WartRemover

scaladoc Maven Central

Join us on gitter

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.

License

The Apache Software License, Version 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].