vnews 0.4.1 → 0.4.2

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.
data/lib/vnews/config.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  require 'vnews/sql'
2
2
  require 'yaml'
3
- require 'thread_pool'
4
3
  require 'vnews/constants'
5
4
  require 'timeout'
6
5
 
@@ -87,29 +86,19 @@ class Vnews
87
86
 
88
87
  puts "Adding feeds: #{(new_feeds - old_feeds).inspect}"
89
88
  puts "Adding folder-feed associations: #{(ff - old_ff).inspect}"
90
- feeds2 = []
91
- pool = ThreadPool.new Vnews::POOLSIZE
92
- puts "Using thread pool size of 10"
93
- # TODO sometimes feeds are downloaded twice;
94
89
  ff.each do |feed_url, folder|
95
- pool.process do
96
- begin
97
- Timeout::timeout(Vnews::TIMEOUT) do
98
- feeds2 << Vnews::Feed.fetch_feed(feed_url, folder)
90
+ begin
91
+ Timeout::timeout(Vnews::TIMEOUT) do
92
+ feed_url, f, folder = *Vnews::Feed.fetch_feed(feed_url, folder)
93
+ folder ||= "Misc"
94
+ if f.nil?
95
+ $stderr.print "\nNo feed found for #{feed_url}\n"
96
+ else
97
+ Vnews::Feed.save_feed(feed_url, f, folder)
99
98
  end
100
- rescue Timeout::Error
101
- puts "TIMEOUT ERROR: #{feed_url}"
102
99
  end
103
- end
104
- end
105
- pool.join
106
- feeds2.each do |x|
107
- feed_url, f, folder = *x
108
- folder ||= "Misc"
109
- if f.nil?
110
- $stderr.print "\nNo feed found for #{feed_url}\n"
111
- else
112
- Vnews::Feed.save_feed(feed_url, f, folder)
100
+ rescue Timeout::Error
101
+ puts "TIMEOUT ERROR: #{feed_url}"
113
102
  end
114
103
  end
115
104
  $stderr.puts "\nDone."
data/lib/vnews/feed.rb CHANGED
@@ -48,6 +48,7 @@ class Vnews
48
48
  Vnews.sql_client.insert_item item.merge(:feed => feed_url, :feed_title => f[:meta][:title])
49
49
  $stderr.print "."
50
50
  end
51
+ print "\n"
51
52
  rescue
52
53
  puts "ERROR: dump: #{feed_url.inspect}, #{folder.inspect}: #{f.inspect} "
53
54
  raise
data/lib/vnews/folder.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'vnews/feed'
2
- require 'thread_pool'
3
2
  require 'vnews/constants'
4
3
 
5
4
  class Vnews
@@ -12,25 +11,16 @@ class Vnews
12
11
  require 'vnews/display'
13
12
  folder = Vnews::Display.strip_item_count(folder)
14
13
  puts "Updating folder: #{folder.inspect}"
15
- feeds = []
16
- pool = ThreadPool.new Vnews::POOLSIZE
17
- puts "Using thread pool size of #{Vnews::POOLSIZE}"
18
14
  Vnews.sql_client.feeds_in_folder(folder.strip).each do |feed|
19
- pool.process do
20
- begin
21
- Timeout::timeout(Vnews::TIMEOUT) do
22
- feeds << Vnews::Feed.fetch_feed(feed, folder)
23
- end
24
- rescue Timeout::Error
25
- puts "TIMEOUT ERROR: #{feed_url}"
15
+ begin
16
+ Timeout::timeout(Vnews::TIMEOUT) do
17
+ feed_url, f, folder = *Vnews::Feed.fetch_feed(feed, folder)
18
+ Vnews::Feed.save_feed feed_url, f, folder
26
19
  end
20
+ rescue Timeout::Error
21
+ puts "TIMEOUT ERROR: #{feed_url}"
27
22
  end
28
23
  end
29
- pool.join
30
- puts "Saving data to database"
31
- feeds.select {|x| x[1]}.compact.each do |feed_url, f, folder|
32
- Vnews::Feed.save_feed feed_url, f, folder
33
- end
34
24
  puts "\nDone"
35
25
  end
36
26
  end
data/lib/vnews/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  class Vnews
2
- VERSION = '0.4.1'
2
+ VERSION = '0.4.2'
3
3
  end
4
4
 
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: vnews
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.4.1
5
+ version: 0.4.2
6
6
  platform: ruby
7
7
  authors:
8
8
  - Daniel Choi
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-03-08 00:00:00 -05:00
13
+ date: 2011-03-16 00:00:00 -04:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency