Skip to content

Commit

Permalink
Fix rubocop binstub to avoid loading configs from parent directories
Browse files Browse the repository at this point in the history
Based on rubygems/rubygems#6915

This occurs especially when generating a new rails app within a rails checkout:
https://github.com/rails/rails/actions/runs/7360317953/job/20036287021#step:4:171
  • Loading branch information
zzak committed Dec 29, 2023
1 parent 3db5ee9 commit 8f81b8c
Showing 1 changed file with 3 additions and 18 deletions.
21 changes: 3 additions & 18 deletions railties/lib/rails/generators/rails/app/templates/rubocop.tt
Original file line number Diff line number Diff line change
@@ -1,27 +1,12 @@
#!/usr/bin/env ruby
# frozen_string_literal: true

#
# This file was generated by Bundler.
#
# The application 'rubocop' is installed as part of a gem, and
# this file is here to facilitate running it.
#

ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)

bundle_binstub = File.expand_path("bundle", __dir__)

if File.file?(bundle_binstub)
if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
load(bundle_binstub)
else
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
end
end

require "rubygems"
require "bundler/setup"

# explicit rubocop config increases performance slightly while avoiding config confusion.
ARGV.unshift("--config", File.expand_path("../.rubocop.yml", __dir__))

load Gem.bin_path("rubocop", "rubocop")

0 comments on commit 8f81b8c

Please sign in to comment.