emitter 0.4.2 → 0.5.0

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/emitter.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
  s.require_paths = ["lib"]
19
19
 
20
20
  s.add_dependency 'activesupport', '>=2.3.4'
21
- s.add_dependency 'characterizable'
21
+ s.add_dependency 'charisma', '>=0.3.0'
22
22
  s.add_dependency 'cohort_scope'
23
23
  s.add_dependency 'data_miner', '>=1.1' unless ENV['LOCAL_DATA_MINER']
24
24
  s.add_dependency 'earth' unless ENV['LOCAL_EARTH']
@@ -1,3 +1,3 @@
1
1
  module Emitter
2
- VERSION = '0.4.2'
2
+ VERSION = '0.5.0'
3
3
  end
data/lib/emitter.rb CHANGED
@@ -1,11 +1,20 @@
1
+ require 'leap'
2
+ require 'cohort_scope'
3
+ require 'charisma'
4
+ require 'data_miner'
5
+ require 'summary_judgement'
6
+ require 'falls_back_on'
7
+
1
8
  module BrighterPlanet
2
9
  module Emitter
3
10
  REQUIRED_COMPONENTS = %w{
4
11
  carbon_model
5
12
  characterization
6
- data summarization
13
+ data
7
14
  relationships
15
+ summarization
8
16
  }
17
+
9
18
  def included(base)
10
19
  base.extend ClassMethods
11
20
 
@@ -18,24 +27,18 @@ module BrighterPlanet
18
27
 
19
28
  base.instance_variable_set :@emission_scope, @emission_scope if @emission_scope
20
29
 
21
- require 'leap'
22
- require 'cohort_scope'
23
30
  base.extend ::Leap::Subject
24
31
  base.send :include, "::BrighterPlanet::#{common_camel}::CarbonModel".constantize
25
32
 
26
- require 'characterizable'
27
- base.send :include, ::Characterizable
33
+ base.send :include, ::Charisma
28
34
  base.send :include, "::BrighterPlanet::#{common_camel}::Characterization".constantize
29
- base.add_implicit_characteristics
35
+ base._add_implicit_characteristics
30
36
 
31
- require 'data_miner'
32
37
  base.send :include, "::BrighterPlanet::#{common_camel}::Data".constantize
33
38
 
34
- require 'summary_judgement'
35
39
  base.extend ::SummaryJudgement
36
40
  base.send :include, "::BrighterPlanet::#{common_camel}::Summarization".constantize
37
41
 
38
- require 'falls_back_on'
39
42
  begin
40
43
  require "#{common_name}/fallback"
41
44
  base.send :include, "::BrighterPlanet::#{common_camel}::Fallback".constantize
@@ -49,14 +52,19 @@ module BrighterPlanet
49
52
  def scope(statement)
50
53
  @emission_scope = statement
51
54
  end
52
-
55
+
53
56
  module ClassMethods
54
- def add_implicit_characteristics
55
- decisions[:emission].committees.map(&:name).reject { |c| characteristics.keys.unshift(:emission).include? c }.each do |c|
56
- characterize { has c }
57
+ def _add_implicit_characteristics
58
+ preexisting = characterization.keys
59
+ decisions[:emission].committees.reject do |committee|
60
+ committee.name == :emission or preexisting.include?(committee.name)
61
+ end.each do |committee|
62
+ characterize do
63
+ has committee.name, :options => committee.options.slice(:measures, :display_with)
64
+ end
57
65
  end
58
66
  end
59
-
67
+
60
68
  def emission_scope; @emission_scope end
61
69
  end
62
70
  end
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: emitter
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 4
8
- - 2
9
- version: 0.4.2
4
+ prerelease:
5
+ version: 0.5.0
10
6
  platform: ruby
11
7
  authors:
12
8
  - Andy Rossmeissl
@@ -18,180 +14,151 @@ autorequire:
18
14
  bindir: bin
19
15
  cert_chain: []
20
16
 
21
- date: 2011-02-24 00:00:00 -05:00
17
+ date: 2011-06-02 00:00:00 -05:00
22
18
  default_executable:
23
19
  dependencies:
24
20
  - !ruby/object:Gem::Dependency
25
21
  name: activesupport
22
+ prerelease: false
26
23
  requirement: &id001 !ruby/object:Gem::Requirement
27
24
  none: false
28
25
  requirements:
29
26
  - - ">="
30
27
  - !ruby/object:Gem::Version
31
- segments:
32
- - 2
33
- - 3
34
- - 4
35
28
  version: 2.3.4
36
29
  type: :runtime
37
- prerelease: false
38
30
  version_requirements: *id001
39
31
  - !ruby/object:Gem::Dependency
40
- name: characterizable
32
+ name: charisma
33
+ prerelease: false
41
34
  requirement: &id002 !ruby/object:Gem::Requirement
42
35
  none: false
43
36
  requirements:
44
37
  - - ">="
45
38
  - !ruby/object:Gem::Version
46
- segments:
47
- - 0
48
- version: "0"
39
+ version: 0.3.0
49
40
  type: :runtime
50
- prerelease: false
51
41
  version_requirements: *id002
52
42
  - !ruby/object:Gem::Dependency
53
43
  name: cohort_scope
44
+ prerelease: false
54
45
  requirement: &id003 !ruby/object:Gem::Requirement
55
46
  none: false
56
47
  requirements:
57
48
  - - ">="
58
49
  - !ruby/object:Gem::Version
59
- segments:
60
- - 0
61
50
  version: "0"
62
51
  type: :runtime
63
- prerelease: false
64
52
  version_requirements: *id003
