Community rules
Many rules have been developed and published by the community. Follow this documentation to use them in your project.
Help us increase visibility & foster collaboration by submitting your favorite rule(s) via pull requests!
Hygiene rules
Hygiene rules enforce conventions, failing the build on violation or rewriting the code when possible.
Repository | Artifact | Description |
---|---|---|
ghostbuster91/scalafix-unified | io.github.ghostbuster91.scalafix-unified::unified | Set of opinionated rules to unify your codebase |
jatcwang/scalafix-named-params | com.github.jatcwang::scalafix-named-params | Add named parameters for your constructor and method calls |
vovapolu/scaluzzi | com.github.vovapolu::scaluzzi | Ensure a subset of scalazzi |
xuwei-k/scalafix-rules | com.github.xuwei-k::scalafix-rules | Avoid ambiguous or redundant Scala syntax & features |
pixiv/scalafix-pixiv-rule | net.pixiv::scalafix-pixiv-rule | Redundant Scala code rewriting and anti-pattern warnings |
dedis/scapegoat-scalafix | io.github.dedis::scapegoat-scalafix | Scalafix implementation of Scapegoat linter for Scala 3 |
Migration rules
Migration rules make it easier for library users to cope with deprecations and breaking changes.
Official migrations provided by library authors are not advertized here as they are usually well documented in the project itself. Note that Scala Steward keeps track of many of them, to provide a seamless experience to library users opting-in for the service.
Repository | Artifact | Description |
---|---|---|
ohze/scala-rewrites | com.sandinh::scala-rewrites | Rewrites for Scala |
OlegYch/enumeratum-scalafix | io.github.olegych::enumeratum-scalafix | Replace scala.Enumeration with enumeratum |
scala/scala-collection-compat | org.scala-lang.modules::scala-collection-migrations | Rewrite upgrades to the 2.13 collections |
scala/scala-rewrites | org.scala-lang::scala-rewrites | Rewrites for Scala |
xuwei-k/play-ws-scalafix | com.github.xuwei-k::play-ws-scalafix | Migrate to play-ws-standalone |
tersesystems/echopraxia-scalafix | com.tersesystems.echopraxia::scalafix | Rewrite Echopraxia logging statements |
Code generation rules
Code generation rules extend the possibilities of the Scala language by taking a route similar, yet parallel to macros.
Repository | Artifact | Description |
---|---|---|
earldouglas/linear-scala | com.earldouglas::linear-scala-scalafix | Add support for linear types in Scala |
hamnis/dataclass-scalafix | net.hamnaberg::dataclass-scalafix | alexarchambault/data-class as a Scalafix rule |
rtimush/zio-magic-comments | com.timushev::zio-magic-comments | Add explanatory graphs as comments to zio-magic methods |
sake92/kalem | ba.sake::kalem-rules | Generate with* methods for classes |
typelevel/simulacrum-scalafix | org.typelevel::simulacrum-scalafix-annotations | Simulacrum as Scalafix rules |