17301 Commits

Author SHA1 Message Date
Andreas Dangel
b8da15ce00 [ci] use actions/checkout@v2 and actions/setup-java@v1
instead of specific subversions. This uses then always the latest
versions automatically.
2020-10-10 14:03:32 +02:00
Andreas Dangel
bebf04e928 Merge branch 'pr-2814' into master
Bump actions/setup-java from v1.4.2 to v1.4.3 #2814
2020-10-10 14:01:42 +02:00
Andreas Dangel
1130ee45a7 Merge branch 'pr-2813' into master
[core] Use JUnit's TemporaryFolder rule #2813
2020-10-10 14:01:03 +02:00
Andreas Dangel
75589de2dd [doc] Update release notes, refs #2813 2020-10-10 14:00:56 +02:00
Andreas Dangel
ec2b3d873b Fix release notes 2020-10-10 13:56:36 +02:00
Andreas Dangel
e76b0b6946 Merge branch 'pr-2803' into master
[java] Improve DoNotCallSystemExit (Fixes #2157) #2803
2020-10-10 13:07:05 +02:00
Andreas Dangel
710f97db6c [doc] Update release notes, refs #2803, fixes #2157 2020-10-10 13:06:01 +02:00
Andreas Dangel
1150e61ddd [java] Rename DoNotCallSystemExit -> DoNotTerminateVM 2020-10-10 13:05:58 +02:00
Andreas Dangel
636bcdd0e4 Fix build under Windows
Refs #2821
2020-10-09 11:19:16 +02:00
Andreas Dangel
d227cffdab [ci] Java rule change is not detected
* Use "HEAD" instead of "FETCH_HEAD" for patch branch.
  FETCH_HEAD might change, if another fetch is done. HEAD
  always points to the currently checked out commit, that
  has been built.
* Add --patch-config to use the same config as for the baseline
  (see .travis/regression-tester.sh). However, currently this
  is ignored, when "--auto-gen-config" is used.
* Use long argument names for better readability

Fixes #2820
2020-10-09 11:03:25 +02:00
Andreas Dangel
462334ccd2 [core] Rule processing error filenames are missing paths #2821
Added test case
Works on pmd6
2020-10-09 10:09:38 +02:00
Jeff Bartolotta
8fb69b24db Add Apex AvoidDatabaseMethodCallsInLoopsRule
Fixes https://github.com/pmd/pmd/issues/1713, Database statements aren't detected in for loops.

- Added new AvoidDatabaseMethodCallsInLoopsRule that adds a violation if any methods from the System Database class are invoked from within a loop.

- Refactored AvoidDmlStatementsInLoopsRule, AvoidSoqlInLoopsRule, and AvoidSoslInLoopsRule to derive from AbstractAvoidNodeInLoopsRule.
2020-10-05 19:02:21 -07:00
dependabot[bot]
d37ccca4ab Bump actions/setup-java from v1.4.2 to v1.4.3
Bumps [actions/setup-java](https://github.com/actions/setup-java) from v1.4.2 to v1.4.3.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v1.4.2...d202f5dbf7256730fb690ec59f6381650114feb2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-05 06:16:30 +00:00
Stefan Birkner
22db2fdebc Use JUnit's TemporaryFolder rule
Don't reinvent the wheel. TemporaryFolder already takes care of cleaning
up the created files.
2020-10-03 22:59:16 +02:00
Andreas Dangel
d5729e65dc Merge branch 'pr-2805' into master
Bump actions/checkout from v2.3.2 to v2.3.3 #2805
2020-10-03 12:23:04 +02:00
Andreas Dangel
16e8c204f1 Merge branch 'pr-2810' into master
[core] Move method "renderTempFile" to XMLRendererTest #2810
2020-10-03 12:12:05 +02:00
Andreas Dangel
079adfb09d [doc] Update release notes, refs #2810 2020-10-03 12:11:33 +02:00
Andreas Dangel
01b5c68ce9 Merge branch 'pr-2809' into master
[java] Move test config from file to test class #2809
2020-10-03 12:10:20 +02:00
Andreas Dangel
f67cc4dddd [doc] Update release notes, refs #2809 2020-10-03 12:10:12 +02:00
Vitaly Polonetsky
095f96a966 Added tests to verify the fix for #2157 2020-10-02 00:09:31 -07:00
Stefan Birkner
3d45ea008a Move method "renderTempFile" to XMLRendererTest
It is only used by the XMLRendererTest.
2020-09-30 23:06:56 +02:00
Stefan Birkner
6b23b13497 Move test config from file to test class
Keep it simple. The config file stored only a single line for years.
2020-09-30 22:48:43 +02:00
Andreas Dangel
6e3bd734b8 dogfood - update PMD to 6.28.0 2020-09-28 20:05:39 +02:00
dependabot[bot]
2a6b04ef4d Bump actions/checkout from v2.3.2 to v2.3.3
Bumps [actions/checkout](https://github.com/actions/checkout) from v2.3.2 to v2.3.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.2...a81bbbf8298c0fa03ea29cdc473d45769f953675)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-28 06:18:42 +00:00
Andreas Dangel
b6edfd68b0 Prepare next development version 2020-09-26 10:27:58 +02:00
Andreas Dangel
aa245c6e1b [maven-release-plugin] prepare for next development iteration 2020-09-26 10:25:16 +02:00
Andreas Dangel
722f3ca997 [maven-release-plugin] prepare release pmd_releases/6.28.0 pmd_releases/6.28.0 2020-09-26 10:25:05 +02:00
Andreas Dangel
d2d4ce2bdb Prepare pmd release 6.28.0 2020-09-26 10:15:02 +02:00
Vitaly Polonetsky
e8b95f1a21 Fixes #2157
System.exit() and its equivalents should be allowed in static main() methods, added check for Runtime.getRuntime().halt()
2020-09-25 09:42:51 -07:00
Clément Fournier
d74f22b158 Merge branch 'issue-2755' into master 2020-09-25 14:24:24 +02:00
Clément Fournier
d3ca0319b3 Merge branch 'master' into issue-2755 2020-09-25 14:24:08 +02:00
Andreas Dangel
f1e9a23b01 [doc] Update release notes - group fixes by category 2020-09-24 12:08:10 +02:00
Andreas Dangel
250501a3d1 Merge branch 'pr-2791' into master
[apex] Analyze inner classes for sharing violations #2791
2020-09-24 11:55:11 +02:00
Andreas Dangel
eb0f7e4f99 [doc] Update release notes, refs #2791, fixes #2774 2020-09-24 11:54:35 +02:00
Jeff Bartolotta
5429cebf38 Add issue reproducers as standard rule tests
Added false negative and false positive test cases that were logged with
the original issue.
2020-09-21 20:11:07 -07:00
Andreas Dangel
54a5b03ccd Merge branch 'pr-2792' into master
[java] Fix TypeTestUtil for arrays #2792
2020-09-21 19:58:05 +02:00
Andreas Dangel
f046268058 [java] CloseResource: add simple test case for var 2020-09-21 19:47:42 +02:00
Andreas Dangel
87890b852a [java] CloseResource: Fix test code 2020-09-21 19:39:24 +02:00
rmohan
5ea116fa52 First draft of change to allow dotted attributes in Visualforce 2020-09-18 13:45:43 -07:00
Andreas Dangel
59f1fe251e Update ant from 1.10.1 to 1.10.8
Fixes CVE-2020-1945 (Moderate severity)
2020-09-18 15:53:33 +02:00
Clément Fournier
8c97300af8 Fix doc
Parameters were in the wrong order.
2020-09-18 04:04:35 +02:00
Clément Fournier
2093011913 Fix array & annot subtyping 2020-09-18 03:58:05 +02:00
Andreas Dangel
7ed238a384 Merge branch 'pr-2789' into master
Add badge for reproducible build #2789
2020-09-17 19:00:19 +02:00
Andreas Dangel
c21146019a [doc] Update release notes, refs #2789 2020-09-17 19:00:11 +02:00
Andreas Dangel
81a72cb43e [java] CloseResource: Fix NPE in case of "var" 2020-09-17 18:49:21 +02:00
Dan Rollo
d421927547 Add badge for reproducible build 2020-09-17 12:04:14 -04:00
Jeff Bartolotta
c6b7a723be Analyze inner classes for sharing violations
Fixes https://github.com/pmd/pmd/issues/2774, false positives and false
negatives for ApexSharingViolationsRule.

Sharing settings are not inherited by inner classes. Sharing settings
need to be declared on the class that contains the Database method, DML,
SOQL, or SOSL.

The change inverts the direction from which nodes are found and
analyzed. The previous code visited the ASTUserClass and then searched
for descendant nodes that met a certain criteria. It did not visit inner
ASTUserClass nodes because it didn't use rule chains or call the super's
visit moethod for ASTUserClassi.

The new implementation visits all nodes that correspond to Database
method, DML, SOQL, or SOSL nodes and then finds the nearest ASTUserClass
parent node. This ASTUserClass is examined to determine if it has
declared a sharing setting as required.
2020-09-17 08:36:45 -07:00
Andreas Dangel
f00e9744ea Merge branch 'pr-2784' into master
[java] Lambda parsing bug #2784
2020-09-17 14:58:32 +02:00
Andreas Dangel
d81731ed6c [doc] Update release notes, refs #2784, fixes #2783 2020-09-17 14:57:55 +02:00
Clément Fournier
3c1b0afcf6 Fix #2783 2020-09-16 15:40:45 +02:00