1442 Commits

Author SHA1 Message Date
Clément Fournier
6a3b332aee Abstract toString into AbstractNode, deprecate the implementation
Log that the default implementation will be removed
2018-01-25 03:02:44 +01:00
Clément Fournier
3c0bb45a60 Add getXPathNodeName to the Node interface
A default implementation is available in AbstractNode
to preserve compatibility with the previous way, which
used Object.toString.

Fixes #569
2018-01-24 19:22:36 +01:00
Clément Fournier
80bd38485a Merge branch 'pr-845'
Refs #543
2018-01-23 21:09:08 +01:00
Alberto Fernandez
9936b1f833 removed unnecesary counter 2018-01-23 17:56:10 +01:00
Juan Martín Sotuyo Dodero
e1e8ad5984 Merge branch 'pr-790' 2018-01-21 14:47:11 -03:00
Juan Martín Sotuyo Dodero
3de3335714 Merge branch 'pr-830' 2018-01-21 14:42:09 -03:00
Andreas Dangel
8fbb156fd9 [maven-release-plugin] prepare for next development iteration 2018-01-21 16:42:50 +01:00
Andreas Dangel
0e460317e4 [maven-release-plugin] prepare release pmd_releases/6.0.1 2018-01-21 16:42:42 +01:00
Andreas Dangel
02989303a6 [java] Avoid double rule de-referincing in controversial and migrating_* 2018-01-21 15:42:28 +01:00
Juan Martín Sotuyo Dodero
15db5ad0b4 [java] typeresolution points directly to categories
- Fixes #866
2018-01-21 06:21:55 -03:00
Clément Fournier
f8ca4a75d3 Extract Pattern constant from parse method 2018-01-20 01:53:23 +01:00
Alberto Fernandez
2c2c2f4dd9 Checkstyle fixes 2018-01-17 16:06:54 +01:00
Alberto Fernandez
883bed3cf8 Better detection of corner cases
the firts changes checks for a exact level to search AdditiveExpression.

So code like
throw new Exception("something bad:" + (e)); gets undetected.

This change search if part of a AdditiveExpression to the base node.
2018-01-17 15:25:38 +01:00
Clément Fournier
65949bcf6e Merge branch 'master' of github.com:pmd/pmd into issue-827 2018-01-17 00:15:13 +01:00
Clément Fournier
2ca4b347c3 Make TCC consider local classes.
If a local class is declared inside a method of the outer class,
then attribute accesses made by the local class count as if they
are made by the enclosing method.
2018-01-16 23:42:29 +01:00
Clément Fournier
8cfc073b8c Add local class support to JavaQualifiedName 2018-01-16 20:35:15 +01:00
Clément Fournier
27b4abe221 Add isLocal() to ASTClassOrInterfaceDeclaration 2018-01-16 18:18:23 +01:00
Juan Martín Sotuyo Dodero
c843a6f534 Make test cases more direct
- No personal interpretation, but let Java process the values
2018-01-16 01:14:42 -03:00
Andreas Dangel
96cc4f01f3 Merge branch 'pr-849'
Closes #841
2018-01-15 20:45:34 +01:00
Juan Martín Sotuyo Dodero
391c1e8842 Unify literal parsing logic 2018-01-14 16:15:22 -03:00
Juan Martín Sotuyo Dodero
ab96e34099 [java] Resolve NumberFormatException
- InsufficientStringBufferDeclaration now supports all numbr formats
(even octal and binary)
 - We move the logic of understanding the literal value to the literal
node. Looking for other places where this logic is being replicated is
pending
2018-01-14 16:14:38 -03:00
Juan Martín Sotuyo Dodero
a5b546d044 Java 7 compatible implementation 2018-01-13 21:01:37 -03:00
Juan Martín Sotuyo Dodero
303f05d8d3 [java] Resolve StackOverflow in JavaTypeDefinitionSimple.toString()
- Resolves #831
2018-01-13 20:43:01 -03:00
Alberto Fernandez
a4d5ff683d Fix checkstyle 2018-01-12 23:31:58 +01:00
Alberto Fernandez
4f67d99c9f Fix false negative PreserveStackTrace on string concatenation
PMD should fire PreserveStackTrace in the following code

