forked from SDA-SE/backstage
-
Notifications
You must be signed in to change notification settings - Fork 1
[Snyk] Fix for 2 vulnerabilities #11651
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
q1blue
wants to merge
1
commit into
master
Choose a base branch
from
snyk-fix-6221a91be34b3db665eb3251ef57e480
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These changes from
workspace:^to pinned versions are problematic for a few reasons:Breaks Monorepo Integrity: Using
workspace:^ensures that packages within this monorepo use the versions of other packages from the same workspace. Pinning to specific versions breaks this, potentially leading to multiple versions of the same package in the final bundle and inconsistencies.Significant Downgrade: The versions being pinned are much older than the current versions available in the workspace. For example:
@backstage/core-app-apiis being pinned to0.1.0, but the version in the workspace is1.9.1-next.0.@backstage/core-componentsis being pinned to0.1.0, but the version in the workspace is0.13.4-next.0.@backstage/integration-reactis being pinned to0.1.1, but the version in the workspace is1.1.16-next.0.Such a major downgrade will almost certainly introduce breaking changes and cause the application to fail.
The warning in the PR description about
yarn.lockfailing to update is another sign that this automated approach is not compatible with your project's setup.A better approach to fix the underlying vulnerabilities would be to use Yarn's
resolutionsfeature in the rootpackage.jsonto force a secure version of the transitive dependency across the entire workspace. This would fix the vulnerability without breaking the monorepo structure or downgrading packages.For example, if a vulnerability is in the
tarpackage, you could add something like this to the rootpackage.json:(The exact version would depend on the patched version for the vulnerability).
Because these changes are very likely to break the build, I'm marking this as critical and suggesting to revert them.