aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/cask/lib/hbc/cli.rb2
-rw-r--r--Library/Homebrew/cask/lib/hbc/cli/update.rb20
-rw-r--r--Library/Homebrew/cask/lib/hbc/locations.rb2
-rw-r--r--Library/Homebrew/compat/hbc.rb1
-rw-r--r--Library/Homebrew/compat/hbc/cli/update.rb23
-rw-r--r--Library/Homebrew/manpages/brew-cask.1.md3
-rw-r--r--Library/Homebrew/test/utils_test.rb2
-rw-r--r--Library/Homebrew/utils.rb29
-rw-r--r--completions/zsh/_brew_cask1
-rw-r--r--manpages/brew-cask.13
10 files changed, 47 insertions, 39 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/cli.rb b/Library/Homebrew/cask/lib/hbc/cli.rb
index c9625c7e2..42c3982ba 100644
--- a/Library/Homebrew/cask/lib/hbc/cli.rb
+++ b/Library/Homebrew/cask/lib/hbc/cli.rb
@@ -19,7 +19,6 @@ require "hbc/cli/reinstall"
require "hbc/cli/search"
require "hbc/cli/style"
require "hbc/cli/uninstall"
-require "hbc/cli/update"
require "hbc/cli/zap"
require "hbc/cli/internal_use_base"
@@ -77,6 +76,7 @@ module Hbc
def self.command_classes
@command_classes ||= constants.map(&method(:const_get))
.select { |sym| sym.respond_to?(:run) }
+ .sort_by(&:command_name)
end
def self.commands
diff --git a/Library/Homebrew/cask/lib/hbc/cli/update.rb b/Library/Homebrew/cask/lib/hbc/cli/update.rb
deleted file mode 100644
index 86d02bb55..000000000
--- a/Library/Homebrew/cask/lib/hbc/cli/update.rb
+++ /dev/null
@@ -1,20 +0,0 @@
-module Hbc
- class CLI
- class Update < Base
- def self.run(*_ignored)
- result = SystemCommand.run(HOMEBREW_BREW_FILE,
- args: ["update"])
- # TODO: separating stderr/stdout is undesirable here.
- # Hbc::SystemCommand should have an option for plain
- # unbuffered output.
- print result.stdout
- $stderr.print result.stderr
- exit result.exit_status
- end
-
- def self.help
- "a synonym for 'brew update'"
- end
- end
- end
-end
diff --git a/Library/Homebrew/cask/lib/hbc/locations.rb b/Library/Homebrew/cask/lib/hbc/locations.rb
index f28e84b2e..292b45d0c 100644
--- a/Library/Homebrew/cask/lib/hbc/locations.rb
+++ b/Library/Homebrew/cask/lib/hbc/locations.rb
@@ -1,3 +1,5 @@
+require "tap"
+
module Hbc
module Locations
def self.included(base)
diff --git a/Library/Homebrew/compat/hbc.rb b/Library/Homebrew/compat/hbc.rb
index a1d1414a5..179639953 100644
--- a/Library/Homebrew/compat/hbc.rb
+++ b/Library/Homebrew/compat/hbc.rb
@@ -1 +1,2 @@
require "compat/hbc/cask_loader"
+require "compat/hbc/cli/update"
diff --git a/Library/Homebrew/compat/hbc/cli/update.rb b/Library/Homebrew/compat/hbc/cli/update.rb
new file mode 100644
index 000000000..7820997cb
--- /dev/null
+++ b/Library/Homebrew/compat/hbc/cli/update.rb
@@ -0,0 +1,23 @@
+require "cask/lib/hbc/cli/base"
+
+module Hbc
+ class CLI
+ class Update < Base
+ def self.run(*_ignored)
+ odeprecated "`brew cask update`", "`brew update`", disable_on: Time.utc(2017, 7, 1)
+ result = SystemCommand.run(HOMEBREW_BREW_FILE, args: ["update"],
+ print_stderr: true,
+ print_stdout: true)
+ exit result.exit_status
+ end
+
+ def self.visible
+ false
+ end
+
+ def self.help
+ "a synonym for 'brew update'"
+ end
+ end
+ end
+end
diff --git a/Library/Homebrew/manpages/brew-cask.1.md b/Library/Homebrew/manpages/brew-cask.1.md
index feab9f76e..f0a70d4a7 100644
--- a/Library/Homebrew/manpages/brew-cask.1.md
+++ b/Library/Homebrew/manpages/brew-cask.1.md
@@ -104,9 +104,6 @@ names, and other aspects of this manual are still subject to change.
Uninstall the given Cask. With `--force`, uninstall even if the Cask
does not appear to be present.
- * `update`:
- For convenience. `brew cask update` is a synonym for `brew update`.
-
* `zap` <token> [ <token> ... ]:
Unconditionally remove _all_ files associated with the given Cask.
diff --git a/Library/Homebrew/test/utils_test.rb b/Library/Homebrew/test/utils_test.rb
index 146f57b49..d7c25683d 100644
--- a/Library/Homebrew/test/utils_test.rb
+++ b/Library/Homebrew/test/utils_test.rb
@@ -216,7 +216,7 @@ class UtilTests < Homebrew::TestCase
e = assert_raises(MethodDeprecatedError) do
odeprecated("method", "replacement",
caller: ["#{HOMEBREW_LIBRARY}/Taps/homebrew/homebrew-core/"],
- die: true)
+ disable: true)
end
assert_match "method", e.message
assert_match "replacement", e.message
diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb
index 4ad97c7d4..614d50eea 100644
--- a/Library/Homebrew/utils.rb
+++ b/Library/Homebrew/utils.rb
@@ -11,6 +11,7 @@ require "utils/hash"
require "utils/inreplace"
require "utils/popen"
require "utils/tty"
+require "time"
def ohai(title, *sput)
title = Tty.truncate(title) if $stdout.tty? && !ARGV.verbose?
@@ -44,24 +45,32 @@ def odie(error)
exit 1
end
-def odeprecated(method, replacement = nil, options = {})
- verb = if options[:die]
- "disabled"
- else
- "deprecated"
- end
-
+def odeprecated(method, replacement = nil, disable: false, disable_on: nil, caller: send(:caller))
replacement_message = if replacement
"Use #{replacement} instead."
else
"There is no replacement."
end
+ unless disable_on.nil?
+ if disable_on > Time.now
+ will_be_disabled_message = " and will be disabled on #{disable_on.strftime("%Y-%m-%d")}"
+ else
+ disable = true
+ end
+ end
+
+ verb = if disable
+ "disabled"
+ else
+ "deprecated#{will_be_disabled_message}"
+ end
+
# Try to show the most relevant location in message, i.e. (if applicable):
# - Location in a formula.
# - Location outside of 'compat/'.
# - Location of caller of deprecated method (if all else fails).
- backtrace = options.fetch(:caller, caller)
+ backtrace = caller
tap_message = nil
caller_message = backtrace.detect do |line|
next unless line =~ %r{^#{Regexp.escape HOMEBREW_LIBRARY}/Taps/([^/]+/[^/]+)/}
@@ -80,7 +89,7 @@ def odeprecated(method, replacement = nil, options = {})
#{caller_message}#{tap_message}
EOS
- if ARGV.homebrew_developer? || options[:die] ||
+ if ARGV.homebrew_developer? || disable ||
Homebrew.raise_deprecation_exceptions?
raise MethodDeprecatedError, message
else
@@ -89,7 +98,7 @@ def odeprecated(method, replacement = nil, options = {})
end
def odisabled(method, replacement = nil, options = {})
- options = { die: true, caller: caller }.merge(options)
+ options = { disable: true, caller: caller }.merge(options)
odeprecated(method, replacement, options)
end
diff --git a/completions/zsh/_brew_cask b/completions/zsh/_brew_cask
index bb64a2e32..1e493fc2a 100644
--- a/completions/zsh/_brew_cask
+++ b/completions/zsh/_brew_cask
@@ -43,7 +43,6 @@ __brew_cask_commands() {
'search:searches all known Casks'
'style:checks Cask style using RuboCop'
'uninstall:uninstalls the given Cask'
- "update:a synonym for 'brew update'"
'zap:zaps all files associated with the given Cask'
)
_describe -t commands "brew cask command" commands
diff --git a/manpages/brew-cask.1 b/manpages/brew-cask.1
index af5335f79..9eaaf027a 100644
--- a/manpages/brew-cask.1
+++ b/manpages/brew-cask.1
@@ -89,9 +89,6 @@ If \fItoken\fR is given, summarize the staged files associated with the given Ca
\fBuninstall\fR or \fBrm\fR or \fBremove\fR [\-\-force] \fItoken\fR [ \fItoken\fR \.\.\. ]: Uninstall the given Cask\. With \fB\-\-force\fR, uninstall even if the Cask does not appear to be present\.
.
.IP "\(bu" 4
-\fBupdate\fR: For convenience\. \fBbrew cask update\fR is a synonym for \fBbrew update\fR\.
-.
-.IP "\(bu" 4
\fBzap\fR \fItoken\fR [ \fItoken\fR \.\.\. ]: Unconditionally remove \fIall\fR files associated with the given Cask\.
.
.IP