diff --git a/Library/Homebrew/brew.rb b/Library/Homebrew/brew.rb index f7ca49a6ef9e49dd72329e42333285dfd46d2a8f..a80ca67e5cf94d7369347138cb6a273c5fcd0e9a 100644 --- a/Library/Homebrew/brew.rb +++ b/Library/Homebrew/brew.rb @@ -8,6 +8,12 @@ if RUBY_X < 2 || (RUBY_X == 2 && RUBY_Y < 3) raise "Homebrew must be run under Ruby 2.3! You're running #{RUBY_VERSION}." end +# Load Bundler first of all if it's needed to avoid Gem version conflicts. +if ENV["HOMEBREW_INSTALL_BUNDLER_GEMS_FIRST"] + require_relative "utils/gems" + Homebrew.install_bundler_gems! +end + # Also define here so we can rescue regardless of location. class MissingEnvironmentVariables < RuntimeError; end diff --git a/Library/Homebrew/brew.sh b/Library/Homebrew/brew.sh index 0a73e3b7b66352e7af3e56dc1f4a918b5cead546..2cd1677a0e1eeace99f7aec3d9f17df3417ef464 100644 --- a/Library/Homebrew/brew.sh +++ b/Library/Homebrew/brew.sh @@ -309,6 +309,11 @@ then esac fi +if [[ "$HOMEBREW_COMMAND" = "audit" || "$HOMEBREW_COMMAND" = "style" ]] +then + export HOMEBREW_INSTALL_BUNDLER_GEMS_FIRST="1" +fi + # Set HOMEBREW_DEV_CMD_RUN for users who have run a development command. # This makes them behave like HOMEBREW_DEVELOPERs for brew update. if [[ -z "$HOMEBREW_DEVELOPER" ]]