earth 0.3.6 → 0.3.7

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.
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- earth (0.3.0)
5
- activerecord (>= 3.0.0.beta4)
4
+ earth (0.3.6)
5
+ activerecord (~> 3)
6
6
  cohort_scope (>= 0.0.7)
7
7
  conversions (>= 1.4.5)
8
8
  data_miner (~> 0.5.6)
@@ -29,7 +29,7 @@ GEM
29
29
  activesupport (3.0.3)
30
30
  amatch (0.2.5)
31
31
  andand (1.3.1)
32
- arel (2.0.4)
32
+ arel (2.0.6)
33
33
  blockenspiel (0.3.2)
34
34
  builder (2.1.2)
35
35
  cohort_scope (0.1.1)
@@ -57,12 +57,11 @@ GEM
57
57
  activerecord
58
58
  geokit (1.5.0)
59
59
  git (1.2.5)
60
- hoe (2.7.0)
60
+ hoe (2.8.0)
61
61
  rake (>= 0.8.7)
62
- rubyforge (>= 2.0.4)
63
62
  hpricot (0.8.3)
64
- i18n (0.4.2)
65
- jeweler (1.5.0)
63
+ i18n (0.5.0)
64
+ jeweler (1.5.1)
66
65
  bundler (~> 1.0.0)
67
66
  git (>= 1.2.5)
68
67
  rake
@@ -93,17 +92,15 @@ GEM
93
92
  libxml-ruby (>= 1.1.3)
94
93
  rubyzip (>= 0.9.1)
95
94
  spreadsheet (>= 0.6.4)
96
- rspec (2.1.0)
97
- rspec-core (~> 2.1.0)
98
- rspec-expectations (~> 2.1.0)
99
- rspec-mocks (~> 2.1.0)
100
- rspec-core (2.1.0)
101
- rspec-expectations (2.1.0)
95
+ rspec (2.2.0)
96
+ rspec-core (~> 2.2)
97
+ rspec-expectations (~> 2.2)
98
+ rspec-mocks (~> 2.2)
99
+ rspec-core (2.2.1)
100
+ rspec-expectations (2.2.0)
102
101
  diff-lcs (~> 1.1.2)
103
- rspec-mocks (2.1.0)
102
+ rspec-mocks (2.2.0)
104
103
  ruby-ole (1.2.11.1)
105
- rubyforge (2.0.4)
106
- json_pure (>= 1.1.7)
107
104
  rubyzip (0.9.4)
108
105
  sequel (3.17.0)
109
106
  sinatra (1.0)
@@ -128,18 +125,18 @@ PLATFORMS
128
125
  ruby
129
126
 
130
127
  DEPENDENCIES
131
- activerecord (>= 3.0.0.beta4)
128
+ activerecord (~> 3)
132
129
  cohort_scope (>= 0.0.7)
133
130
  conversions (>= 1.4.5)
134
131
  data_miner (~> 0.5.6)
135
132
  earth!
136
133
  falls_back_on (>= 0.0.3)
137
134
  geokit (>= 1.5.0)
138
- jeweler (= 1.5.0)
135
+ jeweler (~> 1.4)
139
136
  loose_tight_dictionary (>= 0.0.8)
140
137
  rake
141
138
  rcov
142
139
  rdoc
143
- rspec (>= 2.0.0.beta.17)
144
- sqlite3-ruby (>= 1.3.0)
140
+ rspec (~> 2)
141
+ sqlite3-ruby
145
142
  weighted_average (>= 0.0.4)
@@ -9,3 +9,4 @@ require 'earth/locality'
9
9
  require 'earth/pet'
10
10
  require 'earth/rail'
11
11
  require 'earth/residence'
12
+ require 'earth/shipping'
@@ -8,3 +8,4 @@ require 'earth/locality/data_miner'
8
8
  require 'earth/pet/data_miner'
9
9
  require 'earth/rail/data_miner'
10
10
  require 'earth/residence/data_miner'
11
+ require 'earth/shipping/data_miner'
@@ -0,0 +1,2 @@
1
+ require 'earth/shipping/carrier'
2
+ require 'earth/shipping/shipment_mode'
@@ -0,0 +1,9 @@
1
+ class Carrier < ActiveRecord::Base
2
+ set_primary_key :name
3
+
4
+ falls_back_on :corporate_emission_factor => 0.318#Carrier.average(:corporate_emission_factor)
5
+
6
+ data_miner do
7
+ tap "Brighter Planet's shipping company data", Earth.taps_server
8
+ end
9
+ end
@@ -0,0 +1,23 @@
1
+ Carrier.class_eval do
2
+ data_miner do
3
+ schema Earth.database_options do
4
+ string 'name'
5
+ float 'corporate_emission_factor'
6
+ string 'corporate_emission_factor_units'
7
+ end
8
+
9
+ import "a list of shipping companies and their characteristics",
10
+ :url => 'https://spreadsheets.google.com/pub?key=0AoQJbWqPrREqdG1ONU1HZDdZTFJNclFYVkRzR0k5Z2c&hl=en&single=true&gid=0&output=csv' do
11
+ key 'name'
12
+ store 'corporate_emission_factor', :units_field_name => 'corporate_emission_factor_units'
13
+ end
14
+
15
+ verify "All entries should have corporate_emission_factor >= 0" do
16
+ all.each do |record|
17
+ unless record[:corporate_emission_factor] >= 0
18
+ raise "Invalid corporate_emission_factor for Carrier #{record[:name]}: #{record[:corporate_emission_factor]}"
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,2 @@
1
+ require 'earth/shipping/carrier/data_miner'
2
+ require 'earth/shipping/shipment_mode/data_miner'
@@ -0,0 +1,10 @@
1
+ class ShipmentMode < ActiveRecord::Base
2
+ set_primary_key :name
3
+
4
+ falls_back_on :route_inefficiency_factor => 1.05,#ShipmentMode.where(not(:name => 'courier')).average(:route_inefficiency_factor),
5
+ :transport_emission_factor => 3.0#ShipmentMode.where(not(:name => 'courier')).average(:route_inefficiency_factor)
6
+
7
+ data_miner do
8
+ tap "Brighter Planet's shipment mode data", Earth.taps_server
9
+ end
10
+ end
@@ -0,0 +1,17 @@
1
+ ShipmentMode.class_eval do
2
+ data_miner do
3
+ schema Earth.database_options do
4
+ string 'name'
5
+ float 'route_inefficiency_factor'
6
+ float 'transport_emission_factor'
7
+ string 'transport_emission_factor_units'
8
+ end
9
+
10
+ import "a list of shipment modes and their characteristics",
11
+ :url => 'https://spreadsheets.google.com/pub?key=0AoQJbWqPrREqdGR2a2RYcEg2RnRKbkRQcXc0ZkQ5U0E&hl=en&single=true&gid=0&output=csv' do
12
+ key 'name'
13
+ store 'route_inefficiency_factor'
14
+ store 'transport_emission_factor', :units_field_name => 'transport_emission_factor_units'
15
+ end
16
+ end
17
+ end
@@ -27,7 +27,7 @@ describe Earth do
27
27
  describe '.resources' do
28
28
  it 'should get a list of resources' do
29
29
  resources = Earth.resources
30
- resources.keys.count.should == 56
30
+ resources.keys.count.should == 58
31
31
  resources['FuelType'][:domain].should == 'fuel'
32
32
  end
33
33
  it 'should exclude data_miner files' do
@@ -37,7 +37,7 @@ describe Earth do
37
37
 
38
38
  describe '.resource_names' do
39
39
  it 'should get a list of all resource names' do
40
- Earth.resource_names.count.should == 56
40
+ Earth.resource_names.count.should == 58
41
41
  Earth.resource_names.should include('Aircraft')
42
42
  Earth.resource_names.should include('Industry')
43
43
  end
@@ -49,7 +49,7 @@ describe Earth do
49
49
 
50
50
  describe '.domains' do
51
51
  it 'should return a list of all domains' do
52
- Earth.domains.should == %w{air automobile bus diet fuel hospitality industry locality pet rail residence}
52
+ Earth.domains.should == %w{air automobile bus diet fuel hospitality industry locality pet rail residence shipping}
53
53
  end
54
54
  end
55
55
  end
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: earth
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
8
7
  - 3
9
- - 6
10
- version: 0.3.6
8
+ - 7
9
+ version: 0.3.7
11
10
  platform: ruby
12
11
  authors:
13
12
  - Seamus Abshere
@@ -17,7 +16,7 @@ autorequire:
17
16
  bindir: bin
