rrimm 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: cb036536a321e067fc90a265804b35c33fa73c7e
4
- data.tar.gz: 795bf60b495b3dca4d30f66a742568b84cdb8a9a
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NmQzYTUzZjAyMWExYTJhZjQ5M2YyZmEzMzBkZDY1ZjY5MzNlZGQxZQ==
5
+ data.tar.gz: !binary |-
6
+ NzQ4N2YwM2Q5NzIzZjdkZDZmNDFlNDdlOWY4NmU4ZDZjZWFhMDI2MQ==
5
7
  SHA512:
6
- metadata.gz: 5111bb5488f6ae6804b8fb765384420e2eb512ec8c2b5d5a9ca2b0a726f3f3c9c7e1f1d3f93db79cebd6d7d77884f6f83720359e8c8bbd0f8db04682ec0191d8
7
- data.tar.gz: debc92ba0768fd0f993a4d5033ee71881ef17d203d7ca4f9158fe4e6a427bf1fdbeb42efe08b3a2d9686e48462360d1d94b532ae82af595f141f197ffb91039f
8
+ metadata.gz: !binary |-
9
+ NDAxYmVhMWU0NjRhM2JjMDdiZTgyODdmMDQwYzI1NTY5NTM3NTBkNjUwODYz
10
+ NTg3NGRiYTM4NGJmYTQ3ZjhlNmUyMTgyNDk0ZjUyYmFlYWZjZjg2N2YyNzI1
11
+ YmYwZDVjZjllN2Y4MjM3NTdlYzZhYTJmY2Y1MDFhZWI2NWQwYjI=
12
+ data.tar.gz: !binary |-
13
+ NzlhYTc2NDI4MzhjNGI1MDAzYWFiNzUzOWQ1MzI1ZDhjOTIxZDhiYjE0NjUz
14
+ MzQyMDNmOTZjYzQ3MWNjMGEwYTQ0MWRkMmY2ZDJjNzRjNTZjMTRjODhkNDBm
15
+ NjQ1ODFiYmMwYTM3ZTAxNzM1MjY4YmEzZTliZGQzOTc3OTE0ZTI=
@@ -1,7 +1,15 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 1.9.3
4
- - 2.0.0
5
- - 2.1.0
6
- - ruby-head
3
+ - 1.9.3
4
+ - 2.0.0
5
+ - 2.1.0
6
+ - ruby-head
7
7
  script: bundle exec rspec spec
8
+ deploy:
9
+ provider: rubygems
10
+ api_key:
11
+ secure: Pyn7uwqx45RdSPLmQpPrfqpkcfJ7Dog1pRyVWKtd4h+ExbF8EReewJGjqCcEJImKVywAAG5k6bkP8UgMWSnBIg+nIuVefpndSlJyQgil5tlAGWwwarqKohrixhTn1M/UWiGBxd3Nn4Yvb+sCIWnCcqBeXMTFkDyfNm7U2qtXTxk=
12
+ gem: rrimm
13
+ on:
14
+ tags: true
15
+ repo: kamaradclimber/rrimm
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rrimm (0.3.0)
4
+ rrimm (0.4.0)
5
+ colorize
5
6
  feedzirra
6
7
  open_uri_redirections
7
8
  parallel
@@ -9,6 +10,7 @@ PATH
9
10
  GEM
10
11
  remote: https://rubygems.org/
11
12
  specs:
13
+ colorize (0.7.0)
12
14
  coveralls (0.7.0)
13
15
  multi_json (~> 1.3)
14
16
  rest-client
data/bin/rrimm CHANGED
@@ -25,8 +25,8 @@ OptionParser.new do |opts|
25
25
  options['concurrency'] = c.to_i
26
26
  end
27
27
 
28
- opts.on('-a', '--action [action]', [:sync, :show],
29
- 'Specify what to do: "sync" feeds, "show" config') do |action|
28
+ opts.on('-a', '--action [action]', [:sync, :show, :status],
29
+ 'Specify what to do: "sync" feeds, "show" config, display feed "status"') do |action|
30
30
  options['action'] = action
