oxsecurity / megalinter

🦙 MegaLinter analyzes 50 languages, 22 formats, 21 tooling formats, excessive copy-pastes, spelling mistakes and security issues in your repository sources with a GitHub Action, other CI tools or locally.
https://megalinter.io
GNU Affero General Public License v3.0
1.8k stars 215 forks source link

chore(deps): update dependency pmd/pmd to v7.2.0 #3634

Closed renovate[bot] closed 3 weeks ago

renovate[bot] commented 3 weeks ago

Mend Renovate

This PR contains the following updates:

Package Update Change
pmd/pmd minor 7.1.0 -> 7.2.0

Release Notes

pmd/pmd (pmd/pmd) ### [`v7.2.0`](https://togithub.com/pmd/pmd/releases/tag/pmd_releases/7.2.0): PMD 7.2.0 (31-May-2024) [Compare Source](https://togithub.com/pmd/pmd/compare/pmd_releases/7.1.0...pmd_releases/7.2.0) ##### 31-May-2024 - 7.2.0 The PMD team is pleased to announce PMD 7.2.0. This is a minor release. ##### Table Of Contents - [🚀 New and noteworthy](#new-and-noteworthy) - [Collections exposed as XPath attributes](#collections-exposed-as-xpath-attributes) - [Updated PMD Designer](#updated-pmd-designer) - [🐛 Fixed Issues](#fixed-issues) - [🚨 API Changes](#api-changes) - [Deprecated API](#deprecated-api) - [✨ External Contributions](#external-contributions) - [📈 Stats](#stats) ##### 🚀 New and noteworthy ##### Collections exposed as XPath attributes Up to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's `ASTUserClass.getInterfaceNames()` to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it. Since this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given `ASTUserClass` in Apex that implements `Queueable`, it is now possible to write: ```xml /UserClass[@​InterfaceNames = 'Queueable'] ``` ##### Updated PMD Designer This PMD release ships a new version of the pmd-designer. For the changes, see [PMD Designer Changelog (7.2.0)](https://togithub.com/pmd/pmd-designer/releases/tag/7.2.0). ##### 🐛 Fixed Issues - core - [#​4467](https://togithub.com/pmd/pmd/issues/4467): \[core] Expose collections from getters as XPath sequence attributes - [#​4978](https://togithub.com/pmd/pmd/issues/4978): \[core] Referenced Rulesets do not emit details on validation errors - [#​4983](https://togithub.com/pmd/pmd/pull/4983): \[cpd] Fix CPD crashes about unicode escapes - [#​5009](https://togithub.com/pmd/pmd/issues/5009): \[core] Kotest tests aren't picked up by surefire - java - [#​4912](https://togithub.com/pmd/pmd/issues/4912): \[java] Unable to parse some Java9+ resource references - [#​4973](https://togithub.com/pmd/pmd/pull/4973): \[java] Stop parsing Java for CPD - [#​4980](https://togithub.com/pmd/pmd/issues/4980): \[java] Bad intersection, unrelated class types java.lang.Object\[] and java.lang.Number - [#​4988](https://togithub.com/pmd/pmd/pull/4988): \[java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@​ResourceDeclaration - [#​4990](https://togithub.com/pmd/pmd/issues/4990): \[java] Add an attribute @​PackageQualifier to ASTClassType - [#​5006](https://togithub.com/pmd/pmd/issues/5006): \[java] Bad intersection, unrelated class types Child and Parent\ - [#​5029](https://togithub.com/pmd/pmd/issues/5029): \[java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class - java-bestpractices - [#​4278](https://togithub.com/pmd/pmd/issues/4278): \[java] UnusedPrivateMethod FP with Junit 5 [@​MethodSource](https://togithub.com/MethodSource) and default factory method name - [#​4852](https://togithub.com/pmd/pmd/issues/4852): \[java] ReplaceVectorWithList false-positive (neither Vector nor List usage) - [#​4975](https://togithub.com/pmd/pmd/issues/4975): \[java] UnusedPrivateMethod false positive when using [@​MethodSource](https://togithub.com/MethodSource) on a [@​Nested](https://togithub.com/Nested) test - [#​4985](https://togithub.com/pmd/pmd/issues/4985): \[java] UnusedPrivateMethod false-positive / method reference in combination with custom object - java-codestyle - [#​1619](https://togithub.com/pmd/pmd/issues/1619): \[java] LocalVariableCouldBeFinal on 'size' variable in for loop - [#​3122](https://togithub.com/pmd/pmd/issues/3122): \[java] LocalVariableCouldBeFinal should consider blank local variables - [#​4903](https://togithub.com/pmd/pmd/issues/4903): \[java] UnnecessaryBoxing, but explicit conversion is necessary - [#​4924](https://togithub.com/pmd/pmd/issues/4924): \[java] UnnecessaryBoxing false positive in PMD 7.0.0 in lambda - [#​4930](https://togithub.com/pmd/pmd/issues/4930): \[java] EmptyControlStatement should not allow empty try with concise resources - [#​4954](https://togithub.com/pmd/pmd/issues/4954): \[java] LocalVariableNamingConventions should allow unnamed variables by default - [#​5028](https://togithub.com/pmd/pmd/issues/5028): \[java] FormalParameterNamingConventions should accept unnamed parameters by default - java-errorprone - [#​4042](https://togithub.com/pmd/pmd/issues/4042): \[java] A false negative about the rule StringBufferInstantiationWithChar - [#​5007](https://togithub.com/pmd/pmd/issues/5007): \[java] AvoidUsingOctalValues triggers on non-octal double literals with a leading 0 - java-multithreading - [#​2368](https://togithub.com/pmd/pmd/issues/2368): \[java] False positive UnsynchronizedStaticFormatter in static initializer ##### 🚨 API Changes ##### Deprecated API - pmd-java - ASTResource#getStableName and the corresponding attribute `@StableName` ##### ✨ External Contributions - [#​5020](https://togithub.com/pmd/pmd/issues/5020): \[java] Fix AvoidUsingOctalValues false-positive - [Gold856](https://togithub.com/Gold856) ([@​Gold856](https://togithub.com/Gold856)) ##### 📈 Stats - 152 commits - 46 closed tickets & PRs - Days since last release: 35

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

