Merge pull request #17010 from Homebrew/bye-byebug
Bye `byebug`, hi `debug`!
This commit is contained in:
commit
151e2faffa
2
.gitignore
vendored
2
.gitignore
vendored
@ -21,6 +21,7 @@
|
|||||||
/Library/Taps
|
/Library/Taps
|
||||||
/Library/PinnedTaps
|
/Library/PinnedTaps
|
||||||
/Library/Homebrew/.byebug_history
|
/Library/Homebrew/.byebug_history
|
||||||
|
/Library/Homebrew/test/.rdbg_history
|
||||||
|
|
||||||
# Ignore Bundler files
|
# Ignore Bundler files
|
||||||
**/.bundle/bin
|
**/.bundle/bin
|
||||||
@ -105,6 +106,7 @@
|
|||||||
**/vendor/bundle/ruby/*/gems/racc-*/
|
**/vendor/bundle/ruby/*/gems/racc-*/
|
||||||
**/vendor/bundle/ruby/*/gems/rainbow-*/
|
**/vendor/bundle/ruby/*/gems/rainbow-*/
|
||||||
**/vendor/bundle/ruby/*/gems/rbi-*/
|
**/vendor/bundle/ruby/*/gems/rbi-*/
|
||||||
|
**/vendor/bundle/ruby/*/gems/rdoc-*/
|
||||||
**/vendor/bundle/ruby/*/gems/regexp_parser-*/
|
**/vendor/bundle/ruby/*/gems/regexp_parser-*/
|
||||||
**/vendor/bundle/ruby/*/gems/rexml-*/
|
**/vendor/bundle/ruby/*/gems/rexml-*/
|
||||||
**/vendor/bundle/ruby/*/gems/rspec-*/
|
**/vendor/bundle/ruby/*/gems/rspec-*/
|
||||||
|
|||||||
@ -48,7 +48,6 @@ group :style, optional: true do
|
|||||||
gem "rubocop-sorbet", require: false
|
gem "rubocop-sorbet", require: false
|
||||||
end
|
end
|
||||||
group :tests, optional: true do
|
group :tests, optional: true do
|
||||||
gem "byebug", require: false
|
|
||||||
gem "parallel_tests", require: false
|
gem "parallel_tests", require: false
|
||||||
gem "rspec", require: false
|
gem "rspec", require: false
|
||||||
gem "rspec-github", require: false
|
gem "rspec-github", require: false
|
||||||
|
|||||||
@ -7,7 +7,6 @@ GEM
|
|||||||
bindata (2.5.0)
|
bindata (2.5.0)
|
||||||
bootsnap (1.18.3)
|
bootsnap (1.18.3)
|
||||||
msgpack (~> 1.2)
|
msgpack (~> 1.2)
|
||||||
byebug (11.1.3)
|
|
||||||
coderay (1.1.3)
|
coderay (1.1.3)
|
||||||
commander (4.6.0)
|
commander (4.6.0)
|
||||||
highline (~> 2.0.0)
|
highline (~> 2.0.0)
|
||||||
@ -167,7 +166,6 @@ PLATFORMS
|
|||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
addressable
|
addressable
|
||||||
bootsnap
|
bootsnap
|
||||||
byebug
|
|
||||||
json_schemer
|
json_schemer
|
||||||
kramdown
|
kramdown
|
||||||
method_source
|
method_source
|
||||||
|
|||||||
@ -21,8 +21,8 @@ module Homebrew
|
|||||||
switch "--online",
|
switch "--online",
|
||||||
description: "Include tests that use the GitHub API and tests that use any of the taps for " \
|
description: "Include tests that use the GitHub API and tests that use any of the taps for " \
|
||||||
"official external commands."
|
"official external commands."
|
||||||
switch "--byebug",
|
switch "--debug",
|
||||||
description: "Enable debugging using byebug."
|
description: "Enable debugging using ruby/debug, or surface the standard `odebug` output."
|
||||||
switch "--changed",
|
switch "--changed",
|
||||||
description: "Only runs tests on files that were changed from the master branch."
|
description: "Only runs tests on files that were changed from the master branch."
|
||||||
switch "--fail-fast",
|
switch "--fail-fast",
|
||||||
@ -45,8 +45,6 @@ module Homebrew
|
|||||||
# Given we might be testing various commands, we probably want everything (except sorbet-static)
|
# Given we might be testing various commands, we probably want everything (except sorbet-static)
|
||||||
Homebrew.install_bundler_gems!(groups: Homebrew.valid_gem_groups - ["sorbet"])
|
Homebrew.install_bundler_gems!(groups: Homebrew.valid_gem_groups - ["sorbet"])
|
||||||
|
|
||||||
require "byebug" if args.byebug?
|
|
||||||
|
|
||||||
HOMEBREW_LIBRARY_PATH.cd do
|
HOMEBREW_LIBRARY_PATH.cd do
|
||||||
setup_environment!
|
setup_environment!
|
||||||
|
|
||||||
@ -137,6 +135,8 @@ module Homebrew
|
|||||||
|
|
||||||
puts "Randomized with seed #{seed}"
|
puts "Randomized with seed #{seed}"
|
||||||
|
|
||||||
|
ENV["HOMEBREW_DEBUG"] = "1" if args.debug? # Used in spec_helper.rb to require the "debug" gem.
|
||||||
|
|
||||||
# Submit test flakiness information using BuildPulse
|
# Submit test flakiness information using BuildPulse
|
||||||
# BUILDPULSE used in spec_helper.rb
|
# BUILDPULSE used in spec_helper.rb
|
||||||
if use_buildpulse?
|
if use_buildpulse?
|
||||||
|
|||||||
@ -5,9 +5,6 @@
|
|||||||
# Please instead update this file by running `bin/tapioca dsl Homebrew::DevCmd::Tests`.
|
# Please instead update this file by running `bin/tapioca dsl Homebrew::DevCmd::Tests`.
|
||||||
|
|
||||||
class Homebrew::CLI::Args
|
class Homebrew::CLI::Args
|
||||||
sig { returns(T::Boolean) }
|
|
||||||
def byebug?; end
|
|
||||||
|
|
||||||
sig { returns(T::Boolean) }
|
sig { returns(T::Boolean) }
|
||||||
def changed?; end
|
def changed?; end
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,6 @@ gem:
|
|||||||
- json
|
- json
|
||||||
- msgpack
|
- msgpack
|
||||||
# These aren't needed:
|
# These aren't needed:
|
||||||
- byebug
|
|
||||||
- coderay
|
- coderay
|
||||||
- commander
|
- commander
|
||||||
- diff-lcs
|
- diff-lcs
|
||||||
|
|||||||
@ -39,6 +39,14 @@ if !gems_vendored && !ENV["HOMEBREW_SKIP_INITIAL_GEM_INSTALL"]
|
|||||||
ENV["HOMEBREW_SKIP_INITIAL_GEM_INSTALL"] = "1"
|
ENV["HOMEBREW_SKIP_INITIAL_GEM_INSTALL"] = "1"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if Pathname.new(RbConfig.ruby).to_s.include?("/vendor/portable-ruby/")
|
||||||
|
ruby_version = RbConfig::CONFIG["ruby_version"]
|
||||||
|
ruby_path = "#{RbConfig::CONFIG["rubylibprefix"]}/gems/#{ruby_version}"
|
||||||
|
|
||||||
|
$LOAD_PATH.unshift "#{ruby_path}/extensions/#{Gem::Platform.local}/#{ruby_version}-static/debug-1.6.3"
|
||||||
|
$LOAD_PATH.unshift "#{ruby_path}/gems/debug-1.6.3/lib"
|
||||||
|
end
|
||||||
|
|
||||||
unless $LOAD_PATH.include?(HOMEBREW_LIBRARY_PATH.to_s)
|
unless $LOAD_PATH.include?(HOMEBREW_LIBRARY_PATH.to_s)
|
||||||
# Insert the path after any existing Homebrew paths (e.g. those inserted by tests and parent processes)
|
# Insert the path after any existing Homebrew paths (e.g. those inserted by tests and parent processes)
|
||||||
last_homebrew_path_idx = $LOAD_PATH.rindex do |path|
|
last_homebrew_path_idx = $LOAD_PATH.rindex do |path|
|
||||||
|
|||||||
@ -29,7 +29,6 @@ require "rspec/retry"
|
|||||||
require "rspec/sorbet"
|
require "rspec/sorbet"
|
||||||
require "rubocop/rspec/support"
|
require "rubocop/rspec/support"
|
||||||
require "find"
|
require "find"
|
||||||
require "byebug"
|
|
||||||
require "timeout"
|
require "timeout"
|
||||||
|
|
||||||
$LOAD_PATH.unshift(File.expand_path("#{ENV.fetch("HOMEBREW_LIBRARY")}/Homebrew/test/support/lib"))
|
$LOAD_PATH.unshift(File.expand_path("#{ENV.fetch("HOMEBREW_LIBRARY")}/Homebrew/test/support/lib"))
|
||||||
@ -38,6 +37,8 @@ require_relative "support/extend/cachable"
|
|||||||
|
|
||||||
require_relative "../global"
|
require_relative "../global"
|
||||||
|
|
||||||
|
require "debug" if ENV["HOMEBREW_DEBUG"]
|
||||||
|
|
||||||
require "test/support/quiet_progress_formatter"
|
require "test/support/quiet_progress_formatter"
|
||||||
require "test/support/helper/cask"
|
require "test/support/helper/cask"
|
||||||
require "test/support/helper/files"
|
require "test/support/helper/files"
|
||||||
@ -230,14 +231,14 @@ RSpec.configure do |config|
|
|||||||
@__stdin = $stdin.clone
|
@__stdin = $stdin.clone
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if !example.metadata.keys.intersect?([:focus, :byebug]) && !ENV.key?("HOMEBREW_VERBOSE_TESTS")
|
if example.metadata.keys.exclude?(:focus) && !ENV.key?("HOMEBREW_VERBOSE_TESTS")
|
||||||
$stdout.reopen(File::NULL)
|
$stdout.reopen(File::NULL)
|
||||||
$stderr.reopen(File::NULL)
|
$stderr.reopen(File::NULL)
|
||||||
|
$stdin.reopen(File::NULL)
|
||||||
else
|
else
|
||||||
# don't retry when focusing/debugging
|
# don't retry when focusing
|
||||||
config.default_retry_count = 0
|
config.default_retry_count = 0
|
||||||
end
|
end
|
||||||
$stdin.reopen(File::NULL)
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
timeout = example.metadata.fetch(:timeout, 60)
|
timeout = example.metadata.fetch(:timeout, 60)
|
||||||
|
|||||||
@ -35,8 +35,6 @@ $:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version
|
|||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/msgpack-1.7.2/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/msgpack-1.7.2/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/bootsnap-1.18.3")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/bootsnap-1.18.3")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/bootsnap-1.18.3/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/bootsnap-1.18.3/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/byebug-11.1.3")
|
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/byebug-11.1.3/lib")
|
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/coderay-1.1.3/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/coderay-1.1.3/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/highline-2.0.3/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/highline-2.0.3/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/commander-4.6.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/commander-4.6.0/lib")
|
||||||
|
|||||||
@ -2208,7 +2208,6 @@ _brew_tests() {
|
|||||||
case "${cur}" in
|
case "${cur}" in
|
||||||
-*)
|
-*)
|
||||||
__brewcomp "
|
__brewcomp "
|
||||||
--byebug
|
|
||||||
--changed
|
--changed
|
||||||
--coverage
|
--coverage
|
||||||
--debug
|
--debug
|
||||||
|
|||||||
@ -1465,10 +1465,9 @@ __fish_brew_complete_arg 'test' -a '(__fish_brew_suggest_formulae_installed)'
|
|||||||
|
|
||||||
|
|
||||||
__fish_brew_complete_cmd 'tests' 'Run Homebrew\'s unit and integration tests'
|
__fish_brew_complete_cmd 'tests' 'Run Homebrew\'s unit and integration tests'
|
||||||
__fish_brew_complete_arg 'tests' -l byebug -d 'Enable debugging using byebug'
|
|
||||||
__fish_brew_complete_arg 'tests' -l changed -d 'Only runs tests on files that were changed from the master branch'
|
__fish_brew_complete_arg 'tests' -l changed -d 'Only runs tests on files that were changed from the master branch'
|
||||||
__fish_brew_complete_arg 'tests' -l coverage -d 'Generate code coverage reports'
|
__fish_brew_complete_arg 'tests' -l coverage -d 'Generate code coverage reports'
|
||||||
__fish_brew_complete_arg 'tests' -l debug -d 'Display any debugging information'
|
__fish_brew_complete_arg 'tests' -l debug -d 'Enable debugging using ruby/debug, or surface the standard `odebug` output'
|
||||||
__fish_brew_complete_arg 'tests' -l fail-fast -d 'Exit early on the first failing test'
|
__fish_brew_complete_arg 'tests' -l fail-fast -d 'Exit early on the first failing test'
|
||||||
__fish_brew_complete_arg 'tests' -l generic -d 'Run only OS-agnostic tests'
|
__fish_brew_complete_arg 'tests' -l generic -d 'Run only OS-agnostic tests'
|
||||||
__fish_brew_complete_arg 'tests' -l help -d 'Show this message'
|
__fish_brew_complete_arg 'tests' -l help -d 'Show this message'
|
||||||
|
|||||||
@ -1815,10 +1815,9 @@ _brew_test() {
|
|||||||
# brew tests
|
# brew tests
|
||||||
_brew_tests() {
|
_brew_tests() {
|
||||||
_arguments \
|
_arguments \
|
||||||
'--byebug[Enable debugging using byebug]' \
|
|
||||||
'(--only)--changed[Only runs tests on files that were changed from the master branch]' \
|
'(--only)--changed[Only runs tests on files that were changed from the master branch]' \
|
||||||
'--coverage[Generate code coverage reports]' \
|
'--coverage[Generate code coverage reports]' \
|
||||||
'--debug[Display any debugging information]' \
|
'--debug[Enable debugging using ruby/debug, or surface the standard `odebug` output]' \
|
||||||
'--fail-fast[Exit early on the first failing test]' \
|
'--fail-fast[Exit early on the first failing test]' \
|
||||||
'--generic[Run only OS-agnostic tests]' \
|
'--generic[Run only OS-agnostic tests]' \
|
||||||
'--help[Show this message]' \
|
'--help[Show this message]' \
|
||||||
|
|||||||
@ -2650,9 +2650,9 @@ Run Homebrew's unit and integration tests.
|
|||||||
: Include tests that use the GitHub API and tests that use any of the taps for
|
: Include tests that use the GitHub API and tests that use any of the taps for
|
||||||
official external commands.
|
official external commands.
|
||||||
|
|
||||||
`--byebug`
|
`--debug`
|
||||||
|
|
||||||
: Enable debugging using byebug.
|
: Enable debugging using ruby/debug, or surface the standard `odebug` output.
|
||||||
|
|
||||||
`--changed`
|
`--changed`
|
||||||
|
|
||||||
|
|||||||
@ -1687,8 +1687,8 @@ Run only OS\-agnostic tests\.
|
|||||||
\fB\-\-online\fP
|
\fB\-\-online\fP
|
||||||
Include tests that use the GitHub API and tests that use any of the taps for official external commands\.
|
Include tests that use the GitHub API and tests that use any of the taps for official external commands\.
|
||||||
.TP
|
.TP
|
||||||
\fB\-\-byebug\fP
|
\fB\-\-debug\fP
|
||||||
Enable debugging using byebug\.
|
Enable debugging using ruby/debug, or surface the standard \fBodebug\fP output\.
|
||||||
.TP
|
.TP
|
||||||
\fB\-\-changed\fP
|
\fB\-\-changed\fP
|
||||||
Only runs tests on files that were changed from the master branch\.
|
Only runs tests on files that were changed from the master branch\.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user