31
31
  end
32
32
 
@@ -48,4 +48,10 @@ when :sync
48
48
  fetcher.fetch(options['concurrency'])
49
49
  when :show
50
50
  conf.show
51
+ when :status
52
+ one_month = 30 * 86400
53
+ one_month_ago = Time.now.to_i - one_month
54
+ six_months_ago = Time.now.to_i - 6 * one_month
55
+
56
+ conf.status(one_month_ago, six_months_ago, false)
51
57
  end
@@ -1,3 +1,5 @@
1
+ require 'colorize'
2
+
1
3
  module RRImm
2
4
  class Config
3
5
  attr :feeds, :cache
@@ -40,6 +42,21 @@ module RRImm
40
42
  end
41
43
  end
42
44
 
45
+ def status(old_timestamp, very_old_timestamp, display_old_only)
46
+ ordered_feeds = @feeds.values.map { |f| [get_cache.read(f), f] }.sort_by { |el| el.first }
47
+ ordered_feeds.each do |el|
48
+ f = el[1]
49
+ case el.first
50
+ when 0..very_old_timestamp
51
+ puts "#{Time.at(el.first)} #{f.name}".colorize(:red)
52
+ when very_old_timestamp..old_timestamp
53
+ puts "#{Time.at(el.first)} #{f.name}".colorize(:yellow)
54
+ else
55
+ puts "#{Time.at(el.first)} #{f.name}".colorize(:green) unless display_old_only
56
+ end
57
+ end
58
+ end
59
+
43
60
  def evaluate_feed_definition(feed_name, &block)
44
61
  #this allow to redefine feeds if necessary
45
62
  existing_feed = @feeds[feed_name]
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'rrimm'
3
- s.version = '0.3.0'
3
+ s.version = '0.4.0'
4
4
  s.licenses = ['Apache Licence v2']
5
5
  s.summary = "RSS to email tool"
6
6
  s.description = "imm reboot in ruby. Retrieve rss feeds and send them by email"
@@ -11,9 +11,11 @@ Gem::Specification.new do |s|
11
11
  s.test_files = `git ls-files -- spec/*`.split("\n")
12
12
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
13
13
 
14
- s.add_development_dependency 'rspec'
15
- s.add_development_dependency 'coveralls'
16
14
  s.add_dependency 'open_uri_redirections'
17
15
  s.add_dependency 'parallel'
18
16
  s.add_dependency 'feedzirra'
17
+ s.add_dependency 'colorize'
18
+
19
+ s.add_development_dependency 'rspec'
20
+ s.add_development_dependency 'coveralls'
19
21
  end
metadata CHANGED
@@ -1,83 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rrimm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grégoire Seux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-15 00:00:00.000000000 Z
11
+ date: 2014-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rspec
14
+ name: open_uri_redirections
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ! '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
- type: :development
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ! '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: coveralls
28
+ name: parallel
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ! '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
- type: :development
34
+ type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ! '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: open_uri_redirections
42
+ name: feedzirra
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ! '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ! '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: parallel
56
+ name: colorize
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ! '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: feedzirra
70
+ name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ! '>='
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
- type: :runtime
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: coveralls
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - '>='
94
+ - - ! '>='
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  description: imm reboot in ruby. Retrieve rss feeds and send them by email
@@ -121,12 +135,12 @@ require_paths:
121
135
  - lib
122
136
  required_ruby_version: !ruby/object:Gem::Requirement
123
137
  requirements:
124
- - - '>='
138
+ - - ! '>='
125
139
  - !ruby/object:Gem::Version
126
140
  version: '0'
127
141
  required_rubygems_version: !ruby/object:Gem::Requirement
128
142
  requirements:
129
- - - '>='
143
+ - - ! '>='
130
144
  - !ruby/object:Gem::Version
131
145
  version: '0'
132
146
  requirements: []