
- This is cleaner than vendoring a whole bunch of new gems and pinning `psych`. - Thanks for the pointer, Bo! - It doesn't work, though? ``` ❯ brew tests --only=migrator --debug Error: cannot load such file -- debug/debug.so Warning: Removed Sorbet lines from backtrace! Rerun with `--verbose` to see the original backtrace /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/frame_info.rb:16:in `require' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/frame_info.rb:16:in `rescue in <module:DEBUGGER__>' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/frame_info.rb:13:in `<module:DEBUGGER__>' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/frame_info.rb:3:in `<top (required)>' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/session.rb:31:in `require_relative' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug/session.rb:31:in `<top (required)>' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug.rb:3:in `require_relative' /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.1.4/lib/ruby/gems/3.1.0/gems/debug-1.6.3/lib/debug.rb:3:in `<top (required)>' /opt/homebrew/Library/Homebrew/dev-cmd/tests.rb:48:in `require' /opt/homebrew/Library/Homebrew/dev-cmd/tests.rb:48:in `run' /opt/homebrew/Library/Homebrew/brew.rb:89:in `<main>' ```
80 lines
2.1 KiB
Ruby
80 lines
2.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
source "https://rubygems.org"
|
|
|
|
# The default case (no envs), should always be a restrictive bound on the lowest supported minor version.
|
|
# This is the branch that Dependabot will use.
|
|
if ENV.fetch("HOMEBREW_USE_RUBY_FROM_PATH", "").empty?
|
|
ruby "~> 3.1.0"
|
|
else
|
|
ruby ">= 3.1.0"
|
|
end
|
|
|
|
# disallowed gems (should not be used)
|
|
# * nokogiri - use rexml instead for XML parsing
|
|
|
|
# installed gems (should all be require: false)
|
|
# ALL gems that are not vendored should be in a group
|
|
group :ast, optional: true do
|
|
gem "rubocop-ast", require: false
|
|
end
|
|
group :bootsnap, optional: true do
|
|
gem "bootsnap", require: false
|
|
end
|
|
group :formula_test, optional: true do
|
|
gem "minitest", require: false
|
|
end
|
|
group :livecheck, optional: true do
|
|
gem "ruby-progressbar", require: false
|
|
end
|
|
group :man, optional: true do
|
|
gem "kramdown", require: false
|
|
end
|
|
group :pr_upload, optional: true do
|
|
gem "json_schemer", require: false
|
|
end
|
|
group :prof, optional: true do
|
|
gem "ruby-prof", require: false
|
|
gem "stackprof", require: false
|
|
end
|
|
group :pry, optional: true do
|
|
gem "pry", require: false
|
|
end
|
|
group :style, optional: true do
|
|
gem "rubocop", require: false
|
|
gem "rubocop-md", require: false
|
|
gem "rubocop-performance", require: false
|
|
gem "rubocop-rspec", require: false
|
|
gem "rubocop-sorbet", require: false
|
|
end
|
|
group :tests, optional: true do
|
|
gem "parallel_tests", require: false
|
|
gem "rspec", require: false
|
|
gem "rspec-github", require: false
|
|
gem "rspec_junit_formatter", require: false
|
|
gem "rspec-retry", require: false
|
|
gem "rspec-sorbet", require: false
|
|
gem "simplecov", require: false
|
|
gem "simplecov-cobertura", require: false
|
|
end
|
|
group :typecheck, optional: true do
|
|
gem "method_source", require: false
|
|
gem "parlour", require: false
|
|
gem "sorbet-static-and-runtime", require: false
|
|
gem "spoom", require: false
|
|
gem "tapioca", require: false
|
|
end
|
|
|
|
# shared gems (used by multiple groups)
|
|
group :audit, :bump_unversioned_casks, :livecheck, optional: true do
|
|
gem "rexml", require: false
|
|
end
|
|
|
|
# vendored gems (no group)
|
|
gem "addressable"
|
|
gem "patchelf"
|
|
gem "plist"
|
|
gem "ruby-macho"
|
|
gem "sorbet-runtime"
|
|
gem "warning"
|