Skip to content

Commit

Permalink
Add new odeprecated, odisabled, remove disabled code.
Browse files Browse the repository at this point in the history
Prepare the usual deprecation cycle for Homebrew 4.4.0.
  • Loading branch information
MikeMcQuaid committed Sep 24, 2024
1 parent bd3c7f8 commit 7ba42b7
Show file tree
Hide file tree
Showing 47 changed files with 192 additions and 255 deletions.
6 changes: 3 additions & 3 deletions Library/Homebrew/cask/artifact/moved.rb
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def move(adopt: false, force: false, verbose: false, predecessor: nil, reinstall
end

# Remove the source as we don't need to move it to the target location
source.rmtree
FileUtils.rm_r(source)

return post_move(command)
end
Expand All @@ -112,14 +112,14 @@ def move(adopt: false, force: false, verbose: false, predecessor: nil, reinstall
sudo: true)
end
Quarantine.copy_xattrs(source, target, command:)
source.rmtree
FileUtils.rm_r(source)
elsif target.dirname.writable?
FileUtils.move(source, target)
else
# default sudo user isn't necessarily able to write to Homebrew's locations
# e.g. with runas_default set in the sudoers (5) file.
command.run!("/bin/cp", args: ["-pR", source, target], sudo: true)
source.rmtree
FileUtils.rm_r(source)
end

post_move(command)
Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/cask/dsl.rb
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,7 @@ def caveats(*strings, &block)
end

def discontinued?
odeprecated "`discontinued?`", "`deprecated?` or `disabled?`"
odisabled "`discontinued?`", "`deprecated?` or `disabled?`"
@caveats&.discontinued? == true
end

Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/cask/dsl/caveats.rb
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ def eval_caveats(&block)
end

caveat :discontinued do
odeprecated "`caveats :discontinued`", "`deprecate!`"
odisabled "`caveats :discontinued`", "`deprecate!`"
@discontinued = true
<<~EOS
#{@cask} has been officially discontinued upstream.
Expand Down
6 changes: 3 additions & 3 deletions Library/Homebrew/cask/installer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -399,7 +399,7 @@ def save_caskfile

extension = @cask.loaded_from_api? ? "json" : "rb"
(metadata_subdir/"#{@cask.token}.#{extension}").write @cask.source
old_savedir&.rmtree
FileUtils.rm_r(old_savedir) if old_savedir
end

def save_config_file
Expand Down Expand Up @@ -454,8 +454,8 @@ def backup
def restore_backup
return if !backup_path.directory? || !backup_metadata_path.directory?

@cask.staged_path.rmtree if @cask.staged_path.exist?
@cask.metadata_versioned_path.rmtree if @cask.metadata_versioned_path.exist?
FileUtils.rm_r(@cask.staged_path) if @cask.staged_path.exist?
FileUtils.rm_r(@cask.metadata_versioned_path) if @cask.metadata_versioned_path.exist?

backup_path.rename @cask.staged_path
backup_metadata_path.rename @cask.metadata_versioned_path
Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/cask/utils.rb
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ def self.gain_permissions_remove(path, command: SystemCommand)
gain_permissions(path, permission_flags, command) do |p|
if p.parent.writable?
if directory
p.rmtree
FileUtils.rm_r p
else
FileUtils.rm_f p
end
Expand Down
6 changes: 3 additions & 3 deletions Library/Homebrew/cleanup.rb
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@ def cleanup_logs
logs_days = [days, CLEANUP_DEFAULT_DAYS].min

HOMEBREW_LOGS.subdirs.each do |dir|
cleanup_path(dir) { dir.rmtree } if self.class.prune?(dir, logs_days)
cleanup_path(dir) { FileUtils.rm_r(dir) } if self.class.prune?(dir, logs_days)
end
end

Expand Down Expand Up @@ -518,7 +518,7 @@ def cleanup_portable_ruby
end

portable_rubies_to_remove.each do |portable_ruby|
cleanup_path(portable_ruby) { portable_ruby.rmtree }
cleanup_path(portable_ruby) { FileUtils.rm_r(portable_ruby) }
end
end

Expand All @@ -531,7 +531,7 @@ def cleanup_bootsnap
return unless bootsnap.directory?

bootsnap.each_child do |subdir|
cleanup_path(subdir) { subdir.rmtree } if subdir.basename.to_s != Homebrew.bootsnap_key
cleanup_path(subdir) { FileUtils.rm_r(subdir) } if subdir.basename.to_s != Homebrew.bootsnap_key
end
end

Expand Down
10 changes: 5 additions & 5 deletions Library/Homebrew/cli/parser.rb
Original file line number Diff line number Diff line change
Expand Up @@ -166,11 +166,11 @@ def initialize(cmd = nil, &block)
@command_name = T.let(T.must(cmd_location.label).chomp("_args").tr("_", "-"), String)
@is_dev_cmd = T.let(T.must(cmd_location.absolute_path).start_with?(Commands::HOMEBREW_DEV_CMD_PATH),
T::Boolean)
# odeprecated(
# "`brew #{@command_name}'. This command needs to be refactored, as it is written in a style that",
# "inheritance from `Homebrew::AbstractCommand' ( see https://docs.brew.sh/External-Commands )",
# disable_for_developers: false,
# )
odeprecated(
"`brew #{@command_name}'. This command needs to be refactored, as it is written in a style that",
"inherits from `Homebrew::AbstractCommand' ( see https://docs.brew.sh/External-Commands )",
disable_for_developers: false,
)
end

@constraints = T.let([], T::Array[[String, String]])
Expand Down
4 changes: 2 additions & 2 deletions Library/Homebrew/cmd/update-report.rb
Original file line number Diff line number Diff line change
Expand Up @@ -432,11 +432,11 @@ def initialize(tap, api_names_txt: nil, api_names_before_txt: nil, api_dir_prefi
@api_names_before_txt = api_names_before_txt
@api_dir_prefix = api_dir_prefix
else
initial_revision_var = "HOMEBREW_UPDATE_BEFORE#{tap.repo_var_suffix}"
initial_revision_var = "HOMEBREW_UPDATE_BEFORE#{tap.repository_var_suffix}"
@initial_revision = ENV[initial_revision_var].to_s
raise ReporterRevisionUnsetError, initial_revision_var if @initial_revision.empty?

current_revision_var = "HOMEBREW_UPDATE_AFTER#{tap.repo_var_suffix}"
current_revision_var = "HOMEBREW_UPDATE_AFTER#{tap.repository_var_suffix}"
@current_revision = ENV[current_revision_var].to_s
raise ReporterRevisionUnsetError, current_revision_var if @current_revision.empty?
end
Expand Down
20 changes: 10 additions & 10 deletions Library/Homebrew/cmd/update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,18 +82,18 @@ git_init_if_necessary() {
fi
}

repo_var_suffix() {
local repo_dir="${1}"
local repo_var_suffix
repository_var_suffix() {
local repository_directory="${1}"
local repository_var_suffix

if [[ "${repo_dir}" == "${HOMEBREW_REPOSITORY}" ]]
if [[ "${repository_directory}" == "${HOMEBREW_REPOSITORY}" ]]
then
repo_var_suffix=""
repository_var_suffix=""
else
repo_var_suffix="${repo_dir#"${HOMEBREW_LIBRARY}/Taps"}"
repo_var_suffix="$(echo -n "${repo_var_suffix}" | tr -C "A-Za-z0-9" "_" | tr "[:lower:]" "[:upper:]")"
repository_var_suffix="${repository_directory#"${HOMEBREW_LIBRARY}/Taps"}"
repository_var_suffix="$(echo -n "${repository_var_suffix}" | tr -C "A-Za-z0-9" "_" | tr "[:lower:]" "[:upper:]")"
fi
echo "${repo_var_suffix}"
echo "${repository_var_suffix}"
}

upstream_branch() {
Expand Down Expand Up @@ -592,7 +592,7 @@ EOS
echo "Checking if we need to fetch ${DIR}..."
fi

TAP_VAR="$(repo_var_suffix "${DIR}")"
TAP_VAR="$(repository_var_suffix "${DIR}")"
UPSTREAM_BRANCH_DIR="$(upstream_branch)"
declare UPSTREAM_BRANCH"${TAP_VAR}"="${UPSTREAM_BRANCH_DIR}"
declare PREFETCH_REVISION"${TAP_VAR}"="$(git rev-parse -q --verify refs/remotes/origin/"${UPSTREAM_BRANCH_DIR}")"
Expand Down Expand Up @@ -778,7 +778,7 @@ EOS
continue
fi

TAP_VAR="$(repo_var_suffix "${DIR}")"
TAP_VAR="$(repository_var_suffix "${DIR}")"
UPSTREAM_BRANCH_VAR="UPSTREAM_BRANCH${TAP_VAR}"
UPSTREAM_BRANCH="${!UPSTREAM_BRANCH_VAR}"
CURRENT_REVISION="$(read_current_revision)"
Expand Down
7 changes: 0 additions & 7 deletions Library/Homebrew/cmd/upgrade.rb
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,6 @@ class UpgradeCmd < AbstractCommand
"formula is outdated. Otherwise, the repository's HEAD will only be checked for " \
"updates when a new stable or development version has been released.",
}],
[:switch, "--ignore-pinned", {
description: "Set a successful exit status even if pinned formulae are not upgraded.",
hidden: true,
}],
[:switch, "--keep-tmp", {
description: "Retain the temporary files created during installation.",
}],
Expand Down Expand Up @@ -124,9 +120,6 @@ class UpgradeCmd < AbstractCommand

sig { override.void }
def run
# Disabled since this is now the default behavior.
odisabled "`brew upgrade --ignore-pinned`" if args.ignore_pinned?

formulae, casks = args.named.to_resolved_formulae_to_casks
# If one or more formulae are specified, but no casks were
# specified, we want to make note of that so we don't
Expand Down
4 changes: 0 additions & 4 deletions Library/Homebrew/dev-cmd/bump-cask-pr.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@ class BumpCaskPr < AbstractCommand
"to the cask file."
switch "--no-audit",
description: "Don't run `brew audit` before opening the PR."
switch "--online",
hidden: true
switch "--no-style",
description: "Don't run `brew style --fix` before opening the PR."
switch "--no-browse",
Expand Down Expand Up @@ -60,8 +58,6 @@ class BumpCaskPr < AbstractCommand

sig { override.void }
def run
odisabled "brew bump-cask-pr --online" if args.online?

# This will be run by `brew audit` or `brew style` later so run it first to
# not start spamming during normal output.
gem_groups = []
Expand Down
4 changes: 0 additions & 4 deletions Library/Homebrew/dev-cmd/bump-formula-pr.rb
Original file line number Diff line number Diff line change
Expand Up @@ -507,10 +507,6 @@ def check_throttle(formula, new_version)
return if tap.nil?

throttled_rate = formula.livecheck.throttle
throttled_rate ||= if (rate = tap.audit_exceptions.dig(:throttled_formulae, formula.name))
odisabled "throttled_formulae.json", "Livecheck#throttle"
rate
end
return if throttled_rate.blank?

formula_suffix = Version.new(new_version).patch.to_i
Expand Down
1 change: 0 additions & 1 deletion Library/Homebrew/dev-cmd/prof.rb
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ def run
Homebrew.setup_gem_environment!

if args.stackprof?
# odeprecated. vernier is better in every way
with_env HOMEBREW_STACKPROF: "1" do
system(*HOMEBREW_RUBY_EXEC_ARGS, brew_rb, *args.named)
end
Expand Down
8 changes: 4 additions & 4 deletions Library/Homebrew/dev-cmd/tap-new.rb
Original file line number Diff line number Diff line change
Expand Up @@ -39,17 +39,17 @@ def run
odie "Tap is already installed!" if tap.installed?

titleized_user = tap.user.dup
titleized_repo = tap.repo.dup
titleized_repository = tap.repository.dup
titleized_user[0] = titleized_user[0].upcase
titleized_repo[0] = titleized_repo[0].upcase
root_url = GitHubPackages.root_url(tap.user, "homebrew-#{tap.repo}") if args.github_packages?
titleized_repository[0] = titleized_repository[0].upcase
root_url = GitHubPackages.root_url(tap.user, "homebrew-#{tap.repository}") if args.github_packages?

(tap.path/"Formula").mkpath

# FIXME: https://github.com/errata-ai/vale/issues/818
# <!-- vale off -->
readme = <<~MARKDOWN
# #{titleized_user} #{titleized_repo}
# #{titleized_user} #{titleized_repository}
## How do I install these formulae?
Expand Down
7 changes: 0 additions & 7 deletions Library/Homebrew/download_strategy.rb
Original file line number Diff line number Diff line change
Expand Up @@ -76,13 +76,6 @@ def quiet!
@quiet = true
end

# Disable any output during downloading.
sig { void }
def shutup!
odisabled "`AbstractDownloadStrategy#shutup!`", "`AbstractDownloadStrategy#quiet!`"
quiet!
end

def quiet?
Context.current.quiet? || @quiet
end
Expand Down
4 changes: 2 additions & 2 deletions Library/Homebrew/exceptions.rb
Original file line number Diff line number Diff line change
Expand Up @@ -218,12 +218,12 @@ def initialize(name, error)

# Raised when a formula in a specific tap is unavailable.
class TapFormulaUnavailableError < FormulaUnavailableError
attr_reader :tap, :user, :repo
attr_reader :tap, :user, :repository

def initialize(tap, name)
@tap = tap
@user = tap.user
@repo = tap.repo
@repository = tap.repository
super "#{tap}/#{name}"
end

Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/extend/kernel.rb
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ def odeprecated(method, replacement = nil,

require "tap"

tap = Tap.fetch(match[:user], match[:repo])
tap = Tap.fetch(match[:user], match[:repository])
tap_message = +"\nPlease report this issue to the #{tap.full_name} tap"
tap_message += " (not Homebrew/brew or Homebrew/homebrew-core)" unless tap.official?
tap_message += ", or even better, submit a PR to fix it" if replacement
Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/extend/pathname.rb
Original file line number Diff line number Diff line change
Expand Up @@ -509,7 +509,7 @@ def rmtree(noop: nil, verbose: nil, secure: nil)
# create a RuboCop autocorrect instead soon.
# This is why monkeypatching is non-ideal (but right solution to get
# Ruby 3.3 over the line).
# odeprecated "rmtree", "FileUtils#rm_r"
odeprecated "rmtree", "FileUtils#rm_r"
FileUtils.rm_r(@path, noop:, verbose:, secure:)
nil
end
Expand Down
12 changes: 6 additions & 6 deletions Library/Homebrew/formula.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1234,7 +1234,7 @@ def with_logging(log_type)
#
# @see https://www.unix.com/man-page/all/5/plist/ <code>plist(5)</code> man page
def plist
odeprecated "`Formula#plist`", "`Homebrew::Service`"
odisabled "`Formula#plist`", "`Homebrew::Service`"
nil
end

Expand Down Expand Up @@ -2777,12 +2777,12 @@ def on_system_blocks_exist?
).returns(Pathname)
}
def fetch(verify_download_integrity: true, timeout: nil, quiet: false)
# odeprecated "Formula#fetch", "Resource#fetch on Formula#resource"
odeprecated "Formula#fetch", "Resource#fetch on Formula#resource"
active_spec.fetch(verify_download_integrity:, timeout:, quiet:)
end

def verify_download_integrity(filename)
# odeprecated "Formula#verify_download_integrity", "Resource#verify_download_integrity on Formula#resource"
odeprecated "Formula#verify_download_integrity", "Resource#verify_download_integrity on Formula#resource"
active_spec.verify_download_integrity(filename)
end

Expand Down Expand Up @@ -2887,8 +2887,8 @@ def install; end
def inreplace(paths, before = nil, after = nil, old_audit_result = nil, audit_result: true, &block)
# NOTE: must check for `#nil?` and not `#blank?`, or else `old_audit_result = false` will not call `odeprecated`.
unless old_audit_result.nil?
# odeprecated "inreplace(paths, before, after, #{old_audit_result})",
# "inreplace(paths, before, after, audit_result: #{old_audit_result})"
odeprecated "inreplace(paths, before, after, #{old_audit_result})",
"inreplace(paths, before, after, audit_result: #{old_audit_result})"
audit_result = old_audit_result
end
Utils::Inreplace.inreplace(paths, before, after, audit_result:, &block)
Expand Down Expand Up @@ -3749,7 +3749,7 @@ def resource(name, klass = Resource, &block)
#
# @api public
def go_resource(name, &block)
odeprecated "`Formula.go_resource`", "Go modules"
odisabled "`Formula.go_resource`", "Go modules"
specs.each { |spec| spec.go_resource(name, &block) }
end

Expand Down
2 changes: 1 addition & 1 deletion Library/Homebrew/formula_auditor.rb
Original file line number Diff line number Diff line change
Expand Up @@ -948,7 +948,7 @@ def audit_reverse_migration
problem <<~EOS
#{formula.name} seems to be listed in tap_migrations.json!
Please remove #{formula.name} from present tap & tap_migrations.json
before submitting it to Homebrew/homebrew-#{formula.tap.repo}.
before submitting it to Homebrew/homebrew-#{formula.tap.repository}.
EOS
end

Expand Down
6 changes: 3 additions & 3 deletions Library/Homebrew/formula_installer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,7 @@ def install
# any exceptions must leave us with nothing installed
ignore_interrupts do
begin
formula.prefix.rmtree if formula.prefix.directory?
FileUtils.rm_r(formula.prefix) if formula.prefix.directory?
rescue Errno::EACCES, Errno::ENOTEMPTY
odie <<~EOS
Could not remove #{formula.prefix.basename} keg! Do so manually:
Expand Down Expand Up @@ -825,7 +825,7 @@ def install_dependency(dep, inherited_options)
# dependency tree. In that case, don't generate an error, just move on.
nil
else
ignore_interrupts { tmp_keg.rmtree if tmp_keg&.directory? }
ignore_interrupts { FileUtils.rm_r(tmp_keg) if tmp_keg&.directory? }
end

sig { void }
Expand Down Expand Up @@ -1020,7 +1020,7 @@ def build
ignore_interrupts do
# any exceptions must leave us with nothing installed
formula.update_head_version
formula.prefix.rmtree if formula.prefix.directory?
FileUtils.rm_r(formula.prefix) if formula.prefix.directory?
formula.rack.rmdir_if_possible
end
raise e
Expand Down
Loading

0 comments on commit 7ba42b7

Please sign in to comment.