diff options
| author | Zhiming Wang | 2016-10-30 20:11:45 -0400 |
|---|---|---|
| committer | Zhiming Wang | 2016-11-02 22:37:08 -0400 |
| commit | 0ca697ad2f5e937f5cd613b1a17a90b126a1a00b (patch) | |
| tree | a2d988cf302f8374c623b2036639eb5054969bcb | |
| parent | 8d5df2ea8769f48fc8b9c145abc8fc1329a650cb (diff) | |
| download | brew-0ca697ad2f5e937f5cd613b1a17a90b126a1a00b.tar.bz2 | |
brew.sh: communicate when autoupdate runs for long
This will ease user anxiety when `brew install foo' is typed but nothing
seems to happen.
| -rw-r--r-- | Library/Homebrew/brew.sh | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Library/Homebrew/brew.sh b/Library/Homebrew/brew.sh index f3bb605bb..8a6ceff8f 100644 --- a/Library/Homebrew/brew.sh +++ b/Library/Homebrew/brew.sh @@ -296,6 +296,13 @@ source "$HOMEBREW_LIBRARY/Homebrew/utils/analytics.sh" setup-analytics report-analytics-screenview-command +# Let user know we're still updating Homebrew if brew update --preinstall +# exceeds 3 seconds. +update-preinstall-timer() { + sleep 3 + echo 'Updating Homebrew...' >&2 +} + update-preinstall() { [[ -z "$HOMEBREW_HELP" ]] || return [[ -z "$HOMEBREW_NO_AUTO_UPDATE" ]] || return @@ -306,7 +313,19 @@ update-preinstall() { if [[ "$HOMEBREW_COMMAND" = "install" || "$HOMEBREW_COMMAND" = "upgrade" || "$HOMEBREW_COMMAND" = "tap" ]] then + if [[ -z "$HOMEBREW_VERBOSE" ]] + then + update-preinstall-timer & + timer_pid=$! + fi + brew update --preinstall + + if [[ -n "$timer_pid" ]] + then + kill "$timer_pid" 2>/dev/null + wait "$timer_pid" 2>/dev/null + fi fi # If brew update --preinstall did a migration then export the new locations. |