18
17
  cert_chain: []
19
18
 
20
- date: 2010-12-07 00:00:00 -05:00
19
+ date: 2010-12-10 00:00:00 -05:00
21
20
  default_executable:
22
21
  dependencies:
23
22
  - !ruby/object:Gem::Dependency
@@ -28,7 +27,6 @@ dependencies:
28
27
  requirements:
29
28
  - - ~>
30
29
  - !ruby/object:Gem::Version
31
- hash: 5
32
30
  segments:
33
31
  - 3
34
32
  version: "3"
@@ -42,7 +40,6 @@ dependencies:
42
40
  requirements:
43
41
  - - ~>
44
42
  - !ruby/object:Gem::Version
45
- hash: 7
46
43
  segments:
47
44
  - 0
48
45
  - 5
@@ -58,7 +55,6 @@ dependencies:
58
55
  requirements:
59
56
  - - ">="
60
57
  - !ruby/object:Gem::Version
61
- hash: 25
62
58
  segments:
63
59
  - 0
64
60
  - 0
@@ -74,7 +70,6 @@ dependencies:
74
70
  requirements:
75
71
  - - ">="
76
72
  - !ruby/object:Gem::Version
77
- hash: 3
78
73
  segments:
79
74
  - 1
80
75
  - 5
@@ -90,7 +85,6 @@ dependencies:
90
85
  requirements:
91
86
  - - ">="
92
87
  - !ruby/object:Gem::Version
93
- hash: 17
94
88
  segments:
95
89
  - 0
96
90
  - 0
@@ -106,7 +100,6 @@ dependencies:
106
100
  requirements:
107
101
  - - ">="
108
102
  - !ruby/object:Gem::Version
109
- hash: 13
110
103
  segments:
111
104
  - 1
112
105
  - 4
@@ -122,7 +115,6 @@ dependencies:
122
115
  requirements:
123
116
  - - ">="
124
117
  - !ruby/object:Gem::Version
125
- hash: 23
126
118
  segments:
127
119
  - 0
128
120
  - 0
@@ -138,7 +130,6 @@ dependencies:
138
130
  requirements:
139
131
  - - ">="
140
132
  - !ruby/object:Gem::Version
141
- hash: 15
142
133
  segments:
143
134
  - 0
144
135
  - 0
@@ -154,7 +145,6 @@ dependencies:
154
145
  requirements:
155
146
  - - ~>
156
147
  - !ruby/object:Gem::Version
157
- hash: 7
158
148
  segments:
159
149
  - 2
160
150
  version: "2"
@@ -168,7 +158,6 @@ dependencies:
168
158
  requirements:
169
159
  - - ">="
170
160
  - !ruby/object:Gem::Version
171
- hash: 3
172
161
  segments:
173
162
  - 0
174
163
  version: "0"
@@ -182,11 +171,10 @@ dependencies:
182
171
  requirements:
183
172
  - - ~>
184
173
  - !ruby/object:Gem::Version
185
- hash: 5
186
174
  segments:
187
175
  - 1
188
- - 5
189
- version: "1.5"
176
+ - 4
177
+ version: "1.4"
190
178
  type: :development
191
179
  version_requirements: *id011
192
180
  - !ruby/object:Gem::Dependency
@@ -197,7 +185,6 @@ dependencies:
197
185
  requirements:
198
186
  - - ">="
199
187
  - !ruby/object:Gem::Version
200
- hash: 3
201
188
  segments:
202
189
  - 0
203
190
  version: "0"
@@ -211,7 +198,6 @@ dependencies:
211
198
  requirements:
212
199
  - - ">="
213
200
  - !ruby/object:Gem::Version
214
- hash: 3
215
201
  segments:
216
202
  - 0
217
203
  version: "0"
@@ -225,12 +211,208 @@ dependencies:
225
211
  requirements:
226
212
  - - ">="
227
213
  - !ruby/object:Gem::Version
228
- hash: 3
229
214
  segments:
230
215
  - 0
231
216
  version: "0"
232
217
  type: :development
233
218
  version_requirements: *id014
