966 Commits

Author SHA1 Message Date
Gwilym Kuiper
559c1d9c39 Catch blocks incur nesting complexity 2020-02-18 15:19:39 +00:00
Gwilym Kuiper
ec870225f2 While statements incur nesting complexity 2020-02-18 15:16:26 +00:00
Gwilym Kuiper
b2a42bf8cc Break statements incur complexity 2020-02-18 14:12:49 +00:00
Gwilym Kuiper
7d3bb60d83 Continue statements incur complexity 2020-02-18 14:12:07 +00:00
Gwilym Kuiper
d9e7928d75 For each statements incur cognitive complexity 2020-02-18 14:10:32 +00:00
Gwilym Kuiper
7d3a5ef7f4 When increasing nesting level we always get structure and nesting complexity 2020-02-18 14:08:44 +00:00
Gwilym Kuiper
50d2bcb7f1 Cognitive complexity for for loops 2020-02-18 14:08:05 +00:00
Gwilym Kuiper
1b93be5f60 Handle if-else correctly 2020-02-18 14:02:56 +00:00
Gwilym Kuiper
9492ca02c1 Add test for non-nested if statements 2020-02-18 11:53:00 +00:00
Gwilym Kuiper
cea2081628 Cognitive complexity for nested if statements 2020-02-18 11:51:46 +00:00
Gwilym Kuiper
38ea3d1be9 Implement complexity for if 2020-02-18 11:47:40 +00:00
Gwilym Kuiper
8c357fb887 Add tests for CognitiveComplexity 2020-02-18 11:47:36 +00:00
Gwilym Kuiper
01da573f5f Add design rule for CognitiveComplexity 2020-02-18 11:24:39 +00:00
Gwilym Kuiper
a8234af9a6 Create design rule for cognitive complexity 2020-02-18 11:02:56 +00:00
Gwilym Kuiper
0967e43767 Add class level cognitive complexity measures 2020-02-18 11:02:31 +00:00
Gwilym Kuiper
69c239e5a3 Register the cognitive complexity measure 2020-02-18 11:02:06 +00:00
Gwilym Kuiper
9c09303d75 Skeleton implementation of CognativeComplexityVisitor 2020-02-18 10:47:33 +00:00
Andreas Dangel
5b630a9062 [apex] Re-add fixed test cases, fix code sample
Test cases for MethodNamingConventions
Code sample for AvoidDirectAccessTriggerMap
2020-02-17 20:06:33 +01:00
Clément Fournier
e11371272a Fix tests 2020-02-17 01:33:12 +01:00
Clément Fournier
35ce868235 Only throw parse exceptions
(not semantic ones, like unresolved type)
2020-02-17 00:28:51 +01:00
Clément Fournier
ed0dd0a6ae Fix merge 2020-02-17 00:28:25 +01:00
Clément Fournier
b8c41defac Merge branch 'master' into apex/compile-errors 2020-02-17 00:16:41 +01:00
Clément Fournier
96097a80e8 Move metric key static creator to interface 2020-02-16 20:40:42 +01:00
Clément Fournier
4fa3a05ebb Move some tests to core 2020-02-16 20:17:29 +01:00
Clément Fournier
bb3368f3ae Cleanup PMD core metrics 2020-02-16 20:08:31 +01:00
Clément Fournier
43f5252d7e Expose statistics instead of result option 2020-02-16 19:41:21 +01:00
Clément Fournier
4e2ae0d4b2 Simplify apex metrics framework further 2020-02-16 19:36:09 +01:00
Clément Fournier
d227038df2 Port Apex NOPMD comment implementation to 7.0 version 2020-02-16 19:09:07 +01:00
Clément Fournier
ac18d3162a Merge branch 'master' into 7.0.x 2020-02-16 18:41:04 +01:00
Andreas Dangel
9e2368257f Merge branch 'pr-2241'
[core] Simplify metrics framework
2020-02-16 10:57:10 +01:00
Gwilym Kuiper
202da60d2d Fix checkstyle errors 2020-02-12 09:49:12 +00:00
Gwilym Kuiper
bcf1c88cc2 If suppress marker is null, don't check for suppressions 2020-02-12 09:34:04 +00:00
Gwilym Kuiper
28ce8f6486 Properly extract user message 2020-02-12 08:38:31 +00:00
Gwilym Kuiper
4916316e42 Use the suppress marker from parser options 2020-02-11 17:49:06 +00:00
Gwilym Kuiper
15cd1a2d59 Use the PMD.SUPPRESS_MARKER rather than duplicating the string 2020-02-11 17:43:20 +00:00
Gwilym Kuiper
c0ec1f67c9 Only parse source code once for doc comments and suppressions 2020-02-11 17:41:55 +00:00
Gwilym Kuiper
2922694cdd Copy paste the apex doc detector to calculate the suppress map
We can generate the suppress map from the individual tokens that get
passed from the lexer.
2020-02-11 17:32:22 +00:00
Clément Fournier
7cd64e4374 Merge branch '7.0.x' into cleanup-language-version-handlers 2020-01-27 10:28:48 +01:00
Clément Fournier
ec1eb208eb Merge branch 'master' into 7.0.x 2020-01-24 23:48:22 +01:00
Clément Fournier
d90d5d267c Remove trailing whitespace everywhere 2020-01-24 23:40:06 +01:00
Clément Fournier
c27481f815 Trim trailing spaces in XML 2020-01-24 23:08:52 +01:00
Andreas Dangel
b02ab00e87 Merge remote-tracking branch 'origin/master' into pmd/7.0.x 2020-01-24 19:18:17 +01:00
Andreas Dangel
d994700617 [maven-release-plugin] prepare for next development iteration 2020-01-24 17:20:47 +01:00
Andreas Dangel
a28e9e22e5 [maven-release-plugin] prepare release pmd_releases/6.21.0 2020-01-24 17:20:38 +01:00
Andreas Dangel
35bb524803 [apex][java] *MetricsProvider are @InternalApi
Refs #2241
2020-01-24 15:56:04 +01:00
Clément Fournier
34e6e8bf08 Cleanup language version handlers 2020-01-23 18:27:29 +01:00
Clément Fournier
08544a7539 Throw on metric not supported 2020-01-20 21:54:53 +01:00
Clément Fournier
055ae4abf0 Checkstyle 2020-01-20 00:57:45 +01:00
Clément Fournier
b707e6e9ff Fix caching
Non supported nodes produce NaN which is
converted to zero when converting to int
2020-01-19 13:04:22 +01:00
Clément Fournier
f282a3ad5c Move metric providers back into language handlers
Reverts part of #2231
2020-01-19 12:47:47 +01:00