Handle non-specific issues with the Gemfile to allow fallback #14617
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.
In my specific case, my Gemfile has a eval_gemfile that pulls in another Gemfile in a subdirectory that hasn't been generated yet (similar to an non-updated git submodule). This causes rubocop to blow up with
After this change, everything works fine, because the code falls back to the system installed rubocop
In general, when the Gemfile fails to load for any reason, we want to fallback to try loading from the system gems. (This is is effectively an extension of the handlers in #12976 and #12991)
A non-specific issue could be something like eval_gemfile failing when a submodule that includes the requisite file has not yet been updated.
This commit changes the rescue to the generic StandardError, which subsumes the Bundler errors, and handles other errors as well.
Before submitting the PR make sure the following are checked:
[Fix #issue-number](if the related issue exists).master(if not - rebase it).bundle exec rake default. It executes all tests and runs RuboCop on its own code.{change_type}_{change_description}.mdif the new code introduces user-observable changes. See changelog entry format for details.