diff options
| author | Adam Vandenberg | 2014-05-16 08:47:09 -0700 |
|---|---|---|
| committer | Adam Vandenberg | 2014-05-16 09:03:12 -0700 |
| commit | d9ed121c4667c913b4bb8a664c54b2285f5a3046 (patch) | |
| tree | b3b64b4a4799d12946d66af5394a0b3da229837b /Library | |
| parent | 99ebf05b9cf28ed7dbeb7114189b9cfbc4e5cf22 (diff) | |
| download | brew-d9ed121c4667c913b4bb8a664c54b2285f5a3046.tar.bz2 | |
add --installed to json info
Closes Homebrew/homebrew#29315.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Contributions/brew_bash_completion.sh | 2 | ||||
| -rw-r--r-- | Library/Contributions/manpages/brew.1.md | 5 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/info.rb | 10 | ||||
| -rw-r--r-- | Library/Homebrew/formula.rb | 1 |
4 files changed, 14 insertions, 4 deletions
diff --git a/Library/Contributions/brew_bash_completion.sh b/Library/Contributions/brew_bash_completion.sh index 61c81361f..7d3fc595f 100644 --- a/Library/Contributions/brew_bash_completion.sh +++ b/Library/Contributions/brew_bash_completion.sh @@ -222,7 +222,7 @@ _brew_info () local cur="${COMP_WORDS[COMP_CWORD]}" case "$cur" in --*) - __brewcomp "--all --github --json=v1" + __brewcomp "--all --github --installed --json=v1" return ;; esac diff --git a/Library/Contributions/manpages/brew.1.md b/Library/Contributions/manpages/brew.1.md index 563d072c2..21b839917 100644 --- a/Library/Contributions/manpages/brew.1.md +++ b/Library/Contributions/manpages/brew.1.md @@ -160,10 +160,13 @@ Note that these flags should only appear after a command. To view formula history locally: `brew log -p <formula>`. - * `info --json=<version>` <formula>: + * `info --json=<version>` (--all|--installed|<formula>): Print a JSON representation of <formula>. Currently the only accepted value for <version> is `v1`. + Pass `--all` to get information on all formulae, or `--installed` to get + information on all installed formulae. + * `install [--debug] [--env=<std|super>] [--ignore-dependencies] [--only-dependencies] [--cc=<compiler>] [--build-from-source] [--devel|--HEAD]` <formula>: Install <formula>. diff --git a/Library/Homebrew/cmd/info.rb b/Library/Homebrew/cmd/info.rb index 9deda9dfb..ef8e2ac52 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -41,8 +41,14 @@ module Homebrew extend self end def print_json - formulae = ARGV.include?("--all") ? Formula : ARGV.formulae - json = formulae.map {|f| f.to_hash} + ff = if ARGV.include? "--all" + Formula + elsif ARGV.include? "--installed" + Formula.installed + else + ARGV.formulae + end + json = ff.map {|f| f.to_hash} if json.size == 1 puts Utils::JSON.dump(json.pop) else diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index d6a6f60e1..f0217bb74 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -369,6 +369,7 @@ class Formula include Enumerable end + # An array of all installed formulae def self.installed return [] unless HOMEBREW_CELLAR.directory? |