public void foo(String a) throws Exception {
    try {
        int i = Integer.parseInt(a);
    } catch(Exception e){
        throw new Exception("something bad:" + e);
        // Stack trace is lost, but no violation was reported!
    }
}

Closes pmd/pmd#543
2018-01-12 23:09:17 +01:00
Andreas Dangel
9bc7074fb9 Merge branch 'pr-821' 2018-01-11 17:30:40 +01:00
Andreas Dangel
b6fc30964e Add unit test, refs #817 2018-01-11 17:29:34 +01:00
Andreas Dangel
17ea5a89a0 Merge branch 'pr-820' 2018-01-11 17:16:04 +01:00
Clément Fournier
4b43bbcb19 Merge branch 'pr-822' 2018-01-08 00:33:17 +01:00
Juan Martín Sotuyo Dodero
4ce6a019e1 Add test scenario 2018-01-07 17:33:33 -03:00
Tobias Weimer
fd51f6254a Update performance.xml
Added missing CDATA
2018-01-07 19:19:17 +01:00
Tobias Weimer
af4c5b2a87 Update performance.xml
Added note about Arrays.asList()
2018-01-05 15:47:16 +01:00
Tobias Weimer
142e533833 Update performance.xml
new Boolean(), new Byte() and new Short() are deoprecated in JDK 9 too.
2018-01-05 15:29:59 +01:00
Juan Martín Sotuyo Dodero
2059eac54b [java] Fix concurrency issue on metrics' framework
- Resolves #812
2017-12-31 01:36:56 -03:00
Juan Martín Sotuyo Dodero
c64f6af157 [java] Avoid NPE in ForLoopCanBeForeachRule
- Take the chance to make this rule use the rulechain
 - This partially fixes #800, but the FN is still unhandled
2017-12-31 01:20:04 -03:00
Juan Martín Sotuyo Dodero
83496c0e59 [java] Fix NPE on UnnecessaryModifierRule
- Fixes #817
2017-12-31 01:01:30 -03:00
Juan Martín Sotuyo Dodero
729d77614f Handle more kinds of errors
- Handle equally incomplete classpath, having a classpath which
   requires a different JRE version than the one used to run PMD and
   others.
 - Fixes #814
2017-12-31 00:48:23 -03:00
Andreas Dangel
4700692e29 [java] Rewrite GuardLogStatementRule without XPath
- uses now a Java only implementions
- Fixes #783
2017-12-24 11:51:29 +01:00
Andreas Dangel
0ce2939c6b Change version to 6.0.1-SNAPSHOT 2017-12-23 09:54:03 +01:00
Juan Martín Sotuyo Dodero
19cda30527 Merge branch 'pr-798' 2017-12-23 00:57:09 -03:00
Andreas Dangel
109f458dbf Fixes #793 [java] Parser error with private method in nested classes in interfaces
*   Remember old state to allow nesting
*   Fix ASTMethodDeclaration.isInterfaceMember
*   Extended tests
2017-12-22 12:03:20 +01:00
Andreas Dangel
64b862eef9 Fixes #793 [java] Parser error with private method in nested classes in interfaces 2017-12-20 22:42:34 +01:00
Tobias Weimer
766565a0bf Update performance.xml
new Integer() and new Long() is deoprecated in JDK 9.
2017-12-19 20:55:48 +01:00
Tobias Weimer
fbd9306889 Update performance.xml
Reference to Arrays.copyOf
2017-12-19 20:52:23 +01:00
Tobias Weimer
75fe76cbf5 Update errorprone.xml
Note that Oracle has declared Object.finalize() as deprecated since JDK 9.
2017-12-19 20:48:45 +01:00
Clément Fournier
c5ddb2fa3c Remove code ref 2017-12-18 12:50:45 +01:00
Clément Fournier
42deb3791c Fix #785: NPE with metrics on empty declarations 2017-12-17 12:59:49 +01:00
Andreas Dangel
a975048655 [maven-release-plugin] prepare for next development iteration 2017-12-15 16:01:22 +01:00
Andreas Dangel
9b6fe90225 [maven-release-plugin] prepare release pmd_releases/6.0.0 2017-12-15 16:01:14 +01:00
Andreas Dangel
998cad8595 [java] fix PMDCoverageTest ruleset 2017-12-15 11:13:35 +01:00