Skip to content
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

Improve error message and collision detection logic for yarn tarball collisions #800

Open
slimreaper35 opened this issue Jan 29, 2025 · 1 comment
Labels
yarn Pull requests/issues related to our yarn handling module

Comments

@slimreaper35
Copy link
Member

This issue addresses feedback from #786, which aims to improve user experience and code quality in handling yarn classic tarball collisions. See the comments.

The current error message reports duplicate tarball filenames (e.g., example.tgz) but does not list the specific packages causing the collision. Users are forced to manually search yarn.lock to identify the problematic packages, which is not user-friendly.

The existing logic for detecting collisions could be refactored to use native set-based filtering or hashable models for faster deduplication.

@slimreaper35 slimreaper35 added the yarn Pull requests/issues related to our yarn handling module label Jan 29, 2025
@eskultety
Copy link
Member

Just a heads-up that this will primarily need to address the fact that we currently approach things in an "agent 007" style - we first download all dependencies directly to the offline mirror, potentially overwriting an existing tarball due to a collision, and only then try to detect those collisions which is when we may not have the correct colliding packages names at hand anymore because we sometimes need to pull information about packages directly from the downloaded tarballs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
yarn Pull requests/issues related to our yarn handling module
Projects
None yet
Development

No branches or pull requests

2 participants