github-actions[bot] commented 3 weeks ago

🦙 MegaLinter status: ⚠️ WARNING

Descriptor Linter Files Fixed Errors Elapsed time
✅ API spectral 2 0 3.09s
✅ BASH bash-exec 5 0 0.08s
✅ BASH shellcheck 5 0 0.13s
✅ BASH shfmt 5 0 0 0.11s
✅ COPYPASTE jscpd yes no 4.33s
✅ DOCKERFILE hadolint 130 0 17.36s
✅ JSON jsonlint 18 0 0.25s
✅ JSON v8r 20 0 31.37s
⚠️ MARKDOWN markdownlint 265 0 272 32.45s
✅ MARKDOWN markdown-table-formatter 265 0 0 139.77s
✅ OPENAPI spectral 2 0 3.17s
⚠️ PYTHON bandit 211 64 3.81s
✅ PYTHON black 211 0 0 5.41s
✅ PYTHON flake8 211 0 3.91s
✅ PYTHON isort 211 0 0 0.79s
✅ PYTHON mypy 211 0 19.69s
✅ PYTHON pylint 211 0 17.19s
✅ PYTHON ruff 211 0 0 0.19s
✅ REPOSITORY checkov yes no 40.81s
✅ REPOSITORY git_diff yes no 0.15s
⚠️ REPOSITORY grype yes 1 25.6s
✅ REPOSITORY secretlint yes no 17.31s
✅ REPOSITORY trivy yes no 19.91s
✅ REPOSITORY trivy-sbom yes no 5.91s
⚠️ REPOSITORY trufflehog yes 1 12.24s
✅ SPELL cspell 693 0 29.51s
⚠️ SPELL lychee 346 5 7.09s
✅ XML xmllint 3 0 0 0.11s
✅ YAML prettier 161 0 0 5.6s
✅ YAML v8r 102 0 195.08s
✅ YAML yamllint 162 0 2.42s

See detailed report in MegaLinter reports

_MegaLinter is graciously provided by OX Security_

nvuillam commented 3 weeks ago

@echoix your renovate config looks powerful 🥇

echoix commented 3 weeks ago

Yep.