blob: d50ebb2836351d37d1f595ab5d33c5fe419f9371 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  | 
require 'formula'
require 'keg'
module Homebrew extend self
  def outdated
    outdated_brews do |f, versions|
      if $stdout.tty? and not ARGV.flag? '--quiet'
        puts "#{f.name} (#{versions*', '} < #{f.pkg_version})"
      else
        puts f.name
      end
    end
  end
  def outdated_brews
    Formula.installed.map do |f|
      versions = f.rack.subdirs.map { |d| Keg.new(d).version }.sort!
        if versions.all? { |version| f.pkg_version > version }
        yield f, versions if block_given?
        f
      end
    end.compact
  end
end
  |