-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Fix some bad PRs getting created when compact index API is having issues #7269
Fix some bad PRs getting created when compact index API is having issues #7269
Conversation
4f8f046
to
580bc8e
Compare
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.
this API ignores requirements on the Ruby version
To clarify, are you referring here to the old API or the compact API?
It is surprising that we have to handle this edge case in our custom code, and not in bundler nor our custom native helper for bundler, but if anyone would understand the intricacies here, it'd be you...
Assuming this is the best design, then the code implementation looks fine to me.
To the old API. The CompactIndex API should be always correct, however, it's been having issues for the last few days, so Bundler falls back to the old API, which mostly works, but not in this edge case.
I first tried to monkeypatch Bundler to not use the dependency API, but then if the CompactIndex API is having issues like now... nothing works. Then I found that we were already explicitly handling this case, just not everywhere where needed, so I just fixed the existing approach. By the way, I think CI is failing because.... the CompactIndex API is having issues 😞, I believe we're missing some VCR cassettes in there. |
580bc8e
to
460bc0f
Compare
If Bundler needs to fallback to fetching dependency information from the old API, we need to double that the target version Bundler said it's compatible, it's actually compatible with the locked Ruby version. This is because this API ignores requirements on the Ruby version. This was already checked when figuring out the latest resolvable version, but it was not checked when falling back to trying to unlock all dependencies. This commit should fix that.
460bc0f
to
c0008f1
Compare
…ues (dependabot#7269) If Bundler needs to fallback to fetching dependency information from the old API, we need to double that the target version Bundler said it's compatible, it's actually compatible with the locked Ruby version. This is because this API ignores requirements on the Ruby version. This was already checked when figuring out the latest resolvable version, but it was not checked when falling back to trying to unlock all dependencies. This commit should fix that.
If Bundler needs to fallback to fetching dependency information from the old API, we need to double check that the target version Bundler said it's compatible, it's actually compatible with the locked Ruby version.
This is because this API ignores requirements on the Ruby version.
This was already checked when figuring out the latest resolvable version, but it was not checked when falling back to trying to unlock all dependencies.
This commit should fix that.
Fixes #7257.