
The columns that are reported by CPD were inconsistent across languages before. A language like Java (using a JavaCC-based tokenizer) would use a width of 8 for tabs, whereas a language like C# (using an Antlr-based tokenizer) would use 1 instead. This includes unit tests for most languages to ensure a tab character is counted as 1. The configuration for JavaCC has been adjusted to respect this as well.
pmd-scala-common
Contains shared code for the pmd-scala_2.12 and pmd-scala_2.13 modules.
It is not a module in itself, since it needs to be used while cross-compiling with a specific scala version.
It should be source compatible with the oldest scala version we are supporting.