Disable/delete/add more deprecations
Move various `odeprecated` to `odisabled` and delete uses of `odisabled`.
This commit is contained in:
parent
b584e24ad1
commit
cffa5a9864
@ -1,67 +0,0 @@
|
|||||||
#: @hide_from_man_page
|
|
||||||
#: * `linkapps` [`--local`] [<formulae>]:
|
|
||||||
#: Find installed formulae that provide `.app`-style macOS apps and symlink them
|
|
||||||
#: into `/Applications`, allowing for easier access (deprecated).
|
|
||||||
#:
|
|
||||||
#: Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
|
|
||||||
#: either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
|
|
||||||
#: bundles that can be relocated. Instead, please consider using `brew cask` and
|
|
||||||
#: migrate formulae using `.app`s to casks.
|
|
||||||
|
|
||||||
require "keg"
|
|
||||||
require "formula"
|
|
||||||
|
|
||||||
module Homebrew
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def linkapps
|
|
||||||
odeprecated "'brew linkapps'"
|
|
||||||
|
|
||||||
target_dir = linkapps_target(local: ARGV.include?("--local"))
|
|
||||||
|
|
||||||
unless target_dir.directory?
|
|
||||||
opoo "#{target_dir} does not exist, stopping."
|
|
||||||
puts "Run `mkdir #{target_dir}` first."
|
|
||||||
exit 1
|
|
||||||
end
|
|
||||||
|
|
||||||
if ARGV.named.empty?
|
|
||||||
kegs = Formula.racks.map do |rack|
|
|
||||||
keg = rack.subdirs.map { |d| Keg.new(d) }
|
|
||||||
next if keg.empty?
|
|
||||||
keg.detect(&:linked?) || keg.max_by(&:version)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
kegs = ARGV.kegs
|
|
||||||
end
|
|
||||||
|
|
||||||
link_count = 0
|
|
||||||
kegs.each do |keg|
|
|
||||||
keg.apps.each do |app|
|
|
||||||
puts "Linking: #{app}"
|
|
||||||
target_app = target_dir/app.basename
|
|
||||||
|
|
||||||
if target_app.exist? && !target_app.symlink?
|
|
||||||
onoe "#{target_app} already exists, skipping."
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
# We prefer system `ln` over `FileUtils.ln_sf` because the latter seems
|
|
||||||
# to have weird failure conditions (that were observed in the past).
|
|
||||||
system "ln", "-sf", app, target_dir
|
|
||||||
link_count += 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if link_count.zero?
|
|
||||||
puts "No apps linked to #{target_dir}" if ARGV.verbose?
|
|
||||||
else
|
|
||||||
puts "Linked #{Formatter.pluralize(link_count, "app")} to #{target_dir}"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def linkapps_target(opts = {})
|
|
||||||
local = opts.fetch(:local, false)
|
|
||||||
Pathname.new(local ? "~/Applications" : "/Applications").expand_path
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,15 +1,12 @@
|
|||||||
#: * `prune` [`--dry-run`]:
|
#: * `prune` [`--dry-run`]:
|
||||||
#: Remove dead symlinks from the Homebrew prefix. This is generally not
|
#: Remove dead symlinks from the Homebrew prefix. This is generally not
|
||||||
#: needed, but can be useful when doing DIY installations. Also remove broken
|
#: needed, but can be useful when doing DIY installations.
|
||||||
#: app symlinks from `/Applications` and `~/Applications` that were previously
|
|
||||||
#: created by `brew linkapps`.
|
|
||||||
#:
|
#:
|
||||||
#: If `--dry-run` or `-n` is passed, show what would be removed, but do not
|
#: If `--dry-run` or `-n` is passed, show what would be removed, but do not
|
||||||
#: actually remove anything.
|
#: actually remove anything.
|
||||||
|
|
||||||
require "keg"
|
require "keg"
|
||||||
require "cmd/tap"
|
require "cmd/tap"
|
||||||
require "cmd/unlinkapps"
|
|
||||||
|
|
||||||
module Homebrew
|
module Homebrew
|
||||||
module_function
|
module_function
|
||||||
@ -49,7 +46,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
unless ARGV.dry_run?
|
return if ARGV.dry_run?
|
||||||
|
|
||||||
if ObserverPathnameExtension.total.zero?
|
if ObserverPathnameExtension.total.zero?
|
||||||
puts "Nothing pruned" if ARGV.verbose?
|
puts "Nothing pruned" if ARGV.verbose?
|
||||||
else
|
else
|
||||||
@ -59,7 +57,4 @@ module Homebrew
|
|||||||
puts "from #{HOMEBREW_PREFIX}"
|
puts "from #{HOMEBREW_PREFIX}"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
unlinkapps_prune(dry_run: ARGV.dry_run?, quiet: true)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,79 +0,0 @@
|
|||||||
#: @hide_from_man_page
|
|
||||||
#: * `unlinkapps` [`--local`] [`--dry-run`] [<formulae>]:
|
|
||||||
#: Remove symlinks created by `brew linkapps` from `/Applications` (deprecated).
|
|
||||||
#:
|
|
||||||
#: Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
|
|
||||||
#: either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
|
|
||||||
#: bundles that can be relocated. Instead, please consider using `brew cask` and
|
|
||||||
#: migrate formulae using `.app`s to casks.
|
|
||||||
|
|
||||||
require "cmd/linkapps"
|
|
||||||
|
|
||||||
module Homebrew
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def unlinkapps
|
|
||||||
odeprecated "'brew unlinkapps'"
|
|
||||||
|
|
||||||
target_dir = linkapps_target(local: ARGV.include?("--local"))
|
|
||||||
|
|
||||||
unlinkapps_from_dir(target_dir, dry_run: ARGV.dry_run?)
|
|
||||||
end
|
|
||||||
|
|
||||||
def unlinkapps_prune(opts = {})
|
|
||||||
opts = opts.merge(prune: true)
|
|
||||||
unlinkapps_from_dir(linkapps_target(local: false), opts)
|
|
||||||
unlinkapps_from_dir(linkapps_target(local: true), opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
def unlinkapps_from_dir(target_dir, opts = {})
|
|
||||||
return unless target_dir.directory?
|
|
||||||
dry_run = opts.fetch(:dry_run, false)
|
|
||||||
quiet = opts.fetch(:quiet, false)
|
|
||||||
|
|
||||||
apps = Pathname.glob("#{target_dir}/*.app").select do |app|
|
|
||||||
unlinkapps_unlink?(app, opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
ObserverPathnameExtension.reset_counts!
|
|
||||||
|
|
||||||
app_kind = opts.fetch(:prune, false) ? " (broken link)" : ""
|
|
||||||
apps.each do |app|
|
|
||||||
app.extend(ObserverPathnameExtension)
|
|
||||||
if dry_run
|
|
||||||
puts "Would unlink#{app_kind}: #{app}"
|
|
||||||
else
|
|
||||||
puts "Unlinking#{app_kind}: #{app}" unless quiet
|
|
||||||
app.unlink
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return if dry_run
|
|
||||||
|
|
||||||
if ObserverPathnameExtension.total.zero?
|
|
||||||
puts "No apps unlinked from #{target_dir}" if ARGV.verbose?
|
|
||||||
else
|
|
||||||
n = ObserverPathnameExtension.total
|
|
||||||
puts "Unlinked #{Formatter.pluralize(n, "app")} from #{target_dir}"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
UNLINKAPPS_PREFIXES = %W[
|
|
||||||
#{HOMEBREW_CELLAR}/
|
|
||||||
#{HOMEBREW_PREFIX}/opt/
|
|
||||||
].freeze
|
|
||||||
|
|
||||||
def unlinkapps_unlink?(target_app, opts = {})
|
|
||||||
# Skip non-symlinks and symlinks that don't point into the Homebrew prefix.
|
|
||||||
app = target_app.readlink.to_s if target_app.symlink?
|
|
||||||
return false unless app&.start_with?(*UNLINKAPPS_PREFIXES)
|
|
||||||
|
|
||||||
if opts.fetch(:prune, false)
|
|
||||||
!File.exist?(app) # Remove only broken symlinks in prune mode.
|
|
||||||
elsif ARGV.named.empty?
|
|
||||||
true
|
|
||||||
else
|
|
||||||
ARGV.kegs.any? { |keg| app.start_with?("#{keg}/", "#{keg.opt_record}/") }
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -29,7 +29,7 @@ module Homebrew
|
|||||||
|
|
||||||
Homebrew.perform_preinstall_checks
|
Homebrew.perform_preinstall_checks
|
||||||
|
|
||||||
odeprecated "'brew upgrade --all'", "'brew upgrade'" if ARGV.include?("--all")
|
odisabled "'brew upgrade --all'", "'brew upgrade'" if ARGV.include?("--all")
|
||||||
|
|
||||||
if ARGV.named.empty?
|
if ARGV.named.empty?
|
||||||
outdated = Formula.installed.select do |f|
|
outdated = Formula.installed.select do |f|
|
||||||
|
|||||||
@ -54,48 +54,19 @@ module Homebrew
|
|||||||
used_formulae.all? do |ff|
|
used_formulae.all? do |ff|
|
||||||
begin
|
begin
|
||||||
deps = f.runtime_dependencies if only_installed_arg
|
deps = f.runtime_dependencies if only_installed_arg
|
||||||
if recursive
|
deps ||= if recursive
|
||||||
deps ||= recursive_includes(Dependency, f, includes, ignores)
|
recursive_includes(Dependency, f, includes, ignores)
|
||||||
|
|
||||||
dep_formulae = deps.flat_map do |dep|
|
|
||||||
begin
|
|
||||||
dep.to_formula
|
|
||||||
rescue
|
|
||||||
[]
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
reqs_by_formula = ([f] + dep_formulae).flat_map do |formula|
|
|
||||||
formula.requirements.map { |req| [formula, req] }
|
|
||||||
end
|
|
||||||
|
|
||||||
reqs_by_formula.reject! do |dependent, req|
|
|
||||||
if req.recommended?
|
|
||||||
ignores.include?("recommended?") || dependent.build.without?(req)
|
|
||||||
elsif req.test?
|
|
||||||
!includes.include?("test?")
|
|
||||||
elsif req.optional?
|
|
||||||
!includes.include?("optional?") && !dependent.build.with?(req)
|
|
||||||
elsif req.build?
|
|
||||||
!includes.include?("build?")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
reqs = reqs_by_formula.map(&:last)
|
|
||||||
else
|
else
|
||||||
deps ||= reject_ignores(f.deps, ignores, includes)
|
reject_ignores(f.deps, ignores, includes)
|
||||||
reqs = reject_ignores(f.requirements, ignores, includes)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
next true if deps.any? do |dep|
|
deps.any? do |dep|
|
||||||
begin
|
begin
|
||||||
dep.to_formula.full_name == ff.full_name
|
dep.to_formula.full_name == ff.full_name
|
||||||
rescue
|
rescue
|
||||||
dep.name == ff.name
|
dep.name == ff.name
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
reqs.any? { |req| req.name == ff.name }
|
|
||||||
rescue FormulaUnavailableError
|
rescue FormulaUnavailableError
|
||||||
# Silently ignore this case as we don't care about things used in
|
# Silently ignore this case as we don't care about things used in
|
||||||
# taps that aren't currently tapped.
|
# taps that aren't currently tapped.
|
||||||
|
|||||||
@ -1,32 +1,10 @@
|
|||||||
require "compat/fails_with_llvm"
|
|
||||||
require "compat/tap"
|
|
||||||
require "compat/hbc"
|
require "compat/hbc"
|
||||||
require "compat/formula"
|
require "compat/formula"
|
||||||
require "compat/formula_specialties"
|
|
||||||
require "compat/formula_support"
|
require "compat/formula_support"
|
||||||
require "compat/global"
|
|
||||||
require "compat/hardware"
|
|
||||||
require "compat/macos"
|
|
||||||
require "compat/md5"
|
|
||||||
require "compat/sha1"
|
|
||||||
require "compat/requirements"
|
require "compat/requirements"
|
||||||
require "compat/version"
|
|
||||||
require "compat/download_strategy"
|
require "compat/download_strategy"
|
||||||
require "compat/keg"
|
|
||||||
require "compat/pathname"
|
|
||||||
require "compat/dependency_collector"
|
require "compat/dependency_collector"
|
||||||
require "compat/language/haskell"
|
|
||||||
require "compat/xcode"
|
|
||||||
require "compat/software_spec"
|
|
||||||
require "compat/utils"
|
|
||||||
require "compat/json"
|
|
||||||
require "compat/ARGV"
|
|
||||||
require "compat/build_options"
|
|
||||||
require "compat/tab"
|
|
||||||
require "compat/ENV/shared"
|
require "compat/ENV/shared"
|
||||||
require "compat/ENV/std"
|
|
||||||
require "compat/ENV/super"
|
|
||||||
require "compat/utils/shell"
|
|
||||||
require "compat/extend/string"
|
require "compat/extend/string"
|
||||||
require "compat/gpg"
|
require "compat/gpg"
|
||||||
require "compat/dependable"
|
require "compat/dependable"
|
||||||
|
|||||||
@ -1,5 +0,0 @@
|
|||||||
module HomebrewArgvExtension
|
|
||||||
def build_32_bit?
|
|
||||||
odisabled "ARGV.build_32_bit?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,10 +1,9 @@
|
|||||||
module SharedEnvExtension
|
module SharedEnvExtension
|
||||||
def j1
|
def j1
|
||||||
odeprecated "ENV.j1", "ENV.deparallelize"
|
odisabled "ENV.j1", "ENV.deparallelize"
|
||||||
deparallelize
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def java_cache
|
def java_cache
|
||||||
odeprecated "ENV.java_cache"
|
odisabled "ENV.java_cache"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,25 +0,0 @@
|
|||||||
module Stdenv
|
|
||||||
def fast
|
|
||||||
odisabled "ENV.fast"
|
|
||||||
end
|
|
||||||
|
|
||||||
def O4
|
|
||||||
odisabled "ENV.O4"
|
|
||||||
end
|
|
||||||
|
|
||||||
def Og
|
|
||||||
odisabled "ENV.Og"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_4_0_1
|
|
||||||
odisabled "ENV.gcc_4_0_1", "ENV.gcc_4_0"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc
|
|
||||||
odisabled "ENV.gcc", "ENV.gcc_4_2"
|
|
||||||
end
|
|
||||||
|
|
||||||
def libpng
|
|
||||||
odisabled "ENV.libpng", "ENV.x11"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
module Superenv
|
|
||||||
def fast
|
|
||||||
odisabled "ENV.fast"
|
|
||||||
end
|
|
||||||
|
|
||||||
def O4
|
|
||||||
odisabled "ENV.O4"
|
|
||||||
end
|
|
||||||
|
|
||||||
def Og
|
|
||||||
odisabled "ENV.Og"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_4_0_1
|
|
||||||
odisabled "ENV.gcc_4_0_1", "ENV.gcc_4_0"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc
|
|
||||||
odisabled "ENV.gcc", "ENV.gcc_4_2"
|
|
||||||
end
|
|
||||||
|
|
||||||
def libxml2
|
|
||||||
odisabled "ENV.libxml2"
|
|
||||||
end
|
|
||||||
|
|
||||||
def minimal_optimization
|
|
||||||
odisabled "ENV.minimal_optimization"
|
|
||||||
end
|
|
||||||
|
|
||||||
def no_optimization
|
|
||||||
odisabled "ENV.no_optimization"
|
|
||||||
end
|
|
||||||
|
|
||||||
def enable_warnings
|
|
||||||
odisabled "ENV.enable_warnings"
|
|
||||||
end
|
|
||||||
|
|
||||||
def macosxsdk
|
|
||||||
odisabled "ENV.macosxsdk"
|
|
||||||
end
|
|
||||||
|
|
||||||
def remove_macosxsdk
|
|
||||||
odisabled "ENV.remove_macosxsdk"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
class BuildOptions
|
|
||||||
def build_32_bit?
|
|
||||||
odisabled "build.build_32_bit?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def build_bottle?
|
|
||||||
odisabled "build.build_bottle?", "build.bottle?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,5 +1,6 @@
|
|||||||
module Dependable
|
module Dependable
|
||||||
def run?
|
def run?
|
||||||
|
odeprecated "Dependable#run?"
|
||||||
tags.include? :run
|
tags.include? :run
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -9,56 +9,42 @@ class DependencyCollector
|
|||||||
|
|
||||||
def parse_string_spec(spec, tags)
|
def parse_string_spec(spec, tags)
|
||||||
if (tag = tags.first) && LANGUAGE_MODULES.include?(tag)
|
if (tag = tags.first) && LANGUAGE_MODULES.include?(tag)
|
||||||
odeprecated "'depends_on ... => #{tag.inspect}'"
|
odisabled "'depends_on ... => #{tag.inspect}'"
|
||||||
LanguageModuleRequirement.new(tag, spec, tags[1])
|
|
||||||
else
|
|
||||||
super
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if tags.include?(:run)
|
||||||
|
odeprecated "'depends_on ... => :run'"
|
||||||
|
end
|
||||||
|
|
||||||
|
super
|
||||||
end
|
end
|
||||||
|
|
||||||
def parse_symbol_spec(spec, tags)
|
def parse_symbol_spec(spec, tags)
|
||||||
case spec
|
case spec
|
||||||
when :clt
|
when :clt
|
||||||
odeprecated "'depends_on :clt'"
|
odisabled "'depends_on :clt'"
|
||||||
when :tex
|
when :tex
|
||||||
odeprecated "'depends_on :tex'"
|
odisabled "'depends_on :tex'"
|
||||||
TeXRequirement.new(tags)
|
|
||||||
when :autoconf, :automake, :bsdmake, :libtool
|
|
||||||
output_deprecation(spec)
|
|
||||||
autotools_dep(spec, tags)
|
|
||||||
when :cairo, :fontconfig, :freetype, :libpng, :pixman
|
|
||||||
output_deprecation(spec)
|
|
||||||
Dependency.new(spec.to_s, tags)
|
|
||||||
when :ant, :expat
|
|
||||||
output_deprecation(spec)
|
|
||||||
Dependency.new(spec.to_s, tags)
|
|
||||||
when :libltdl
|
when :libltdl
|
||||||
output_deprecation("libtool")
|
output_disabled(spec, "libtool")
|
||||||
Dependency.new("libtool", tags)
|
|
||||||
when :apr
|
when :apr
|
||||||
output_deprecation(spec, "apr-util")
|
output_disabled(spec, "apr-util")
|
||||||
Dependency.new("apr-util", tags)
|
|
||||||
when :fortran
|
when :fortran
|
||||||
output_deprecation(spec, "gcc")
|
output_disabled(spec, "gcc")
|
||||||
Dependency.new("gcc", tags)
|
|
||||||
when :gpg
|
when :gpg
|
||||||
output_deprecation(spec, "gnupg")
|
output_disabled(spec, "gnupg")
|
||||||
Dependency.new("gnupg", tags)
|
|
||||||
when :hg
|
when :hg
|
||||||
output_deprecation(spec, "mercurial")
|
output_disabled(spec, "mercurial")
|
||||||
Dependency.new("mercurial", tags)
|
|
||||||
when :mpi
|
when :mpi
|
||||||
output_deprecation(spec, "open-mpi")
|
output_disabled(spec, "open-mpi")
|
||||||
Dependency.new("open-mpi", tags)
|
|
||||||
when :python, :python2
|
when :python, :python2
|
||||||
output_deprecation(spec, "python@2")
|
output_disabled(spec, "python@2")
|
||||||
Dependency.new("python@2", tags)
|
|
||||||
when :python3
|
when :python3
|
||||||
output_deprecation(spec, "python")
|
output_disabled(spec, "python")
|
||||||
Dependency.new("python", tags)
|
when :ant, :autoconf, :automake, :bsdmake, :cairo, :emacs, :expat,
|
||||||
when :emacs, :mysql, :perl, :postgresql, :rbenv, :ruby
|
:fontconfig, :freetype, :libtool, :libpng, :mysql, :perl, :pixman,
|
||||||
output_deprecation(spec)
|
:postgresql, :rbenv, :ruby
|
||||||
Dependency.new(spec.to_s, tags)
|
output_disabled(spec)
|
||||||
else
|
else
|
||||||
super
|
super
|
||||||
end
|
end
|
||||||
@ -66,13 +52,8 @@ class DependencyCollector
|
|||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def autotools_dep(spec, tags)
|
def output_disabled(dependency, new_dependency = dependency)
|
||||||
tags << :build
|
odisabled "'depends_on :#{dependency}'",
|
||||||
Dependency.new(spec.to_s, tags)
|
|
||||||
end
|
|
||||||
|
|
||||||
def output_deprecation(dependency, new_dependency = dependency)
|
|
||||||
odeprecated "'depends_on :#{dependency}'",
|
|
||||||
"'depends_on \"#{new_dependency}\"'"
|
"'depends_on \"#{new_dependency}\"'"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
class String
|
class String
|
||||||
def undent
|
def undent
|
||||||
odeprecated "<<-EOS.undent", "<<~EOS"
|
odisabled "<<-EOS.undent", "<<~EOS"
|
||||||
gsub(/^[ \t]{#{(slice(/^[ \t]+/) || '').length}}/, "")
|
|
||||||
end
|
end
|
||||||
alias unindent undent
|
alias unindent undent
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +0,0 @@
|
|||||||
class Formula
|
|
||||||
def fails_with_llvm(_msg = nil, _data = nil)
|
|
||||||
odisabled "Formula#fails_with_llvm in install"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.fails_with_llvm(_msg = nil, _data = {})
|
|
||||||
odisabled "Formula.fails_with_llvm"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,74 +1,11 @@
|
|||||||
module FormulaCompat
|
|
||||||
def x11_installed?
|
|
||||||
odisabled "Formula#x11_installed?", "MacOS::X11.installed?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def snow_leopard_64?
|
|
||||||
odisabled "Formula#snow_leopard_64?", "MacOS.prefer_64_bit?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Formula
|
class Formula
|
||||||
include FormulaCompat
|
|
||||||
extend FormulaCompat
|
|
||||||
|
|
||||||
def std_cmake_parameters
|
|
||||||
odisabled "Formula#std_cmake_parameters", "Formula#std_cmake_args"
|
|
||||||
end
|
|
||||||
|
|
||||||
def cxxstdlib_check(_)
|
|
||||||
odisabled "Formula#cxxstdlib_check in install",
|
|
||||||
"Formula.cxxstdlib_check outside install"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.bottle_sha1(*)
|
|
||||||
odisabled "Formula.bottle_sha1"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.all
|
|
||||||
odisabled "Formula.all", "Formula.map"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.canonical_name(_)
|
|
||||||
odisabled "Formula.canonical_name", "Formulary.canonical_name"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.class_s(_)
|
|
||||||
odisabled "Formula.class_s", "Formulary.class_s"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.factory(_)
|
|
||||||
odisabled "Formula.factory", "Formulary.factory"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.require_universal_deps
|
|
||||||
odisabled "Formula.require_universal_deps"
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.path(_)
|
|
||||||
odisabled "Formula.path", "Formulary.core_path"
|
|
||||||
end
|
|
||||||
|
|
||||||
DATA = :DATA
|
|
||||||
|
|
||||||
def patches
|
def patches
|
||||||
# Don't print deprecation warning because this method is inherited
|
# Don't print deprecation warning because this method is inherited
|
||||||
# when used.
|
# when used.
|
||||||
{}
|
{}
|
||||||
end
|
end
|
||||||
|
|
||||||
def python(_options = {}, &_)
|
def rake(*)
|
||||||
odisabled "Formula#python"
|
odisabled "FileUtils#rake", "system \"rake\""
|
||||||
end
|
|
||||||
alias python2 python
|
|
||||||
alias python3 python
|
|
||||||
|
|
||||||
def startup_plist
|
|
||||||
odisabled "Formula#startup_plist", "Formula#plist"
|
|
||||||
end
|
|
||||||
|
|
||||||
def rake(*args)
|
|
||||||
odeprecated "FileUtils#rake", "system \"rake\""
|
|
||||||
system "rake", *args
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,23 +0,0 @@
|
|||||||
class ScriptFileFormula < Formula
|
|
||||||
def install
|
|
||||||
odisabled "ScriptFileFormula#install", "Formula#install"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class GithubGistFormula < ScriptFileFormula
|
|
||||||
def self.url(_val)
|
|
||||||
odisabled "GithubGistFormula.url", "Formula.url"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class AmazonWebServicesFormula < Formula
|
|
||||||
def install
|
|
||||||
odisabled "AmazonWebServicesFormula#install", "Formula#install"
|
|
||||||
end
|
|
||||||
alias standard_install install
|
|
||||||
|
|
||||||
# Use this method to generate standard caveats.
|
|
||||||
def standard_instructions(_, _)
|
|
||||||
odisabled "AmazonWebServicesFormula#standard_instructions", "Formula#caveats"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -5,11 +5,9 @@ class KegOnlyReason
|
|||||||
def to_s
|
def to_s
|
||||||
case @reason
|
case @reason
|
||||||
when :provided_by_osx
|
when :provided_by_osx
|
||||||
odeprecated "keg_only :provided_by_osx", "keg_only :provided_by_macos"
|
odisabled "keg_only :provided_by_osx", "keg_only :provided_by_macos"
|
||||||
@reason = :provided_by_macos
|
|
||||||
when :shadowed_by_osx
|
when :shadowed_by_osx
|
||||||
odeprecated "keg_only :shadowed_by_osx", "keg_only :shadowed_by_macos"
|
odisabled "keg_only :shadowed_by_osx", "keg_only :shadowed_by_macos"
|
||||||
@reason = :shadowed_by_macos
|
|
||||||
end
|
end
|
||||||
|
|
||||||
super
|
super
|
||||||
|
|||||||
@ -1,15 +0,0 @@
|
|||||||
module Homebrew
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def method_missing(method, *args, &block)
|
|
||||||
if instance_methods.include?(method)
|
|
||||||
odisabled "#{self}##{method}", "'module_function' or 'def self.#{method}' to convert it to a class method"
|
|
||||||
end
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def respond_to_missing?(method, include_private = false)
|
|
||||||
return true if method_defined?(method)
|
|
||||||
super(method, include_private)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -3,24 +3,22 @@ module Gpg
|
|||||||
module_function
|
module_function
|
||||||
|
|
||||||
def executable
|
def executable
|
||||||
odeprecated "Gpg.executable", 'which "gpg"'
|
odisabled "Gpg.executable", 'which "gpg"'
|
||||||
which "gpg"
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def available?
|
def available?
|
||||||
odeprecated "Gpg.available?", 'which "gpg"'
|
odisabled "Gpg.available?", 'which "gpg"'
|
||||||
File.executable?(executable.to_s)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def create_test_key(_)
|
def create_test_key(_)
|
||||||
odeprecated "Gpg.create_test_key"
|
odisabled "Gpg.create_test_key"
|
||||||
end
|
end
|
||||||
|
|
||||||
def cleanup_test_processes!
|
def cleanup_test_processes!
|
||||||
odeprecated "Gpg.cleanup_test_processes!"
|
odisabled "Gpg.cleanup_test_processes!"
|
||||||
end
|
end
|
||||||
|
|
||||||
def test(_)
|
def test(_)
|
||||||
odeprecated "Gpg.test"
|
odisabled "Gpg.test"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,35 +0,0 @@
|
|||||||
module Hardware
|
|
||||||
class << self
|
|
||||||
def is_32_bit?
|
|
||||||
odisabled "Hardware.is_32_bit?", "Hardware::CPU.is_32_bit?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def is_64_bit?
|
|
||||||
odisabled "Hardware.is_64_bit?", "Hardware::CPU.is_64_bit?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def bits
|
|
||||||
odisabled "Hardware.bits", "Hardware::CPU.bits"
|
|
||||||
end
|
|
||||||
|
|
||||||
def cpu_type
|
|
||||||
odisabled "Hardware.cpu_type", "Hardware::CPU.type"
|
|
||||||
end
|
|
||||||
|
|
||||||
def cpu_family
|
|
||||||
odisabled "Hardware.cpu_family", "Hardware::CPU.family"
|
|
||||||
end
|
|
||||||
|
|
||||||
def intel_family
|
|
||||||
odisabled "Hardware.intel_family", "Hardware::CPU.family"
|
|
||||||
end
|
|
||||||
|
|
||||||
def ppc_family
|
|
||||||
odisabled "Hardware.ppc_family", "Hardware::CPU.family"
|
|
||||||
end
|
|
||||||
|
|
||||||
def processor_count
|
|
||||||
odisabled "Hardware.processor_count", "Hardware::CPU.cores"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
require "json"
|
|
||||||
|
|
||||||
module Utils
|
|
||||||
module JSON
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def load(_)
|
|
||||||
odisabled "Utils::JSON.load", "JSON.parse"
|
|
||||||
end
|
|
||||||
|
|
||||||
def dump(_)
|
|
||||||
odisabled "Utils::JSON.dump", "JSON.generate"
|
|
||||||
end
|
|
||||||
|
|
||||||
def stringify_keys(_)
|
|
||||||
odisabled "Utils::JSON.stringify_keys"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
class Keg
|
|
||||||
def fname
|
|
||||||
odisabled "Keg#fname", "Keg#name"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
module Language
|
|
||||||
module Haskell
|
|
||||||
module Cabal
|
|
||||||
def cabal_clean_lib
|
|
||||||
odisabled "Language::Haskell::Cabal#cabal_clean_lib"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,124 +0,0 @@
|
|||||||
require "development_tools"
|
|
||||||
|
|
||||||
if OS.mac?
|
|
||||||
MACOS_FULL_VERSION = OS::Mac.full_version.to_s.freeze
|
|
||||||
MACOS_VERSION = OS::Mac.version.to_s.freeze
|
|
||||||
end
|
|
||||||
|
|
||||||
module OS
|
|
||||||
module Mac
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def xcode_folder
|
|
||||||
odisabled "MacOS.xcode_folder", "MacOS::Xcode.folder"
|
|
||||||
end
|
|
||||||
|
|
||||||
def xcode_prefix
|
|
||||||
odisabled "MacOS.xcode_prefix", "MacOS::Xcode.prefix"
|
|
||||||
end
|
|
||||||
|
|
||||||
def xcode_installed?
|
|
||||||
odisabled "MacOS.xcode_installed?", "MacOS::Xcode.installed?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def xcode_version
|
|
||||||
odisabled "MacOS.xcode_version", "MacOS::Xcode.version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def clt_installed?
|
|
||||||
odisabled "MacOS.clt_installed?", "MacOS::CLT.installed?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def clt_version?
|
|
||||||
odisabled "MacOS.clt_version?", "MacOS::CLT.version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def x11_installed?
|
|
||||||
odisabled "MacOS.x11_installed?", "MacOS::X11.installed?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def x11_prefix
|
|
||||||
odisabled "MacOS.x11_prefix", "MacOS::X11.prefix"
|
|
||||||
end
|
|
||||||
|
|
||||||
def leopard?
|
|
||||||
odisabled "MacOS.leopard?", "'MacOS.version == :leopard'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def snow_leopard?
|
|
||||||
odisabled "MacOS.snow_leopard?", "'MacOS.version >= :snow_leopard'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def snow_leopard_or_newer?
|
|
||||||
odisabled "MacOS.snow_leopard_or_newer?", "'MacOS.version >= :snow_leopard'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def lion?
|
|
||||||
odisabled "MacOS.lion?", "'MacOS.version >= :lion'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def lion_or_newer?
|
|
||||||
odisabled "MacOS.lion_or_newer?", "'MacOS.version >= :lion'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def mountain_lion?
|
|
||||||
odisabled "MacOS.mountain_lion?", "'MacOS.version >= :mountain_lion'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def mountain_lion_or_newer?
|
|
||||||
odisabled "MacOS.mountain_lion_or_newer?", "'MacOS.version >= :mountain_lion'"
|
|
||||||
end
|
|
||||||
|
|
||||||
def macports_or_fink_installed?
|
|
||||||
odisabled "MacOS.macports_or_fink_installed?", "!MacOS.macports_or_fink.empty?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def locate(_)
|
|
||||||
odisabled "MacOS.locate", "DevelopmentTools.locate"
|
|
||||||
end
|
|
||||||
|
|
||||||
def default_cc
|
|
||||||
odisabled "MacOS.default_cc", "DevelopmentTools.default_cc"
|
|
||||||
end
|
|
||||||
|
|
||||||
def default_compiler
|
|
||||||
odisabled "MacOS.default_compiler", "DevelopmentTools.default_compiler"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_40_build_version
|
|
||||||
odisabled "MacOS.gcc_40_build_version", "DevelopmentTools.gcc_4_0_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_4_0_build_version
|
|
||||||
odisabled "MacOS.gcc_4_0_build_version", "DevelopmentTools.gcc_4_0_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_42_build_version
|
|
||||||
odisabled "MacOS.gcc_42_build_version", "DevelopmentTools.gcc_4_2_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def gcc_build_version
|
|
||||||
odisabled "MacOS.gcc_build_version", "DevelopmentTools.gcc_4_2_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def llvm_build_version
|
|
||||||
odisabled "MacOS.llvm_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def clang_version
|
|
||||||
odisabled "MacOS.clang_version", "DevelopmentTools.clang_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def clang_build_version
|
|
||||||
odisabled "MacOS.clang_build_version", "DevelopmentTools.clang_build_version"
|
|
||||||
end
|
|
||||||
|
|
||||||
def has_apple_developer_tools?
|
|
||||||
odisabled "MacOS.has_apple_developer_tools?", "DevelopmentTools.installed?"
|
|
||||||
end
|
|
||||||
|
|
||||||
def release
|
|
||||||
odisabled "MacOS.release", "MacOS.version"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
class Formula
|
|
||||||
def self.md5(_val)
|
|
||||||
odisabled "Formula.md5", "Formula.sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class SoftwareSpec
|
|
||||||
def md5(_val)
|
|
||||||
odisabled "SoftwareSpec#md5", "SoftwareSpec#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Resource
|
|
||||||
def md5(_val)
|
|
||||||
odisabled "Resource#md5", "Resource#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Pathname
|
|
||||||
def md5
|
|
||||||
odisabled "Pathname#md5", "Pathname#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
class Pathname
|
|
||||||
def cp(_)
|
|
||||||
odisabled "Pathname#cp", "FileUtils.cp"
|
|
||||||
end
|
|
||||||
|
|
||||||
def chmod_R(_)
|
|
||||||
odisabled "Pathname#chmod_R", "FileUtils.chmod_R"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,123 +1,107 @@
|
|||||||
require "requirements"
|
require "requirements"
|
||||||
require "compat/requirements/language_module_requirement"
|
|
||||||
|
|
||||||
class CVSRequirement < Requirement
|
class CVSRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("CVSRequirement", "'depends_on \"cvs\"'")
|
odisabled("CVSRequirement", "'depends_on \"cvs\"'")
|
||||||
which "cvs"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class EmacsRequirement < Requirement
|
class EmacsRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("EmacsRequirement", "'depends_on \"emacs\"'")
|
odisabled("EmacsRequirement", "'depends_on \"emacs\"'")
|
||||||
which "emacs"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class FortranRequirement < Requirement
|
class FortranRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("FortranRequirement", "'depends_on \"gcc\"'")
|
odisabled("FortranRequirement", "'depends_on \"gcc\"'")
|
||||||
which "gfortran"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class GitRequirement < Requirement
|
class GitRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("GitRequirement", "'depends_on \"git\"'")
|
odisabled("GitRequirement", "'depends_on \"git\"'")
|
||||||
which "git"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class GPG2Requirement < Requirement
|
class GPG2Requirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("GPG2Requirement", "'depends_on \"gnupg\"'")
|
odisabled("GPG2Requirement", "'depends_on \"gnupg\"'")
|
||||||
which "gpg"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class MercurialRequirement < Requirement
|
class MercurialRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("MercurialRequirement", "'depends_on \"mercurial\"'")
|
odisabled("MercurialRequirement", "'depends_on \"mercurial\"'")
|
||||||
which "hg"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class MPIRequirement < Requirement
|
class MPIRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("MPIRequirement", "'depends_on \"open-mpi\"'")
|
odisabled("MPIRequirement", "'depends_on \"open-mpi\"'")
|
||||||
which "mpicc"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class MysqlRequirement < Requirement
|
class MysqlRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("MysqlRequirement", "'depends_on \"mysql\"'")
|
odisabled("MysqlRequirement", "'depends_on \"mysql\"'")
|
||||||
which "mysql_config"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class PerlRequirement < Requirement
|
class PerlRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("PerlRequirement", "'depends_on \"perl\"'")
|
odisabled("PerlRequirement", "'depends_on \"perl\"'")
|
||||||
which "perl"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class PostgresqlRequirement < Requirement
|
class PostgresqlRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("PostgresqlRequirement", "'depends_on \"postgresql\"'")
|
odisabled("PostgresqlRequirement", "'depends_on \"postgresql\"'")
|
||||||
which "pg_config"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class PythonRequirement < Requirement
|
class PythonRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("PythonRequirement", "'depends_on \"python@2\"'")
|
odisabled("PythonRequirement", "'depends_on \"python@2\"'")
|
||||||
which "python2"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class Python3Requirement < Requirement
|
class Python3Requirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("Python3Requirement", "'depends_on \"python\"'")
|
odisabled("Python3Requirement", "'depends_on \"python\"'")
|
||||||
which "python"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class RbenvRequirement < Requirement
|
class RbenvRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("RbenvRequirement", "'depends_on \"rbenv\"'")
|
odisabled("RbenvRequirement", "'depends_on \"rbenv\"'")
|
||||||
which "rbenv"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class RubyRequirement < Requirement
|
class RubyRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("RubyRequirement", "'depends_on \"ruby\"'")
|
odisabled("RubyRequirement", "'depends_on \"ruby\"'")
|
||||||
which "ruby"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class SubversionRequirement < Requirement
|
class SubversionRequirement < Requirement
|
||||||
fatal true
|
fatal true
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("SubversionRequirement", "'depends_on \"subversion\"'")
|
odisabled("SubversionRequirement", "'depends_on \"subversion\"'")
|
||||||
which "svn"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -126,8 +110,7 @@ class TeXRequirement < Requirement
|
|||||||
cask "mactex"
|
cask "mactex"
|
||||||
download "https://www.tug.org/mactex/"
|
download "https://www.tug.org/mactex/"
|
||||||
satisfy do
|
satisfy do
|
||||||
odeprecated("TeXRequirement")
|
odisabled("TeXRequirement")
|
||||||
which("tex") || which("latex")
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@ -1,63 +0,0 @@
|
|||||||
require "requirement"
|
|
||||||
|
|
||||||
class LanguageModuleRequirement < Requirement
|
|
||||||
fatal true
|
|
||||||
|
|
||||||
def initialize(language, module_name, import_name = nil)
|
|
||||||
@language = language
|
|
||||||
@module_name = module_name
|
|
||||||
@import_name = import_name || module_name
|
|
||||||
super([language, module_name, import_name])
|
|
||||||
end
|
|
||||||
|
|
||||||
satisfy(build_env: false) { quiet_system(*the_test) }
|
|
||||||
|
|
||||||
def message
|
|
||||||
s = <<~EOS
|
|
||||||
Unsatisfied dependency: #{@module_name}
|
|
||||||
Homebrew does not provide special #{@language.to_s.capitalize} dependencies; install with:
|
|
||||||
`#{command_line} #{@module_name}`
|
|
||||||
EOS
|
|
||||||
|
|
||||||
unless [:python, :perl, :ruby].include? @language
|
|
||||||
s += <<~EOS
|
|
||||||
You may need to: `brew install #{@language}`
|
|
||||||
|
|
||||||
EOS
|
|
||||||
end
|
|
||||||
|
|
||||||
s
|
|
||||||
end
|
|
||||||
|
|
||||||
def the_test
|
|
||||||
case @language
|
|
||||||
when :lua
|
|
||||||
["/usr/bin/env", "luarocks-5.2", "show", @import_name.to_s]
|
|
||||||
when :lua51
|
|
||||||
["/usr/bin/env", "luarocks-5.1", "show", @import_name.to_s]
|
|
||||||
when :perl
|
|
||||||
["/usr/bin/env", "perl", "-e", "use #{@import_name}"]
|
|
||||||
when :python
|
|
||||||
["/usr/bin/env", "python2", "-c", "import #{@import_name}"]
|
|
||||||
when :python3
|
|
||||||
["/usr/bin/env", "python", "-c", "import #{@import_name}"]
|
|
||||||
when :ruby
|
|
||||||
["/usr/bin/env", "ruby", "-rubygems", "-e", "require '#{@import_name}'"]
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def command_line
|
|
||||||
case @language
|
|
||||||
when :lua then "luarocks-5.2 install"
|
|
||||||
when :lua51 then "luarocks-5.1 install"
|
|
||||||
when :perl then "cpan -i"
|
|
||||||
when :python then "pip3 install"
|
|
||||||
when :python3 then "pip install"
|
|
||||||
when :ruby then "gem install"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def display_s
|
|
||||||
"#{@module_name} (#{@language} module)"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
class Formula
|
|
||||||
def self.sha1(_val)
|
|
||||||
odisabled "Formula.sha1", "Formula.sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class SoftwareSpec
|
|
||||||
def sha1(_val)
|
|
||||||
odisabled "SoftwareSpec#sha1", "SoftwareSpec#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Resource
|
|
||||||
def sha1(_val)
|
|
||||||
odisabled "Resource#sha1", "Resource#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class BottleSpecification
|
|
||||||
def sha1(_val)
|
|
||||||
odisabled "BottleSpecification#sha1", "BottleSpecification#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Pathname
|
|
||||||
def sha1
|
|
||||||
odisabled "Pathname#sha1", "Pathname#sha256"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
class BottleSpecification
|
|
||||||
def revision(*)
|
|
||||||
odisabled "BottleSpecification.revision", "BottleSpecification.rebuild"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
class Tab < OpenStruct
|
|
||||||
def build_32_bit?
|
|
||||||
odisabled "Tab.build_32_bit?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
|
|
||||||
class Tap
|
|
||||||
def core_formula_repository?
|
|
||||||
odisabled "Tap#core_formula_repository?", "Tap#core_tap?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
module Tty
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def white
|
|
||||||
odisabled "Tty.white", "Tty.reset.bold"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def puts_columns(_)
|
|
||||||
odisabled "puts_columns", "puts Formatter.columns"
|
|
||||||
end
|
|
||||||
|
|
||||||
def plural(_, _)
|
|
||||||
odisabled "#plural", "Formatter.pluralize"
|
|
||||||
end
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
module Utils
|
|
||||||
module Shell
|
|
||||||
def self.shell_profile
|
|
||||||
odisabled "Utils::Shell.shell_profile", "Utils::Shell.profile"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
class Version
|
|
||||||
def slice(*)
|
|
||||||
odisabled "Version#slice", "Version#to_s.slice"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
module OS
|
|
||||||
module Mac
|
|
||||||
module Xcode
|
|
||||||
module_function
|
|
||||||
|
|
||||||
def provides_autotools?
|
|
||||||
odisabled "OS::Mac::Xcode.provides_autotools?"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -366,7 +366,7 @@ class Pathname
|
|||||||
unless method_defined?(:/)
|
unless method_defined?(:/)
|
||||||
def /(other)
|
def /(other)
|
||||||
if !other.respond_to?(:to_str) && !other.respond_to?(:to_path)
|
if !other.respond_to?(:to_str) && !other.respond_to?(:to_path)
|
||||||
odeprecated "Pathname#/ with #{other.class}", "a String or a Pathname"
|
odisabled "Pathname#/ with #{other.class}", "a String or a Pathname"
|
||||||
end
|
end
|
||||||
join(other.to_s)
|
join(other.to_s)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -2348,7 +2348,7 @@ class Formula
|
|||||||
# version '4.8.1'
|
# version '4.8.1'
|
||||||
# end</pre>
|
# end</pre>
|
||||||
def fails_with(compiler, &block)
|
def fails_with(compiler, &block)
|
||||||
odeprecated "fails_with :llvm" if compiler == :llvm
|
odisabled "fails_with :llvm" if compiler == :llvm
|
||||||
specs.each { |spec| spec.fails_with(compiler, &block) }
|
specs.each { |spec| spec.fails_with(compiler, &block) }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@ -140,7 +140,7 @@ class Requirement
|
|||||||
attr_rw :fatal, :cask, :download
|
attr_rw :fatal, :cask, :download
|
||||||
|
|
||||||
def default_formula(_val = nil)
|
def default_formula(_val = nil)
|
||||||
odeprecated "Requirement.default_formula"
|
odisabled "Requirement.default_formula"
|
||||||
end
|
end
|
||||||
|
|
||||||
def satisfy(options = nil, &block)
|
def satisfy(options = nil, &block)
|
||||||
|
|||||||
@ -128,9 +128,9 @@ class SoftwareSpec
|
|||||||
def option(name, description = "")
|
def option(name, description = "")
|
||||||
opt = PREDEFINED_OPTIONS.fetch(name) do
|
opt = PREDEFINED_OPTIONS.fetch(name) do
|
||||||
if name.is_a?(Symbol)
|
if name.is_a?(Symbol)
|
||||||
odeprecated "passing arbitrary symbols (i.e. #{name.inspect}) to `option`"
|
odisabled "passing arbitrary symbols (i.e. #{name.inspect}) to `option`"
|
||||||
name = name.to_s
|
|
||||||
end
|
end
|
||||||
|
|
||||||
unless name.is_a?(String)
|
unless name.is_a?(String)
|
||||||
raise ArgumentError, "option name must be string or symbol; got a #{name.class}: #{name}"
|
raise ArgumentError, "option name must be string or symbol; got a #{name.class}: #{name}"
|
||||||
end
|
end
|
||||||
@ -205,7 +205,7 @@ class SoftwareSpec
|
|||||||
end
|
end
|
||||||
|
|
||||||
def fails_with(compiler, &block)
|
def fails_with(compiler, &block)
|
||||||
odeprecated "fails_with :llvm" if compiler == :llvm
|
odisabled "fails_with :llvm" if compiler == :llvm
|
||||||
compiler_failures << CompilerFailure.create(compiler, &block)
|
compiler_failures << CompilerFailure.create(compiler, &block)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@ -1,22 +0,0 @@
|
|||||||
describe "brew linkapps", :integration_test do
|
|
||||||
let(:home_dir) { mktmpdir }
|
|
||||||
let(:apps_dir) { home_dir/"Applications" }
|
|
||||||
|
|
||||||
it "symlinks applications" do
|
|
||||||
apps_dir.mkpath
|
|
||||||
|
|
||||||
setup_test_formula "testball"
|
|
||||||
|
|
||||||
source_app = HOMEBREW_CELLAR/"testball/0.1/TestBall.app"
|
|
||||||
source_app.mkpath
|
|
||||||
|
|
||||||
ENV.delete "HOMEBREW_DEVELOPER"
|
|
||||||
|
|
||||||
expect { brew "linkapps", "--local", "HOME" => home_dir }
|
|
||||||
.to output(/Linking: #{Regexp.escape(source_app)}/).to_stdout
|
|
||||||
.and output(/'brew linkapps' is deprecated/).to_stderr
|
|
||||||
.and be_a_success
|
|
||||||
|
|
||||||
expect(apps_dir/"TestBall.app").to be_a_symlink
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
describe "brew unlinkapps", :integration_test do
|
|
||||||
let(:home_dir) { mktmpdir }
|
|
||||||
let(:apps_dir) { home_dir/"Applications" }
|
|
||||||
|
|
||||||
it "unlinks symlinked applications" do
|
|
||||||
apps_dir.mkpath
|
|
||||||
|
|
||||||
setup_test_formula "testball"
|
|
||||||
|
|
||||||
source_app = HOMEBREW_CELLAR/"testball/0.1/TestBall.app"
|
|
||||||
source_app.mkpath
|
|
||||||
|
|
||||||
FileUtils.ln_s source_app, apps_dir/"TestBall.app"
|
|
||||||
|
|
||||||
ENV.delete "HOMEBREW_DEVELOPER"
|
|
||||||
|
|
||||||
expect { brew "unlinkapps", "--local", "HOME" => home_dir }
|
|
||||||
.to output(%r{Unlinking: #{Regexp.escape(apps_dir)}/TestBall.app}).to_stdout
|
|
||||||
.and output(/'brew unlinkapps' is deprecated/).to_stderr
|
|
||||||
.and be_a_success
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,46 +0,0 @@
|
|||||||
require "compat/requirements/language_module_requirement"
|
|
||||||
|
|
||||||
describe LanguageModuleRequirement, :needs_compat do
|
|
||||||
specify "unique dependencies are not equal" do
|
|
||||||
x = described_class.new(:node, "less")
|
|
||||||
y = described_class.new(:node, "coffee-script")
|
|
||||||
expect(x).not_to eq(y)
|
|
||||||
expect(x.hash).not_to eq(y.hash)
|
|
||||||
end
|
|
||||||
|
|
||||||
context "when module and import name differ" do
|
|
||||||
subject { described_class.new(:python, mod_name, import_name) }
|
|
||||||
|
|
||||||
let(:mod_name) { "foo" }
|
|
||||||
let(:import_name) { "bar" }
|
|
||||||
|
|
||||||
its(:message) { is_expected.to include(mod_name) }
|
|
||||||
its(:the_test) { is_expected.to include("import #{import_name}") }
|
|
||||||
end
|
|
||||||
|
|
||||||
context "when the language is Perl" do
|
|
||||||
it "does not satisfy invalid dependencies" do
|
|
||||||
expect(described_class.new(:perl, "notapackage")).not_to be_satisfied
|
|
||||||
end
|
|
||||||
|
|
||||||
it "satisfies valid dependencies" do
|
|
||||||
expect(described_class.new(:perl, "Env")).to be_satisfied
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "when the language is Python", :needs_python do
|
|
||||||
it "does not satisfy invalid dependencies" do
|
|
||||||
expect(described_class.new(:python, "notapackage")).not_to be_satisfied
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "when the language is Ruby" do
|
|
||||||
it "does not satisfy invalid dependencies" do
|
|
||||||
expect(described_class.new(:ruby, "notapackage")).not_to be_satisfied
|
|
||||||
end
|
|
||||||
|
|
||||||
it "satisfies valid dependencies" do
|
|
||||||
expect(described_class.new(:ruby, "date")).to be_satisfied
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -378,9 +378,7 @@ With `--verbose` or `-v`, many commands print extra debugging information. Note
|
|||||||
|
|
||||||
* `prune` [`--dry-run`]:
|
* `prune` [`--dry-run`]:
|
||||||
Remove dead symlinks from the Homebrew prefix. This is generally not
|
Remove dead symlinks from the Homebrew prefix. This is generally not
|
||||||
needed, but can be useful when doing DIY installations. Also remove broken
|
needed, but can be useful when doing DIY installations.
|
||||||
app symlinks from `/Applications` and `~/Applications` that were previously
|
|
||||||
created by `brew linkapps`.
|
|
||||||
|
|
||||||
If `--dry-run` or `-n` is passed, show what would be removed, but do not
|
If `--dry-run` or `-n` is passed, show what would be removed, but do not
|
||||||
actually remove anything.
|
actually remove anything.
|
||||||
|
|||||||
@ -388,7 +388,7 @@ Rerun the post\-install steps for \fIformula\fR\.
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
\fBprune\fR [\fB\-\-dry\-run\fR]
|
\fBprune\fR [\fB\-\-dry\-run\fR]
|
||||||
Remove dead symlinks from the Homebrew prefix\. This is generally not needed, but can be useful when doing DIY installations\. Also remove broken app symlinks from \fB/Applications\fR and \fB~/Applications\fR that were previously created by \fBbrew linkapps\fR\.
|
Remove dead symlinks from the Homebrew prefix\. This is generally not needed, but can be useful when doing DIY installations\.
|
||||||
.
|
.
|
||||||
.IP
|
.IP
|
||||||
If \fB\-\-dry\-run\fR or \fB\-n\fR is passed, show what would be removed, but do not actually remove anything\.
|
If \fB\-\-dry\-run\fR or \fB\-n\fR is passed, show what would be removed, but do not actually remove anything\.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user