/scalafix-rules

Custom scalafix rules

Primary LanguageScalaApache License 2.0Apache-2.0

Scalafix rules for scalafix-rules

Build Status Current Version Known Vulnerabilities Scala 2.12 Scala 2.13 Scala 3

Installation

ThisBuild / scalafixDependencies += "software.purpledragon" && "scalafix-rules" % "<version>"

Rules

IllegalImports

Checks for usage of 'illegal' classes or packages. These could be non-portable code (such as com.sun.*), legacy code from third-party libraries or code that will not work on certain environments (such as java.awt.* on a headless server).

Inspired by the IllegalImportsChecker from Scalastyle and the IllegalImport check from Checkstyle.

Example:

Example.scala:5: error: [IllegalImports] import of class from illegal package
import com.sun.net.httpserver.HttpServer
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Configutation

Name Type Description
error List[String] List of imports to make illegal. These can be fully-qualified classes (java.util.Vector) or package wildcards (com.sun.*).
warning List[String] List of imports to warn on usage. These are in the same format as error but will not fail the buid.

Defaults

IllegalImports.imports = [
  "com.sun.*"
]