-
Notifications
You must be signed in to change notification settings - Fork 205
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
Handle unfetchable Go versions that have name collisions. #2687
Conversation
@@ -106,6 +106,10 @@ def self.versions(project, _name) | |||
known_versions[v].slice(:number, :published_at) | |||
else | |||
info = get("#{PROXY_BASE_URL}/#{project[:name]}/@v/#{v}.info") |
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.
Any way you can think of to correct to the proper case before updating? Some sort of case insensitive search mechanism?
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.
It's unfortunately an issue with the files in the Go Module and not with the name itself so I think we have to wait on a fix from Golang 😬 Here's the response for the example one above, where it has two filepaths in the same folder with same-name-different-casing:
not found: create zip: case-insensitive file name collision: "models/apis/GuardDuty/2017-11-28/api-2.json" and "models/apis/guardduty/2017-11-28/api-2.json"
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.
(or alternatively we could keep the version but just display its published_at as ?
or something?)
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.
Seems like a really really small amount of packages huh? (Like 2 maybe?)
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.
I think this example had 3 versions with name collisions, but we've got a ton of these errors in bugsnag: https://app.bugsnag.com/tidelift/libraries-dot-io/errors/60076c589e7ce30018c6b586
Handle versions that have case-insensitive name collisions instead of blowing up when we try to fetch their info.