65
53
  - !ruby/object:Gem::Dependency
66
54
  name: data_miner
55
+ prerelease: false
67
56
  requirement: &id004 !ruby/object:Gem::Requirement
68
57
  none: false
69
58
  requirements:
70
59
  - - ">="
71
60
  - !ruby/object:Gem::Version
72
- segments:
73
- - 1
74
- - 1
75
61
  version: "1.1"
76
62
  type: :runtime
77
- prerelease: false
78
63
  version_requirements: *id004
79
64
  - !ruby/object:Gem::Dependency
80
65
  name: earth
66
+ prerelease: false
81
67
  requirement: &id005 !ruby/object:Gem::Requirement
82
68
  none: false
83
69
  requirements:
84
70
  - - ">="
85
71
  - !ruby/object:Gem::Version
86
- segments:
87
- - 0
88
72
  version: "0"
89
73
  type: :runtime
90
- prerelease: false
91
74
  version_requirements: *id005
92
75
  - !ruby/object:Gem::Dependency
93
76
  name: falls_back_on
77
+ prerelease: false
94
78
  requirement: &id006 !ruby/object:Gem::Requirement
95
79
  none: false
96
80
  requirements:
97
81
  - - ">="
98
82
  - !ruby/object:Gem::Version
99
- segments:
100
- - 0
101
83
  version: "0"
102
84
  type: :runtime
103
- prerelease: false
104
85
  version_requirements: *id006
105
86
  - !ruby/object:Gem::Dependency
106
87
  name: leap
88
+ prerelease: false
107
89
  requirement: &id007 !ruby/object:Gem::Requirement
108
90
  none: false
109
91
  requirements:
110
92
  - - ">="
111
93
  - !ruby/object:Gem::Version
112
- segments:
113
- - 0
114
94
  version: "0"
115
95
  type: :runtime
116
- prerelease: false
117
96
  version_requirements: *id007
118
97
  - !ruby/object:Gem::Dependency
119
98
  name: summary_judgement
99
+ prerelease: false
120
100
  requirement: &id008 !ruby/object:Gem::Requirement
121
101
  none: false
122
102
  requirements:
123
103
  - - ">="
124
104
  - !ruby/object:Gem::Version
125
- segments:
126
- - 0
127
105
  version: "0"
128
106
  type: :runtime
129
- prerelease: false
130
107
  version_requirements: *id008
131
108
  - !ruby/object:Gem::Dependency
132
109
  name: timeframe
110
+ prerelease: false
133
111
  requirement: &id009 !ruby/object:Gem::Requirement
134
112
  none: false
135
113
  requirements:
136
114
  - - ">="
137
115
  - !ruby/object:Gem::Version
138
- segments:
139
- - 0
140
116
  version: "0"
141
117
  type: :runtime
142
- prerelease: false
143
118
  version_requirements: *id009
144
119
  - !ruby/object:Gem::Dependency
145
120
  name: weighted_average
121
+ prerelease: false
146
122
  requirement: &id010 !ruby/object:Gem::Requirement
147
123
  none: false
148
124
  requirements:
149
125
  - - ">="
150
126
  - !ruby/object:Gem::Version
151
- segments:
152
- - 0
153
127
  version: "0"
154
128
  type: :runtime
155
- prerelease: false
156
129
  version_requirements: *id010
157
130
  - !ruby/object:Gem::Dependency
158
131
  name: activerecord
132
+ prerelease: false
159
133
  requirement: &id011 !ruby/object:Gem::Requirement
160
134
  none: false
161
135
  requirements:
162
136
  - - ~>
163
137
  - !ruby/object:Gem::Version
164
- segments:
165
- - 3
166
138
  version: "3"
167
139
  type: :development
168
- prerelease: false
169
140
  version_requirements: *id011
170
141
  - !ruby/object:Gem::Dependency
171
142
  name: bueller
143
+ prerelease: false
172
144
  requirement: &id012 !ruby/object:Gem::Requirement
173
145
  none: false
174
146
  requirements:
175
147
  - - ">="
176
148
  - !ruby/object:Gem::Version
177
- segments:
178
- - 0
179
149
  version: "0"
180
150
  type: :development
181
- prerelease: false
182
151
  version_requirements: *id012
183
152
  - !ruby/object:Gem::Dependency
184
153
  name: sniff
154
+ prerelease: false
185
155
  requirement: &id013 !ruby/object:Gem::Requirement
186
156
  none: false
187
157
  requirements:
188
158
  - - ">="
189
159
  - !ruby/object:Gem::Version
190
- segments:
191
- - 0
192
160
  version: "0"
193
161
  type: :development
194
- prerelease: false
195
162
  version_requirements: *id013
196
163
  description: A software model in Ruby for the greenhouse gas emissions
197
164
  email: derek@brighterplanet.com
@@ -240,23 +207,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
240
207
  requirements:
241
208
  - - ">="
242
209
  - !ruby/object:Gem::Version
243
- hash: -1258509401476034243
244
- segments:
245
- - 0
246
210
  version: "0"
247
211
  required_rubygems_version: !ruby/object:Gem::Requirement
248
212
  none: false
249
213
  requirements:
250
214
  - - ">="
251
215
  - !ruby/object:Gem::Version
252
- hash: -1258509401476034243
253
- segments:
254
- - 0
255
216
  version: "0"
256
217
  requirements: []
257
218
 
258
219
  rubyforge_project:
259
- rubygems_version: 1.3.7
220
+ rubygems_version: 1.6.2
260
221
  signing_key:
261
222
  specification_version: 3
262
223
  summary: The mother of all carbon models