339 Commits

Author SHA1 Message Date
Clément Fournier
dd63a88e6a Cleanup cpp 2020-09-17 23:05:02 +02:00
Clément Fournier
c88919bbc7 Cleanup 2020-09-17 22:56:45 +02:00
Clément Fournier
e76a1d6eb8 Aha! fix tests of c++ 2020-09-17 22:56:02 +02:00
Clément Fournier
3ee32effda Refactor token documents
Isolate static parts
2020-09-17 22:56:01 +02:00
Clément Fournier
a01f1a3574 Stop extending Reader 2020-09-17 22:55:11 +02:00
Clément Fournier
a11f45e511 Cleanup spec 2020-09-17 22:54:59 +02:00
Clément Fournier
155a895a93 Move charstream 2020-09-17 22:54:20 +02:00
Clément Fournier
eaed142496 Move text file stuff into the main document package 2020-09-17 22:53:28 +02:00
Clément Fournier
9843ac0b9d Fix c++ 2020-09-17 22:45:13 +02:00
Clément Fournier
f6b8bdc975 Replace old impl with newer one
This uses "fragmented docs". This
is less efficient when there are
a lot of escapes, but:
- it doesn't require the initial
buffer copy
- it doesn't mutate any buffer, so
Chars can be readonly all the time
- it handles escapes of arbitrary
inLen/outLen ratio and is thus
future proof
- it is much more maintainable

On the downside there is
- efficiency (this data structure is
"pointy")
- clarity of the Reader implementation
(one more state to support, ie reading
not from the input buffer but from an
escape)
2020-09-17 22:43:53 +02:00
Clément Fournier
e93e5b0a4c Move into .io package 2020-09-17 22:43:29 +02:00
Clément Fournier
41d747ead2 Abstract backslash escape readers 2020-09-17 22:42:12 +02:00
Clément Fournier
1f8c5b65b3 Better implementation for appendSuffix 2020-09-17 22:41:16 +02:00
Clément Fournier
c088a6add5 Rename charStream methods 2020-09-17 22:41:16 +02:00
Clément Fournier
95bac5eb95 Convert CharStream to class 2020-09-17 22:41:16 +02:00
Clément Fournier
d4be567652 Fix zero-length escapes 2020-09-17 22:41:15 +02:00
Clément Fournier
b779abd08b Align cpd 2020-09-17 22:41:14 +02:00
Clément Fournier
d690b50c07 Move text file stuff into the main document package 2020-09-17 22:37:23 +02:00
Clément Fournier
5d436fb7e1 Move factory methods to the interface 2020-09-17 22:37:12 +02:00
Clément Fournier
52862997f6 Fix cpd compat 2020-09-17 22:36:18 +02:00
Clément Fournier
dfe5710aee Fix tests of SCPositioner 2020-09-17 22:30:00 +02:00
Andreas Dangel
c59af0aee6 [maven-release-plugin] prepare for next development iteration 2020-08-31 18:30:18 +02:00
Andreas Dangel
856950f0d2 [maven-release-plugin] prepare release pmd_releases/6.27.0 2020-08-31 18:30:09 +02:00
Andreas Dangel
2b1d071930 Fix tests due to endColumn changes 2020-08-21 12:38:37 +02:00
Andreas Dangel
ab489832fe Merge branch 'master' into pmd/7.0.x 2020-08-21 11:51:54 +02:00
Andreas Dangel
89140d86ce Merge branch 'master' into pr-2656 2020-08-20 09:47:16 +02:00
Andreas Dangel
49ab75aeb7 [maven-release-plugin] prepare for next development iteration 2020-07-25 13:45:36 +02:00
Andreas Dangel
a9632e2a06 [maven-release-plugin] prepare release pmd_releases/6.26.0 2020-07-25 13:45:27 +02:00
Maikel Steneker
6fb5ac59b9 Ensure CPD uses tab width of 1 for tabs consistently
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.
2020-07-20 10:42:21 +02:00
Andreas Dangel
dcaa8a1167 Merge branch 'master' into pmd/7.0.x 2020-07-17 16:13:02 +02:00
Andreas Dangel
7b3d31246e Merge branch 'master' into pr-2624 2020-07-17 15:16:24 +02:00
Andreas Dangel
e4690cb56a Fix compile errors for CPD only languages 2020-07-17 15:04:43 +02:00
Andreas Dangel
94afdb117d Add test engines as surefire plugin dependencies
This removes junit-vintage-engine as a test dependency
as well as kotlintest-runner-junit5.
The engines are only needed during test execution, but should
not be available for test compilation.

For this to work, the latest surefire plugin is required.
2020-07-17 12:03:45 +02:00
Andreas Dangel
370c0b0b6d Remove unused dependency, explicitly declare used dependencies 2020-07-02 15:12:31 +02:00
Andreas Dangel
95d8e80c1b [maven-release-plugin] prepare for next development iteration 2020-06-27 11:31:27 +02:00
Andreas Dangel
a219b2e1be [maven-release-plugin] prepare release pmd_releases/6.25.0 2020-06-27 11:31:16 +02:00
Andreas Dangel
c40cbdf867 Fix tests - CPD end columns are exclusive on PMD 7
See 5b7ed588ea15961e5909f7c24fca1c4cbb914a52
2020-06-21 12:22:28 +02:00
Andreas Dangel
891010468a Merge branch 'master' into pmd/7.0.x 2020-06-21 12:00:32 +02:00
Clément Fournier
5b7ed588ea Make CPD end column exclusive
This is to align it with PMD columns,
which in 7.0 are already exclusive.
2020-06-19 02:21:45 +02:00
Clément Fournier
c49d9e315f Merge branch 'master' into 7.0.x 2020-06-19 01:32:32 +02:00
Clément Fournier
d624ee99f0 Add tests 2020-06-18 21:32:19 +02:00
Clément Fournier
7f081f0e63 Simplify int literals 2020-06-18 20:56:43 +02:00
Clément Fournier
b56e9e6708 Fix floats 2020-06-18 20:56:42 +02:00
Clément Fournier
c429a4e0c4 Fix wrong grammar for digit separators 2020-06-18 20:56:18 +02:00
Clément Fournier
673fe3934d Fix hex numbers in uppercase 2020-06-18 20:56:00 +02:00
Clément Fournier
185c172b3c c++ ident unicode support 2020-06-18 20:54:41 +02:00
Clément Fournier
709996fddc Finish cpp module 2020-06-13 20:34:30 +02:00
Clément Fournier
551ab453fd Convert CPP tests 2020-06-13 20:14:08 +02:00
Andreas Dangel
c3219b91c5 Merge branch 'master' into pmd/7.0.x 2020-06-12 14:21:10 +02:00
Andreas Dangel
8defb2fde2 Add missing relativePath configuration in all pom modules 2020-06-07 12:36:58 +02:00