Use require_relative instead of $LOAD_PATH in gemspec #2622
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.
Use
require_relativeinstead of$LOAD_PATHin gemspecDescription
This PR simplifies the gemspec by replacing the
$LOAD_PATHmanipulation withrequire_relative, which is more idiomatic and cleaner for Ruby gems.Changes
$LOAD_PATH.unshift File.expand_path('lib', __dir__)require 'grape/version'withrequire_relative 'lib/grape/version'Benefits
require_relativeis more straightforward and doesn't mutate global state$LOAD_PATHthat could affect other gemsContext
This follows a modern Ruby convention where
require_relativeis preferred over manipulating$LOAD_PATHin gemspecs. The previous approach was added in #1758 to fix issues withGrape::VERSIONpotentially referencing system-wide installed gem versions, butrequire_relativeprovides the same isolation without global state mutation.Testing