219
+ - !ruby/object:Gem::Dependency
220
+ name: activerecord
221
+ prerelease: false
222
+ requirement: &id015 !ruby/object:Gem::Requirement
223
+ none: false
224
+ requirements:
225
+ - - ~>
226
+ - !ruby/object:Gem::Version
227
+ segments:
228
+ - 3
229
+ version: "3"
230
+ type: :runtime
231
+ version_requirements: *id015
232
+ - !ruby/object:Gem::Dependency
233
+ name: data_miner
234
+ prerelease: false
235
+ requirement: &id016 !ruby/object:Gem::Requirement
236
+ none: false
237
+ requirements:
238
+ - - ~>
239
+ - !ruby/object:Gem::Version
240
+ segments:
241
+ - 0
242
+ - 5
243
+ - 6
244
+ version: 0.5.6
245
+ type: :runtime
246
+ version_requirements: *id016
247
+ - !ruby/object:Gem::Dependency
248
+ name: falls_back_on
249
+ prerelease: false
250
+ requirement: &id017 !ruby/object:Gem::Requirement
251
+ none: false
252
+ requirements:
253
+ - - ">="
254
+ - !ruby/object:Gem::Version
255
+ segments:
256
+ - 0
257
+ - 0
258
+ - 3
259
+ version: 0.0.3
260
+ type: :runtime
261
+ version_requirements: *id017
262
+ - !ruby/object:Gem::Dependency
263
+ name: geokit
264
+ prerelease: false
265
+ requirement: &id018 !ruby/object:Gem::Requirement
266
+ none: false
267
+ requirements:
268
+ - - ">="
269
+ - !ruby/object:Gem::Version
270
+ segments:
271
+ - 1
272
+ - 5
273
+ - 0
274
+ version: 1.5.0
275
+ type: :runtime
276
+ version_requirements: *id018
277
+ - !ruby/object:Gem::Dependency
278
+ name: cohort_scope
279
+ prerelease: false
280
+ requirement: &id019 !ruby/object:Gem::Requirement
281
+ none: false
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ segments:
286
+ - 0
287
+ - 0
288
+ - 7
289
+ version: 0.0.7
290
+ type: :runtime
291
+ version_requirements: *id019
292
+ - !ruby/object:Gem::Dependency
293
+ name: conversions
294
+ prerelease: false
295
+ requirement: &id020 !ruby/object:Gem::Requirement
296
+ none: false
297
+ requirements:
298
+ - - ">="
299
+ - !ruby/object:Gem::Version
300
+ segments:
301
+ - 1
302
+ - 4
303
+ - 5
304
+ version: 1.4.5
305
+ type: :runtime
306
+ version_requirements: *id020
307
+ - !ruby/object:Gem::Dependency
308
+ name: weighted_average
309
+ prerelease: false
310
+ requirement: &id021 !ruby/object:Gem::Requirement
311
+ none: false
312
+ requirements:
313
+ - - ">="
314
+ - !ruby/object:Gem::Version
315
+ segments:
316
+ - 0
317
+ - 0
318
+ - 4
319
+ version: 0.0.4
320
+ type: :runtime
321
+ version_requirements: *id021
322
+ - !ruby/object:Gem::Dependency
323
+ name: loose_tight_dictionary
324
+ prerelease: false
325
+ requirement: &id022 !ruby/object:Gem::Requirement
326
+ none: false
327
+ requirements:
328
+ - - ">="
329
+ - !ruby/object:Gem::Version
330
+ segments:
331
+ - 0
332
+ - 0
333
+ - 8
334
+ version: 0.0.8
335
+ type: :runtime
336
+ version_requirements: *id022
337
+ - !ruby/object:Gem::Dependency
338
+ name: rspec
339
+ prerelease: false
340
+ requirement: &id023 !ruby/object:Gem::Requirement
341
+ none: false
342
+ requirements:
343
+ - - ~>
344
+ - !ruby/object:Gem::Version
345
+ segments:
346
+ - 2
347
+ version: "2"
348
+ type: :development
349
+ version_requirements: *id023
350
+ - !ruby/object:Gem::Dependency
351
+ name: rake
352
+ prerelease: false
353
+ requirement: &id024 !ruby/object:Gem::Requirement
354
+ none: false
355
+ requirements:
356
+ - - ">="
357
+ - !ruby/object:Gem::Version
358
+ segments:
359
+ - 0
360
+ version: "0"
361
+ type: :development
362
+ version_requirements: *id024
363
+ - !ruby/object:Gem::Dependency
364
+ name: jeweler
365
+ prerelease: false
366
+ requirement: &id025 !ruby/object:Gem::Requirement
367
+ none: false
368
+ requirements:
369
+ - - ~>
370
+ - !ruby/object:Gem::Version
371
+ segments:
372
+ - 1
373
+ - 4
374
+ version: "1.4"
375
+ type: :development
376
+ version_requirements: *id025
377
+ - !ruby/object:Gem::Dependency
378
+ name: rcov
379
+ prerelease: false
380
+ requirement: &id026 !ruby/object:Gem::Requirement
381
+ none: false
382
+ requirements:
383
+ - - ">="
384
+ - !ruby/object:Gem::Version
385
+ segments:
386
+ - 0
387
+ version: "0"
388
+ type: :development
389
+ version_requirements: *id026
390
+ - !ruby/object:Gem::Dependency
391
+ name: rdoc
392
+ prerelease: false
393
+ requirement: &id027 !ruby/object:Gem::Requirement
394
+ none: false
395
+ requirements:
396
+ - - ">="
397
+ - !ruby/object:Gem::Version
398
+ segments:
399
+ - 0
400
+ version: "0"
401
+ type: :development
402
+ version_requirements: *id027
403
+ - !ruby/object:Gem::Dependency
404
+ name: sqlite3-ruby
405
+ prerelease: false
406
+ requirement: &id028 !ruby/object:Gem::Requirement
407
+ none: false
408
+ requirements:
409
+ - - ">="
410
+ - !ruby/object:Gem::Version
411
+ segments:
412
+ - 0
413
+ version: "0"
414
+ type: :development
415
+ version_requirements: *id028
234
416
  description: An earth-simulation environment with ActiveRecord models and data
