gigamo-aurb 0.2.2 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/aurb.gemspec +2 -2
  2. data/bin/aurb +30 -3
  3. metadata +2 -2
data/aurb.gemspec CHANGED
@@ -1,12 +1,12 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'aurb'
3
- s.version = '0.2.2'
3
+ s.version = '0.3.1'
4
4
  s.date = '2009-04-05'
5
5
  s.summary = 'A simple AUR utility'
6
6
  s.email = 'gigamo@gmail.com'
7
7
  s.homepage = 'http://github.com/gigamo/aurb'
8
8
  s.description = s.summary
9
- s.rubyforge_project = 'Aurb'
9
+ s.rubyforge_project = 'aurb'
10
10
  s.has_rdoc = false
11
11
  s.authors = ['Gigamo']
12
12
  s.files = ['bin/aurb', 'aurb.gemspec']
data/bin/aurb CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env ruby
2
- libraries = %w[rubygems zlib facets/minitar facets/ansicode json cgi open-uri optparse]
2
+ libraries = %w[rubygems zlib facets/version facets/minitar facets/ansicode json cgi open-uri optparse]
3
3
  for library in libraries do
4
4
  require library
5
5
  end
6
6
 
7
7
  module Aurb
8
8
  Config = Struct.new(:search, :info, :sync, :dir)
9
- Version = [0, 2, 2]
9
+ Version = [0, 3, 1]
10
10
 
11
11
  def self.aur
12
12
  @aur ||= Aur.new
@@ -93,7 +93,31 @@ module Aurb
93
93
  end
94
94
  threads.each { |t| t.join }
95
95
 
96
- puts "\nFound #{color(count.to_s, :magenta)} #{count == 1 ? 'result' : 'results'}."
96
+ puts "\n#{color('==>', :yellow)} Found #{color(count.to_s, :magenta)} #{count == 1 ? 'result' : 'results'}."
97
+ end
98
+
99
+ def check_upgrade
100
+ threads, found = [], false
101
+ puts "#{color('==>', :yellow)} Checking for upgrades."
102
+
103
+ `pacman -Qm`.each_line do |line|
104
+ threads << Thread.new do
105
+ name, version = line.chomp.split
106
+ result = JSON.parse(open(@config.info % name).read)
107
+ if result === Hash && result['Version'] != version
108
+ found = true
109
+ iver = VersionNumber.new(version)
110
+ aver = VersionNumber.new(result['Version'])
111
+
112
+ if aver > iver
113
+ puts "#{color(name, :bold)}: #{color(version, :red)} -> #{color(result['Version'])}"
114
+ end
115
+ end
116
+ end
117
+ end
118
+ threads.each { |t| t.join }
119
+
120
+ puts "#{color('==>', :yellow)} All packages are up-to-date." unless found
97
121
  end
98
122
 
99
123
  private
@@ -137,6 +161,9 @@ module Aurb
137
161
  o.on('-S', '--search=PKG', 'Search for +PKG+') do |p|
138
162
  self[:cmd] = "search('#{p}')"
139
163
  end
164
+ o.on('-U', '--upgrade', 'Check for upgrades') do
165
+ self[:cmd] = 'check_upgrade'
166
+ end
140
167
  end.parse!(args)
141
168
  end
142
169
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gigamo-aurb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gigamo
@@ -45,7 +45,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
45
45
  version:
46
46
  requirements: []
47
47
 
48
- rubyforge_project: Aurb
48
+ rubyforge_project: aurb
49
49
  rubygems_version: 1.2.0
50
50
  signing_key:
51
51
  specification_version: 2