build(deps): Bump jscpd from 4.0.5 to 4.2.0#54
Conversation
Bumps [jscpd](https://github.com/kucherenko/jscpd) from 4.0.5 to 4.2.0. - [Release notes](https://github.com/kucherenko/jscpd/releases) - [Changelog](https://github.com/kucherenko/jscpd/blob/master/CHANGELOG.md) - [Commits](https://github.com/kucherenko/jscpd/commits/v4.2.0) --- updated-dependencies: - dependency-name: jscpd dependency-version: 4.2.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Duplication | 0 |
AI Reviewer: first review requested successfully. AI can make mistakes. Always validate suggestions.
TIP This summary will be updated as you push new changes.
There was a problem hiding this comment.
Pull Request Overview
This PR updates the jscpd dependency to version 4.2.0. This version includes a critical ReDoS vulnerability fix and addresses a bug where 100% identical files were not correctly detected. While the project is overall up to standards according to Codacy, there are concerns regarding potential breaking changes in Vue SFC tokenization and the --formatsExts CLI flag that have not been validated. Additionally, the upgrade lacks accompanying tests to verify the regression fixes and new features. A high-priority suggestion is made to pin the dependency version to ensure build determinism and security.
Test suggestions
- Verify that identical files (100% duplicates) are correctly detected as clones (regression test for jscpd issue #728)
- Verify that .vue files are now reported under specific sub-formats (javascript, css, markup) instead of a single 'markup' format (breaking change validation)
- Verify that shebang-only scripts without extensions are correctly tokenized using the new detection logic
Prompt proposal for missing tests
Consider implementing these tests if applicable:
1. Verify that identical files (100% duplicates) are correctly detected as clones (regression test for jscpd issue #728)
2. Verify that .vue files are now reported under specific sub-formats (javascript, css, markup) instead of a single 'markup' format (breaking change validation)
3. Verify that shebang-only scripts without extensions are correctly tokenized using the new detection logic
Low confidence findings
- The jscpd 4.2.0 release introduces breaking changes regarding Vue SFC tokenization (splitting into sub-formats) and the --formatsExts flag. Please verify if the existing duplicate detection configuration needs adjustments to maintain current behavior.
TIP Improve review quality by adding custom instructions
TIP How was this review? Give us feedback
| "homepage": "https://github.com/codacy/codacy-duplication-jscpd#readme", | ||
| "dependencies": { | ||
| "jscpd": "^4.0.5" | ||
| "jscpd": "^4.2.0" |
There was a problem hiding this comment.
🔴 HIGH RISK
Suggestion: Specify the exact version of the dependency to avoid potential security risks and ensure consistent builds across different environments. This is particularly important for core dependencies to prevent supply chain attacks.
This might be a simple fix:
| "jscpd": "^4.2.0" | |
| "jscpd": "4.2.0" |
Bumps jscpd from 4.0.5 to 4.2.0.
Release notes
Sourced from jscpd's releases.
Changelog
Sourced from jscpd's changelog.
... (truncated)
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)