From 31e49d96af466be9c8855817719d59acb04b8294 Mon Sep 17 00:00:00 2001 From: hyuraku <32809703+hyuraku@users.noreply.github.com> Date: Thu, 23 Mar 2023 22:50:03 +0900 Subject: [PATCH 1/4] move cask/cmd/reinstall to cask/reinstall --- Library/Homebrew/cask/cmd.rb | 1 - Library/Homebrew/cask/cmd/reinstall.rb | 56 -------------------------- Library/Homebrew/cask/reinstall.rb | 37 +++++++++++++++++ Library/Homebrew/cmd/reinstall.rb | 2 +- 4 files changed, 38 insertions(+), 58 deletions(-) delete mode 100644 Library/Homebrew/cask/cmd/reinstall.rb create mode 100644 Library/Homebrew/cask/reinstall.rb diff --git a/Library/Homebrew/cask/cmd.rb b/Library/Homebrew/cask/cmd.rb index 127995b692..1518b9518d 100644 --- a/Library/Homebrew/cask/cmd.rb +++ b/Library/Homebrew/cask/cmd.rb @@ -12,7 +12,6 @@ require "cask/config" require "cask/cmd/abstract_command" require "cask/cmd/audit" require "cask/cmd/install" -require "cask/cmd/reinstall" module Cask # Implementation of the `brew cask` command-line interface. diff --git a/Library/Homebrew/cask/cmd/reinstall.rb b/Library/Homebrew/cask/cmd/reinstall.rb deleted file mode 100644 index 9637805450..0000000000 --- a/Library/Homebrew/cask/cmd/reinstall.rb +++ /dev/null @@ -1,56 +0,0 @@ -# typed: true -# frozen_string_literal: true - -module Cask - class Cmd - # Cask implementation of the `brew reinstall` command. - # - # @api private - class Reinstall < Install - extend T::Sig - - sig { void } - def run - self.class.reinstall_casks( - *casks, - binaries: args.binaries?, - verbose: args.verbose?, - force: args.force?, - skip_cask_deps: args.skip_cask_deps?, - require_sha: args.require_sha?, - quarantine: args.quarantine?, - zap: args.zap?, - ) - end - - def self.reinstall_casks( - *casks, - verbose: nil, - force: nil, - skip_cask_deps: nil, - binaries: nil, - require_sha: nil, - quarantine: nil, - zap: nil - ) - require "cask/installer" - - options = { - binaries: binaries, - verbose: verbose, - force: force, - skip_cask_deps: skip_cask_deps, - require_sha: require_sha, - quarantine: quarantine, - zap: zap, - }.compact - - options[:quarantine] = true if options[:quarantine].nil? - - casks.each do |cask| - Installer.new(cask, **options).reinstall - end - end - end - end -end diff --git a/Library/Homebrew/cask/reinstall.rb b/Library/Homebrew/cask/reinstall.rb new file mode 100644 index 0000000000..466f97ed5f --- /dev/null +++ b/Library/Homebrew/cask/reinstall.rb @@ -0,0 +1,37 @@ +# typed: true +# frozen_string_literal: true + +module Cask + # + # @api private + class Reinstall + def self.reinstall_casks( + *casks, + verbose: nil, + force: nil, + skip_cask_deps: nil, + binaries: nil, + require_sha: nil, + quarantine: nil, + zap: nil + ) + require "cask/installer" + + options = { + binaries: binaries, + verbose: verbose, + force: force, + skip_cask_deps: skip_cask_deps, + require_sha: require_sha, + quarantine: quarantine, + zap: zap, + }.compact + + options[:quarantine] = true if options[:quarantine].nil? + + casks.each do |cask| + Installer.new(cask, **options).reinstall + end + end + end +end diff --git a/Library/Homebrew/cmd/reinstall.rb b/Library/Homebrew/cmd/reinstall.rb index 8eeb2f370c..ca6cff1cb6 100644 --- a/Library/Homebrew/cmd/reinstall.rb +++ b/Library/Homebrew/cmd/reinstall.rb @@ -150,7 +150,7 @@ module Homebrew ) if casks.any? - Cask::Cmd::Reinstall.reinstall_casks( + Cask::Reinstall.reinstall_casks( *casks, binaries: args.binaries?, verbose: args.verbose?, From 75c867e29658e5be7b38ac04fe1eb0ee979d2129 Mon Sep 17 00:00:00 2001 From: hyuraku <32809703+hyuraku@users.noreply.github.com> Date: Thu, 23 Mar 2023 22:50:28 +0900 Subject: [PATCH 2/4] move cask/cmd/reinstall_spec to cask/reinstall_spec --- .../Homebrew/test/cask/{cmd => }/reinstall_spec.rb | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) rename Library/Homebrew/test/cask/{cmd => }/reinstall_spec.rb (83%) diff --git a/Library/Homebrew/test/cask/cmd/reinstall_spec.rb b/Library/Homebrew/test/cask/reinstall_spec.rb similarity index 83% rename from Library/Homebrew/test/cask/cmd/reinstall_spec.rb rename to Library/Homebrew/test/cask/reinstall_spec.rb index 8ddb81d00f..1a7d8ee8ad 100644 --- a/Library/Homebrew/test/cask/cmd/reinstall_spec.rb +++ b/Library/Homebrew/test/cask/reinstall_spec.rb @@ -1,7 +1,10 @@ # typed: false # frozen_string_literal: true -describe Cask::Cmd::Reinstall, :cask do +require "cask/installer" +require "cask/reinstall" + +describe Cask::Reinstall, :cask do it "displays the reinstallation progress" do caffeine = Cask::CaskLoader.load(cask_path("local-caffeine")) @@ -20,7 +23,7 @@ describe Cask::Cmd::Reinstall, :cask do EOS expect do - described_class.run("local-caffeine") + described_class.reinstall_casks(Cask::CaskLoader.load("local-caffeine")) end.to output(output).to_stdout end @@ -45,7 +48,7 @@ describe Cask::Cmd::Reinstall, :cask do EOS expect do - described_class.run("local-caffeine", "--zap") + described_class.reinstall_casks(Cask::CaskLoader.load("local-caffeine"), zap: true) end.to output(output).to_stdout end @@ -54,14 +57,14 @@ describe Cask::Cmd::Reinstall, :cask do expect(Cask::CaskLoader.load(cask_path("local-transmission"))).to be_installed - described_class.run("local-transmission") + described_class.reinstall_casks(Cask::CaskLoader.load("local-transmission")) expect(Cask::CaskLoader.load(cask_path("local-transmission"))).to be_installed end it "allows reinstalling a non installed Cask" do expect(Cask::CaskLoader.load(cask_path("local-transmission"))).not_to be_installed - described_class.run("local-transmission") + described_class.reinstall_casks(Cask::CaskLoader.load("local-transmission")) expect(Cask::CaskLoader.load(cask_path("local-transmission"))).to be_installed end end From ca3520e37924f8df55be0a2943c3d89cc10968f4 Mon Sep 17 00:00:00 2001 From: hyuraku <32809703+hyuraku@users.noreply.github.com> Date: Thu, 23 Mar 2023 23:39:58 +0900 Subject: [PATCH 3/4] repair Cask#Reinstall::reinstall_casks --- Library/Homebrew/cask/reinstall.rb | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/Library/Homebrew/cask/reinstall.rb b/Library/Homebrew/cask/reinstall.rb index 466f97ed5f..424e564461 100644 --- a/Library/Homebrew/cask/reinstall.rb +++ b/Library/Homebrew/cask/reinstall.rb @@ -17,20 +17,15 @@ module Cask ) require "cask/installer" - options = { - binaries: binaries, - verbose: verbose, - force: force, - skip_cask_deps: skip_cask_deps, - require_sha: require_sha, - quarantine: quarantine, - zap: zap, - }.compact - - options[:quarantine] = true if options[:quarantine].nil? - casks.each do |cask| - Installer.new(cask, **options).reinstall + Installer.new(cask, + binaries: binaries, + verbose: verbose, + force: force, + skip_cask_deps: skip_cask_deps, + require_sha: require_sha, + quarantine: quarantine || true, + zap: zap).reinstall end end end From 6a5ed3497ea9f6832696fe1c22ae6c40ff55b89a Mon Sep 17 00:00:00 2001 From: hyuraku <32809703+hyuraku@users.noreply.github.com> Date: Fri, 24 Mar 2023 00:42:10 +0900 Subject: [PATCH 4/4] repair the options --- Library/Homebrew/cask/reinstall.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/cask/reinstall.rb b/Library/Homebrew/cask/reinstall.rb index 424e564461..aa4c361542 100644 --- a/Library/Homebrew/cask/reinstall.rb +++ b/Library/Homebrew/cask/reinstall.rb @@ -17,6 +17,8 @@ module Cask ) require "cask/installer" + quarantine = true if quarantine.nil? + casks.each do |cask| Installer.new(cask, binaries: binaries, @@ -24,7 +26,7 @@ module Cask force: force, skip_cask_deps: skip_cask_deps, require_sha: require_sha, - quarantine: quarantine || true, + quarantine: quarantine, zap: zap).reinstall end end