Merge pull request #2597 from MikeMcQuaid/vendor-gems
Vendor all Homebrew's gems.
This commit is contained in:
commit
3e4547f52e
5
.bundle/config
Normal file
5
.bundle/config
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
BUNDLE_CLEAN: "true"
|
||||||
|
BUNDLE_DISABLE_SHARED_GEMS: "true"
|
||||||
|
BUNDLE_PATH: "Library/Homebrew/vendor"
|
||||||
|
BUNDLE_JOBS: "3"
|
||||||
29
.gitignore
vendored
29
.gitignore
vendored
@ -8,15 +8,10 @@
|
|||||||
!/Library/
|
!/Library/
|
||||||
|
|
||||||
# Ignore generated files within `Library` (again).
|
# Ignore generated files within `Library` (again).
|
||||||
/Library/Homebrew/**/.bundle
|
|
||||||
/Library/Homebrew/**/vendor/bundle
|
|
||||||
/Library/Homebrew/doc
|
/Library/Homebrew/doc
|
||||||
/Library/Homebrew/cask/bin
|
/Library/Homebrew/cask/bin
|
||||||
/Library/Homebrew/cask/coverage
|
/Library/Homebrew/cask/coverage
|
||||||
/Library/Homebrew/cask/tmp
|
/Library/Homebrew/cask/tmp
|
||||||
/Library/Homebrew/test/bin
|
|
||||||
/Library/Homebrew/test/coverage
|
|
||||||
/Library/Homebrew/test/fs_leak_log
|
|
||||||
/Library/Homebrew/tmp
|
/Library/Homebrew/tmp
|
||||||
/Library/LinkedKegs
|
/Library/LinkedKegs
|
||||||
/Library/Locks
|
/Library/Locks
|
||||||
@ -24,8 +19,24 @@
|
|||||||
/Library/PinnedTaps
|
/Library/PinnedTaps
|
||||||
/Library/Taps
|
/Library/Taps
|
||||||
|
|
||||||
# Ignore vendored files within `Library`.
|
# Ignore some vendored files within `Library`.
|
||||||
/Library/Homebrew/vendor/portable-ruby
|
/Library/Homebrew/vendor/portable-ruby
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/bin
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/cache
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/extensions
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/gems/*
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-*/*
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/gems/plist-*/*
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/specifications
|
||||||
|
/Library/Homebrew/vendor/ruby/2.0.0/tmp
|
||||||
|
|
||||||
|
# Unignore our vendored gems
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-*
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-*/LICENSE*
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-*/lib
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/plist-*
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/plist-*/LICENSE*
|
||||||
|
!/Library/Homebrew/vendor/ruby/2.0.0/gems/plist-*/lib
|
||||||
|
|
||||||
# Ignore `bin` contents (again).
|
# Ignore `bin` contents (again).
|
||||||
/bin
|
/bin
|
||||||
@ -50,13 +61,13 @@
|
|||||||
!/completions
|
!/completions
|
||||||
|
|
||||||
# Unignore our root-level metadata files.
|
# Unignore our root-level metadata files.
|
||||||
|
!/.bundle
|
||||||
!/.gitignore
|
!/.gitignore
|
||||||
!/.travis.yml
|
!/.travis.yml
|
||||||
!/.yardopts
|
!/.yardopts
|
||||||
!/CODEOFCONDUCT.md
|
!/CODEOFCONDUCT.md
|
||||||
!/CONTRIBUTING.md
|
!/CONTRIBUTING.md
|
||||||
|
!/Gemfile
|
||||||
|
!/Gemfile.lock
|
||||||
!/LICENSE.txt
|
!/LICENSE.txt
|
||||||
!/README.md
|
!/README.md
|
||||||
|
|
||||||
# Unignore tests' bundle config
|
|
||||||
!/Library/Homebrew/test/.bundle
|
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
language: ruby
|
language: ruby
|
||||||
cache:
|
bundler_args: --path Library/Homebrew/vendor --standalone --jobs 3
|
||||||
directories:
|
cache: bundler
|
||||||
- $HOME/.gem/ruby
|
|
||||||
- Library/Homebrew/vendor/bundle
|
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
@ -13,6 +11,9 @@ matrix:
|
|||||||
rvm: 2.0.0
|
rvm: 2.0.0
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
|
- export GEM_HOME="$PWD/Library/Homebrew/vendor/ruby/2.0.0"
|
||||||
|
- gem list --installed bundler || gem install bundler
|
||||||
|
- export PATH="$GEM_HOME/bin:$PATH"
|
||||||
- export HOMEBREW_DEVELOPER=1
|
- export HOMEBREW_DEVELOPER=1
|
||||||
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
|
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
|
||||||
HOMEBREW_REPOSITORY="$(brew --repo)";
|
HOMEBREW_REPOSITORY="$(brew --repo)";
|
||||||
|
|||||||
36
Gemfile
Normal file
36
Gemfile
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
# brew *
|
||||||
|
gem "ruby-macho"
|
||||||
|
|
||||||
|
# brew cask
|
||||||
|
gem "plist"
|
||||||
|
|
||||||
|
# brew cask style
|
||||||
|
group :cask_style do
|
||||||
|
gem "rubocop-cask", "~> 0.12.0"
|
||||||
|
end
|
||||||
|
|
||||||
|
# brew man
|
||||||
|
group :man do
|
||||||
|
gem "ronn"
|
||||||
|
end
|
||||||
|
|
||||||
|
# brew style
|
||||||
|
group :style do
|
||||||
|
gem "rubocop", "~> 0.47.1"
|
||||||
|
end
|
||||||
|
|
||||||
|
# brew tests
|
||||||
|
group :tests do
|
||||||
|
gem "parallel_tests"
|
||||||
|
gem "rspec"
|
||||||
|
gem "rspec-its", require: false
|
||||||
|
gem "rspec-wait", require: false
|
||||||
|
end
|
||||||
|
|
||||||
|
# brew tests --coverage
|
||||||
|
group :coverage do
|
||||||
|
gem "codecov", require: false
|
||||||
|
gem "simplecov", require: false
|
||||||
|
end
|
||||||
84
Gemfile.lock
Normal file
84
Gemfile.lock
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
ast (2.3.0)
|
||||||
|
codecov (0.1.10)
|
||||||
|
json
|
||||||
|
simplecov
|
||||||
|
url
|
||||||
|
diff-lcs (1.3)
|
||||||
|
docile (1.1.5)
|
||||||
|
hpricot (0.8.6)
|
||||||
|
json (2.1.0)
|
||||||
|
mustache (1.0.5)
|
||||||
|
parallel (1.11.1)
|
||||||
|
parallel_tests (2.14.1)
|
||||||
|
parallel
|
||||||
|
parser (2.4.0.0)
|
||||||
|
ast (~> 2.2)
|
||||||
|
plist (3.3.0)
|
||||||
|
powerpack (0.1.1)
|
||||||
|
public_suffix (2.0.5)
|
||||||
|
rainbow (2.2.2)
|
||||||
|
rake
|
||||||
|
rake (12.0.0)
|
||||||
|
rdiscount (2.2.0.1)
|
||||||
|
ronn (0.7.3)
|
||||||
|
hpricot (>= 0.8.2)
|
||||||
|
mustache (>= 0.7.0)
|
||||||
|
rdiscount (>= 1.5.8)
|
||||||
|
rspec (3.6.0)
|
||||||
|
rspec-core (~> 3.6.0)
|
||||||
|
rspec-expectations (~> 3.6.0)
|
||||||
|
rspec-mocks (~> 3.6.0)
|
||||||
|
rspec-core (3.6.0)
|
||||||
|
rspec-support (~> 3.6.0)
|
||||||
|
rspec-expectations (3.6.0)
|
||||||
|
diff-lcs (>= 1.2.0, < 2.0)
|
||||||
|
rspec-support (~> 3.6.0)
|
||||||
|
rspec-its (1.2.0)
|
||||||
|
rspec-core (>= 3.0.0)
|
||||||
|
rspec-expectations (>= 3.0.0)
|
||||||
|
rspec-mocks (3.6.0)
|
||||||
|
diff-lcs (>= 1.2.0, < 2.0)
|
||||||
|
rspec-support (~> 3.6.0)
|
||||||
|
rspec-support (3.6.0)
|
||||||
|
rspec-wait (0.0.9)
|
||||||
|
rspec (>= 3, < 4)
|
||||||
|
rubocop (0.47.1)
|
||||||
|
parser (>= 2.3.3.1, < 3.0)
|
||||||
|
powerpack (~> 0.1)
|
||||||
|
rainbow (>= 1.99.1, < 3.0)
|
||||||
|
ruby-progressbar (~> 1.7)
|
||||||
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
||||||
|
rubocop-cask (0.12.0)
|
||||||
|
public_suffix (~> 2.0)
|
||||||
|
rubocop (~> 0.47.1)
|
||||||
|
ruby-macho (1.1.0)
|
||||||
|
ruby-progressbar (1.8.1)
|
||||||
|
simplecov (0.14.1)
|
||||||
|
docile (~> 1.1.0)
|
||||||
|
json (>= 1.8, < 3)
|
||||||
|
simplecov-html (~> 0.10.0)
|
||||||
|
simplecov-html (0.10.0)
|
||||||
|
unicode-display_width (1.2.1)
|
||||||
|
url (0.3.2)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
codecov
|
||||||
|
parallel_tests
|
||||||
|
plist
|
||||||
|
ronn
|
||||||
|
rspec
|
||||||
|
rspec-its
|
||||||
|
rspec-wait
|
||||||
|
rubocop (~> 0.47.1)
|
||||||
|
rubocop-cask (~> 0.12.0)
|
||||||
|
ruby-macho
|
||||||
|
simplecov
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
1.14.6
|
||||||
@ -8,9 +8,14 @@ std_trap = trap("INT") { exit! 130 } # no backtrace thanks
|
|||||||
RUBY_TWO = RUBY_VERSION.split(".").first.to_i >= 2
|
RUBY_TWO = RUBY_VERSION.split(".").first.to_i >= 2
|
||||||
raise "Homebrew must be run under Ruby 2!" unless RUBY_TWO
|
raise "Homebrew must be run under Ruby 2!" unless RUBY_TWO
|
||||||
|
|
||||||
|
homebrew_library_path = File.dirname(File.realpath(__FILE__))
|
||||||
|
$:.unshift(homebrew_library_path)
|
||||||
|
|
||||||
|
require_relative "#{homebrew_library_path}/vendor/bundler/setup"
|
||||||
|
|
||||||
require "pathname"
|
require "pathname"
|
||||||
HOMEBREW_LIBRARY_PATH = Pathname.new(__FILE__).realpath.parent
|
HOMEBREW_LIBRARY_PATH = Pathname.new(homebrew_library_path)
|
||||||
$:.unshift(HOMEBREW_LIBRARY_PATH.to_s)
|
|
||||||
require "global"
|
require "global"
|
||||||
require "tap"
|
require "tap"
|
||||||
|
|
||||||
@ -20,6 +25,8 @@ if ARGV == %w[--version] || ARGV == %w[-v]
|
|||||||
exit 0
|
exit 0
|
||||||
end
|
end
|
||||||
|
|
||||||
|
HOMEBREW_GEM_HOME = HOMEBREW_LIBRARY_PATH/"vendor/#{RUBY_ENGINE}/#{RUBY_VERSION}"
|
||||||
|
|
||||||
def require?(path)
|
def require?(path)
|
||||||
require path
|
require path
|
||||||
rescue LoadError => e
|
rescue LoadError => e
|
||||||
@ -52,6 +59,14 @@ begin
|
|||||||
# Add contributed commands to PATH before checking.
|
# Add contributed commands to PATH before checking.
|
||||||
path.append(Pathname.glob(Tap::TAP_DIRECTORY/"*/*/cmd"))
|
path.append(Pathname.glob(Tap::TAP_DIRECTORY/"*/*/cmd"))
|
||||||
|
|
||||||
|
# Add RubyGems.
|
||||||
|
ENV["GEM_HOME"] = ENV["GEM_PATH"] = HOMEBREW_GEM_HOME
|
||||||
|
path.append(HOMEBREW_GEM_HOME/"bin")
|
||||||
|
|
||||||
|
# Make RubyGems notice environment changes.
|
||||||
|
Gem.clear_paths
|
||||||
|
Gem::Specification.reset
|
||||||
|
|
||||||
# Add SCM wrappers.
|
# Add SCM wrappers.
|
||||||
path.append(HOMEBREW_SHIMS_PATH/"scm")
|
path.append(HOMEBREW_SHIMS_PATH/"scm")
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@ require "hbc/artifact/base"
|
|||||||
|
|
||||||
require "hbc/utils/hash_validator"
|
require "hbc/utils/hash_validator"
|
||||||
|
|
||||||
require "vendor/plist/plist"
|
require "plist"
|
||||||
|
|
||||||
module Hbc
|
module Hbc
|
||||||
module Artifact
|
module Artifact
|
||||||
|
|||||||
@ -26,7 +26,7 @@ module Hbc
|
|||||||
def install_rubocop
|
def install_rubocop
|
||||||
capture_stderr do
|
capture_stderr do
|
||||||
begin
|
begin
|
||||||
Homebrew.install_gem_setup_path! "rubocop-cask", HOMEBREW_RUBOCOP_CASK_VERSION, "rubocop"
|
Homebrew.run_bundler_if_needed!
|
||||||
rescue SystemExit
|
rescue SystemExit
|
||||||
raise CaskError, Tty.strip_ansi($stderr.string).chomp.sub(/\AError: /, "")
|
raise CaskError, Tty.strip_ansi($stderr.string).chomp.sub(/\AError: /, "")
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
require "hbc/container/naked"
|
require "hbc/container/naked"
|
||||||
require "vendor/macho/macho"
|
require "macho"
|
||||||
|
|
||||||
module Hbc
|
module Hbc
|
||||||
class Container
|
class Container
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
require "open3"
|
require "open3"
|
||||||
require "shellwords"
|
require "shellwords"
|
||||||
require "vendor/plist/plist"
|
require "plist"
|
||||||
|
|
||||||
require "extend/io"
|
require "extend/io"
|
||||||
|
|
||||||
|
|||||||
@ -65,7 +65,7 @@ module Homebrew
|
|||||||
def check_style_impl(files, output_type, options = {})
|
def check_style_impl(files, output_type, options = {})
|
||||||
fix = options[:fix]
|
fix = options[:fix]
|
||||||
|
|
||||||
Homebrew.install_gem_setup_path! "rubocop", HOMEBREW_RUBOCOP_VERSION
|
Homebrew.run_bundler_if_needed!
|
||||||
require "rubocop"
|
require "rubocop"
|
||||||
require_relative "../rubocops"
|
require_relative "../rubocops"
|
||||||
|
|
||||||
|
|||||||
@ -2,8 +2,6 @@ unless ENV["HOMEBREW_BREW_FILE"]
|
|||||||
raise "HOMEBREW_BREW_FILE was not exported! Please call bin/brew directly!"
|
raise "HOMEBREW_BREW_FILE was not exported! Please call bin/brew directly!"
|
||||||
end
|
end
|
||||||
|
|
||||||
require "constants"
|
|
||||||
|
|
||||||
# Path to `bin/brew` main executable in HOMEBREW_PREFIX
|
# Path to `bin/brew` main executable in HOMEBREW_PREFIX
|
||||||
HOMEBREW_BREW_FILE = Pathname.new(ENV["HOMEBREW_BREW_FILE"])
|
HOMEBREW_BREW_FILE = Pathname.new(ENV["HOMEBREW_BREW_FILE"])
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +0,0 @@
|
|||||||
# RuboCop version used for `brew style` and `brew cask style`
|
|
||||||
HOMEBREW_RUBOCOP_VERSION = "0.47.1".freeze
|
|
||||||
HOMEBREW_RUBOCOP_CASK_VERSION = "~> 0.12.0".freeze # has to be updated when RuboCop version changes
|
|
||||||
@ -65,6 +65,9 @@ module Homebrew
|
|||||||
ENV.activate_extensions!
|
ENV.activate_extensions!
|
||||||
ENV.setup_build_environment
|
ENV.setup_build_environment
|
||||||
|
|
||||||
|
# Add RubyGems (for RuboCop).
|
||||||
|
ENV["PATH"] = PATH.new(ENV["PATH"]).append(HOMEBREW_GEM_HOME/"bin")
|
||||||
|
|
||||||
if ARGV.named.empty?
|
if ARGV.named.empty?
|
||||||
ff = Formula
|
ff = Formula
|
||||||
files = Tap.map(&:formula_dir)
|
files = Tap.map(&:formula_dir)
|
||||||
|
|||||||
@ -35,7 +35,7 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
def regenerate_man_pages
|
def regenerate_man_pages
|
||||||
Homebrew.install_gem_setup_path! "ronn"
|
Homebrew.run_bundler_if_needed!
|
||||||
|
|
||||||
markup = build_man_page
|
markup = build_man_page
|
||||||
convert_man_page(markup, TARGET_DOC_PATH/"Manpage.md")
|
convert_man_page(markup, TARGET_DOC_PATH/"Manpage.md")
|
||||||
|
|||||||
@ -49,8 +49,6 @@ module Homebrew
|
|||||||
FileUtils.rm_f "test/coverage/.resultset.json"
|
FileUtils.rm_f "test/coverage/.resultset.json"
|
||||||
end
|
end
|
||||||
|
|
||||||
ENV["BUNDLE_GEMFILE"] = "#{HOMEBREW_LIBRARY_PATH}/test/Gemfile"
|
|
||||||
|
|
||||||
# Override author/committer as global settings might be invalid and thus
|
# Override author/committer as global settings might be invalid and thus
|
||||||
# will cause silent failure during the setup of dummy Git repositories.
|
# will cause silent failure during the setup of dummy Git repositories.
|
||||||
%w[AUTHOR COMMITTER].each do |role|
|
%w[AUTHOR COMMITTER].each do |role|
|
||||||
@ -59,10 +57,7 @@ module Homebrew
|
|||||||
ENV["GIT_#{role}_DATE"] = "Sun Jan 22 19:59:13 2017 +0000"
|
ENV["GIT_#{role}_DATE"] = "Sun Jan 22 19:59:13 2017 +0000"
|
||||||
end
|
end
|
||||||
|
|
||||||
Homebrew.install_gem_setup_path! "bundler"
|
Homebrew.run_bundler_if_needed!
|
||||||
unless quiet_system("bundle", "check")
|
|
||||||
system "bundle", "install"
|
|
||||||
end
|
|
||||||
|
|
||||||
parallel = true
|
parallel = true
|
||||||
|
|
||||||
@ -106,10 +101,15 @@ module Homebrew
|
|||||||
files = files.reject { |p| p =~ %r{^test/os/linux(/.*|_spec\.rb)$} }
|
files = files.reject { |p| p =~ %r{^test/os/linux(/.*|_spec\.rb)$} }
|
||||||
end
|
end
|
||||||
|
|
||||||
if parallel
|
files.map! { |p| HOMEBREW_LIBRARY_PATH/p }
|
||||||
system "bundle", "exec", "parallel_rspec", *opts, "--", *args, "--", *files
|
|
||||||
else
|
(HOMEBREW_LIBRARY_PATH/"vendor/#{RUBY_ENGINE}/#{RUBY_VERSION}").cd do
|
||||||
system "bundle", "exec", "rspec", *args, "--", *files
|
if parallel
|
||||||
|
system "parallel_rspec", *opts, "--", *args, "--", *files
|
||||||
|
else
|
||||||
|
system "rspec", *args, "--", *files
|
||||||
|
end
|
||||||
|
FileUtils.rm_rf "tmp"
|
||||||
end
|
end
|
||||||
|
|
||||||
return if $?.success?
|
return if $?.success?
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
require "vendor/macho/macho"
|
require "macho"
|
||||||
require "os/mac/architecture_list"
|
require "os/mac/architecture_list"
|
||||||
|
|
||||||
module MachOShim
|
module MachOShim
|
||||||
|
|||||||
@ -1,12 +0,0 @@
|
|||||||
source "https://rubygems.org"
|
|
||||||
|
|
||||||
gem "parallel_tests"
|
|
||||||
gem "rspec"
|
|
||||||
gem "rubocop"
|
|
||||||
gem "rspec-its", require: false
|
|
||||||
gem "rspec-wait", require: false
|
|
||||||
|
|
||||||
group :coverage do
|
|
||||||
gem "simplecov", require: false
|
|
||||||
gem "codecov", require: false
|
|
||||||
end
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
GEM
|
|
||||||
remote: https://rubygems.org/
|
|
||||||
specs:
|
|
||||||
ast (2.3.0)
|
|
||||||
codecov (0.1.9)
|
|
||||||
json
|
|
||||||
simplecov
|
|
||||||
url
|
|
||||||
diff-lcs (1.3)
|
|
||||||
docile (1.1.5)
|
|
||||||
json (2.0.3)
|
|
||||||
parallel (1.10.0)
|
|
||||||
parallel_tests (2.13.0)
|
|
||||||
parallel
|
|
||||||
parser (2.4.0.0)
|
|
||||||
ast (~> 2.2)
|
|
||||||
powerpack (0.1.1)
|
|
||||||
rainbow (2.2.1)
|
|
||||||
rspec (3.5.0)
|
|
||||||
rspec-core (~> 3.5.0)
|
|
||||||
rspec-expectations (~> 3.5.0)
|
|
||||||
rspec-mocks (~> 3.5.0)
|
|
||||||
rspec-core (3.5.4)
|
|
||||||
rspec-support (~> 3.5.0)
|
|
||||||
rspec-expectations (3.5.0)
|
|
||||||
diff-lcs (>= 1.2.0, < 2.0)
|
|
||||||
rspec-support (~> 3.5.0)
|
|
||||||
rspec-its (1.2.0)
|
|
||||||
rspec-core (>= 3.0.0)
|
|
||||||
rspec-expectations (>= 3.0.0)
|
|
||||||
rspec-mocks (3.5.0)
|
|
||||||
diff-lcs (>= 1.2.0, < 2.0)
|
|
||||||
rspec-support (~> 3.5.0)
|
|
||||||
rspec-support (3.5.0)
|
|
||||||
rspec-wait (0.0.9)
|
|
||||||
rspec (>= 3, < 4)
|
|
||||||
rubocop (0.47.1)
|
|
||||||
parser (>= 2.3.3.1, < 3.0)
|
|
||||||
powerpack (~> 0.1)
|
|
||||||
rainbow (>= 1.99.1, < 3.0)
|
|
||||||
ruby-progressbar (~> 1.7)
|
|
||||||
unicode-display_width (~> 1.0, >= 1.0.1)
|
|
||||||
ruby-progressbar (1.8.1)
|
|
||||||
simplecov (0.13.0)
|
|
||||||
docile (~> 1.1.0)
|
|
||||||
json (>= 1.8, < 3)
|
|
||||||
simplecov-html (~> 0.10.0)
|
|
||||||
simplecov-html (0.10.0)
|
|
||||||
unicode-display_width (1.1.3)
|
|
||||||
url (0.3.2)
|
|
||||||
|
|
||||||
PLATFORMS
|
|
||||||
ruby
|
|
||||||
|
|
||||||
DEPENDENCIES
|
|
||||||
codecov
|
|
||||||
parallel_tests
|
|
||||||
rspec
|
|
||||||
rspec-its
|
|
||||||
rspec-wait
|
|
||||||
rubocop
|
|
||||||
simplecov
|
|
||||||
|
|
||||||
BUNDLED WITH
|
|
||||||
1.14.5
|
|
||||||
@ -24,7 +24,7 @@ describe Hbc::Cask, :cask do
|
|||||||
describe "load" do
|
describe "load" do
|
||||||
let(:tap_path) { Hbc.default_tap.path }
|
let(:tap_path) { Hbc.default_tap.path }
|
||||||
let(:file_dirname) { Pathname.new(__FILE__).dirname }
|
let(:file_dirname) { Pathname.new(__FILE__).dirname }
|
||||||
let(:relative_tap_path) { tap_path.relative_path_from(file_dirname) }
|
let(:relative_tap_path) { tap_path.realpath.relative_path_from(file_dirname) }
|
||||||
|
|
||||||
it "returns an instance of the Cask for the given token" do
|
it "returns an instance of the Cask for the given token" do
|
||||||
c = Hbc::CaskLoader.load("local-caffeine")
|
c = Hbc::CaskLoader.load("local-caffeine")
|
||||||
@ -56,7 +56,9 @@ describe Hbc::Cask, :cask do
|
|||||||
end
|
end
|
||||||
|
|
||||||
it "returns an instance of the Cask from a relative file location" do
|
it "returns an instance of the Cask from a relative file location" do
|
||||||
c = Hbc::CaskLoader.load(relative_tap_path/"Casks/local-caffeine.rb")
|
c = file_dirname.cd do
|
||||||
|
Hbc::CaskLoader.load(relative_tap_path/"Casks/local-caffeine.rb")
|
||||||
|
end
|
||||||
expect(c).to be_kind_of(Hbc::Cask)
|
expect(c).to be_kind_of(Hbc::Cask)
|
||||||
expect(c.token).to eq("local-caffeine")
|
expect(c.token).to eq("local-caffeine")
|
||||||
end
|
end
|
||||||
|
|||||||
@ -62,7 +62,7 @@ describe Hbc::CLI::Style, :cask do
|
|||||||
|
|
||||||
context "when installation succeeds" do
|
context "when installation succeeds" do
|
||||||
before do
|
before do
|
||||||
allow(Homebrew).to receive(:install_gem_setup_path!)
|
allow(Homebrew).to receive(:run_bundler_if_needed!)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "exits successfully" do
|
it "exits successfully" do
|
||||||
@ -72,7 +72,7 @@ describe Hbc::CLI::Style, :cask do
|
|||||||
|
|
||||||
context "when installation fails" do
|
context "when installation fails" do
|
||||||
before do
|
before do
|
||||||
allow(Homebrew).to receive(:install_gem_setup_path!).and_raise(SystemExit)
|
allow(Homebrew).to receive(:run_bundler_if_needed!).and_raise(SystemExit)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "raises an error" do
|
it "raises an error" do
|
||||||
|
|||||||
@ -89,12 +89,10 @@ RSpec.shared_context "integration test" do
|
|||||||
ruby_args << "-rtest/support/helper/integration_mocks"
|
ruby_args << "-rtest/support/helper/integration_mocks"
|
||||||
ruby_args << (HOMEBREW_LIBRARY_PATH/"brew.rb").resolved_path.to_s
|
ruby_args << (HOMEBREW_LIBRARY_PATH/"brew.rb").resolved_path.to_s
|
||||||
|
|
||||||
Bundler.with_original_env do
|
stdout, stderr, status = Open3.capture3(env, RUBY_PATH, *ruby_args, *args)
|
||||||
stdout, stderr, status = Open3.capture3(env, RUBY_PATH, *ruby_args, *args)
|
$stdout.print stdout
|
||||||
$stdout.print stdout
|
$stderr.print stderr
|
||||||
$stderr.print stderr
|
status
|
||||||
status
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def setup_test_formula(name, content = nil)
|
def setup_test_formula(name, content = nil)
|
||||||
|
|||||||
@ -2,8 +2,6 @@ unless ENV["HOMEBREW_BREW_FILE"]
|
|||||||
raise "HOMEBREW_BREW_FILE was not exported! Please call bin/brew directly!"
|
raise "HOMEBREW_BREW_FILE was not exported! Please call bin/brew directly!"
|
||||||
end
|
end
|
||||||
|
|
||||||
require "constants"
|
|
||||||
|
|
||||||
require "tmpdir"
|
require "tmpdir"
|
||||||
require "pathname"
|
require "pathname"
|
||||||
|
|
||||||
|
|||||||
@ -221,6 +221,38 @@ module Homebrew
|
|||||||
EOS
|
EOS
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def run_bundler_if_needed!
|
||||||
|
return unless Pathname.glob("#{HOMEBREW_GEM_HOME}/bin/*").empty?
|
||||||
|
|
||||||
|
if Gem::Specification.find_all_by_name("bundler").empty?
|
||||||
|
ohai "Installing Bundler..."
|
||||||
|
|
||||||
|
# Do `gem install [...]` without having to spawn a separate process or
|
||||||
|
# having to find the right `gem` binary for the running Ruby interpreter.
|
||||||
|
require "rubygems/commands/install_command"
|
||||||
|
install_cmd = Gem::Commands::InstallCommand.new
|
||||||
|
install_cmd.handle_options(%w[--no-ri --no-rdoc bundler])
|
||||||
|
exit_code = 1 # Should not matter as `install_cmd.execute` always throws.
|
||||||
|
begin
|
||||||
|
install_cmd.execute
|
||||||
|
rescue Gem::SystemExitException => e
|
||||||
|
exit_code = e.exit_code
|
||||||
|
end
|
||||||
|
odie "Failed to install Bundler!" if exit_code.nonzero?
|
||||||
|
end
|
||||||
|
|
||||||
|
HOMEBREW_REPOSITORY.cd do
|
||||||
|
unless quiet_system("bundle", "check")
|
||||||
|
ohai "Installing RubyGems..."
|
||||||
|
success = system "bundle", "install",
|
||||||
|
"--path", "Library/Homebrew/vendor",
|
||||||
|
"--standalone",
|
||||||
|
"--jobs", "3"
|
||||||
|
odie "Failed to install RubyGems!" unless success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# Hash of Module => Set(method_names)
|
# Hash of Module => Set(method_names)
|
||||||
@injected_dump_stat_modules = {}
|
@injected_dump_stat_modules = {}
|
||||||
|
|
||||||
|
|||||||
54
Library/Homebrew/vendor/README.md
vendored
54
Library/Homebrew/vendor/README.md
vendored
@ -1,54 +0,0 @@
|
|||||||
Vendored Dependencies
|
|
||||||
=====================
|
|
||||||
|
|
||||||
* [plist](https://github.com/patsplat/plist), version 3.3.0
|
|
||||||
|
|
||||||
* [ruby-macho](https://github.com/Homebrew/ruby-macho), version 1.1.0
|
|
||||||
|
|
||||||
## Licenses:
|
|
||||||
|
|
||||||
### plist
|
|
||||||
|
|
||||||
> Copyright (c) 2006-2010, Ben Bleything and Patrick May
|
|
||||||
>
|
|
||||||
> Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
> a copy of this software and associated documentation files (the
|
|
||||||
> "Software"), to deal in the Software without restriction, including
|
|
||||||
> without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
> distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
> permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
> the following conditions:
|
|
||||||
>
|
|
||||||
> The above copyright notice and this permission notice shall be included
|
|
||||||
> in all copies or substantial portions of the Software.
|
|
||||||
>
|
|
||||||
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
|
|
||||||
> KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
|
||||||
> WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
||||||
> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
||||||
> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
||||||
> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
### ruby-macho
|
|
||||||
|
|
||||||
> The MIT License
|
|
||||||
> Copyright (c) 2015, 2016, 2017 William Woodruff <william @ tuffbizz.com>
|
|
||||||
>
|
|
||||||
> Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
> of this software and associated documentation files (the "Software"), to deal
|
|
||||||
> in the Software without restriction, including without limitation the rights
|
|
||||||
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
> copies of the Software, and to permit persons to whom the Software is
|
|
||||||
> furnished to do so, subject to the following conditions:
|
|
||||||
>
|
|
||||||
> The above copyright notice and this permission notice shall be included in
|
|
||||||
> all copies or substantial portions of the Software.
|
|
||||||
>
|
|
||||||
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
> THE SOFTWARE.
|
|
||||||
42
Library/Homebrew/vendor/bundler/setup.rb
vendored
Normal file
42
Library/Homebrew/vendor/bundler/setup.rb
vendored
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
require 'rbconfig'
|
||||||
|
# ruby 1.8.7 doesn't define RUBY_ENGINE
|
||||||
|
ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : 'ruby'
|
||||||
|
ruby_version = RbConfig::CONFIG["ruby_version"]
|
||||||
|
path = File.expand_path('..', __FILE__)
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rake-12.0.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/ast-2.3.0/lib"
|
||||||
|
$:.unshift "#{path}/"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/extensions/universal-darwin-16/2.0.0/json-2.1.0"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/json-2.1.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/docile-1.1.5/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/simplecov-html-0.10.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/simplecov-0.14.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/url-0.3.2/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/codecov-0.1.10/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/diff-lcs-1.3/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/extensions/universal-darwin-16/2.0.0/hpricot-0.8.6"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/hpricot-0.8.6/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/mustache-1.0.5/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/parallel-1.11.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/parallel_tests-2.14.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/parser-2.4.0.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/plist-3.3.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/powerpack-0.1.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/public_suffix-2.0.5/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/extensions/universal-darwin-16/2.0.0/rainbow-2.2.2"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rainbow-2.2.2/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/extensions/universal-darwin-16/2.0.0/rdiscount-2.2.0.1"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rdiscount-2.2.0.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/ronn-0.7.3/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-support-3.6.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-core-3.6.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-expectations-3.6.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-mocks-3.6.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-3.6.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-its-1.2.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rspec-wait-0.0.9/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/ruby-progressbar-1.8.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/unicode-display_width-1.2.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rubocop-0.47.1/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/rubocop-cask-0.12.0/lib"
|
||||||
|
$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/ruby-macho-1.1.0/lib"
|
||||||
20
Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/LICENSE.txt
vendored
Normal file
20
Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/LICENSE.txt
vendored
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Copyright (c) 2006-2010, Ben Bleything and Patrick May
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
|
||||||
|
KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||||||
|
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
6
Library/Homebrew/vendor/plist/plist.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist.rb
vendored
Executable file → Normal file
6
Library/Homebrew/vendor/plist/plist.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist.rb
vendored
Executable file → Normal file
@ -13,9 +13,9 @@ require 'base64'
|
|||||||
require 'cgi'
|
require 'cgi'
|
||||||
require 'stringio'
|
require 'stringio'
|
||||||
|
|
||||||
require_relative 'plist/generator'
|
require 'plist/generator'
|
||||||
require_relative 'plist/parser'
|
require 'plist/parser'
|
||||||
require_relative 'plist/version'
|
require 'plist/version'
|
||||||
|
|
||||||
module Plist
|
module Plist
|
||||||
end
|
end
|
||||||
0
Library/Homebrew/vendor/plist/plist/generator.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist/generator.rb
vendored
Executable file → Normal file
0
Library/Homebrew/vendor/plist/plist/generator.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist/generator.rb
vendored
Executable file → Normal file
0
Library/Homebrew/vendor/plist/plist/version.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist/version.rb
vendored
Executable file → Normal file
0
Library/Homebrew/vendor/plist/plist/version.rb → Library/Homebrew/vendor/ruby/2.0.0/gems/plist-3.3.0/lib/plist/version.rb
vendored
Executable file → Normal file
21
Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-1.1.0/LICENSE
vendored
Normal file
21
Library/Homebrew/vendor/ruby/2.0.0/gems/ruby-macho-1.1.0/LICENSE
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015, 2016 William Woodruff <william @ tuffbizz.com>
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
Loading…
x
Reference in New Issue
Block a user