Having a uniform style across your codebase helps maintain its readability and makes navigation easier. Code formatters help with just that, and they exist for almost every primary language – whether official or community-supported. For example, there is
clang-format for C and C++,
gofmt for Go, and
scalafmt for Scala.
Apart from Analyzers, DeepSource also supports Transformers, a feature that formats code on auto-pilot across your repositories — commits and pull requests. In July, we released a beta version of our Scala Analyzer. Today, we have completed the support for the Scala ecosystem. We are happy to announce the support for
scalafmt . You can now ensure that not only your code adheres to the required standards but is also styled consistently across the codebase.
Here’s what a Transformers workflow looks like:
- If a pull/merge request is raised with the default branch as the base, a
transforming commit is added to that branch.
- If a commit is created on the default branch, DeepSource raises a pull/merge
request with transforming changes.
Add an entry in
transformers table in
.deepsource.toml with the name of the transformer and
enabled = true .
e.g., to add
[[transformers]] name = "scalafmt" enabled = true
If you don’t like to type TOML by hand, go to Settings → “Generate Configuration” and select the ones you’d like to add from the list.
Want to know more about our Scala Analyzer? Head over here and give it a read!