235
417
  email: andy@rossmeissl.net
236
418
  executables: []
@@ -373,6 +555,12 @@ files:
373
555
  - lib/earth/residence/residence_fuel_type/data_miner.rb
374
556
  - lib/earth/residence/residential_energy_consumption_survey_response.rb
375
557
  - lib/earth/residence/residential_energy_consumption_survey_response/data_miner.rb
558
+ - lib/earth/shipping.rb
559
+ - lib/earth/shipping/carrier.rb
560
+ - lib/earth/shipping/carrier/data_miner.rb
561
+ - lib/earth/shipping/data_miner.rb
562
+ - lib/earth/shipping/shipment_mode.rb
563
+ - lib/earth/shipping/shipment_mode/data_miner.rb
376
564
  - vendor/geokit-rails/CHANGELOG.rdoc
377
565
  - vendor/geokit-rails/MIT-LICENSE
378
566
  - vendor/geokit-rails/README.markdown
@@ -415,18 +603,18 @@ files:
415
603
  - vendor/geokit-rails/test/schema.rb
416
604
  - vendor/geokit-rails/test/tasks.rake
417
605
  - vendor/geokit-rails/test/test_helper.rb
606
+ - Gemfile
607
+ - Gemfile.lock
418
608
  - spec/earth/air/aircraft_spec.rb
419
609
  - spec/earth_spec.rb
420
610
  - spec/spec_helper.rb
421
- - Gemfile
422
- - Gemfile.lock
423
611
  has_rdoc: true
424
612
  homepage: http://github.com/brighterplanet/earth
425
613
  licenses: []
426
614
 
427
615
  post_install_message:
428
- rdoc_options:
429
- - --charset=UTF-8
616
+ rdoc_options: []
617
+
430
618
  require_paths:
431
619
  - lib
432
620
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -434,7 +622,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
434
622
  requirements:
435
623
  - - ">="
436
624
  - !ruby/object:Gem::Version
437
- hash: 3
438
625
  segments:
439
626
  - 0
440
627
  version: "0"
@@ -443,7 +630,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
443
630
  requirements:
444
631
  - - ">="
445
632
  - !ruby/object:Gem::Version
446
- hash: 3
447
633
  segments:
448
634
  - 0
449
635
  version: "0"
@@ -455,8 +641,8 @@ signing_key:
455
641
  specification_version: 3
456
642
  summary: Land, sky, and sea
457
643
  test_files:
644
+ - Gemfile
645
+ - Gemfile.lock
458
646
  - spec/earth/air/aircraft_spec.rb
459
647
  - spec/earth_spec.rb
460
648
  - spec/spec_helper.rb
461
- - Gemfile
462
- - Gemfile.lock