urbanopt-reopt 0.7.0 → 0.9.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.
@@ -1,31 +1,21 @@
1
1
  # *********************************************************************************
2
- # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
-
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
-
7
+ #
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
-
10
+ #
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
-
14
+ #
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
-
19
- # Redistribution of this software, without modification, must refer to the software
20
- # by the same designation. Redistribution of a modified version of this software
21
- # (i) may not refer to the modified version by the same designation, or by any
22
- # confusingly similar designation, and (ii) must refer to the underlying software
23
- # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
- # the term “URBANopt”, or any confusingly similar designation may not be used to
25
- # refer to any modified version of this software or any modified version of the
26
- # underlying software originally provided by Alliance without the prior written
27
- # consent of Alliance.
28
-
18
+ #
29
19
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30
20
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31
21
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -85,7 +75,7 @@ module URBANopt # :nodoc:
85
75
  lats = []
86
76
  longs = []
87
77
  scenario_report.feature_reports.each do |x|
88
- puts " ERROR: #{x.location.latitude_deg}"
78
+ @@logger.debug("Latitude '#{x.location.latitude_deg}' in feature report but not in scenario report. Adding it now.")
89
79
  if ![nil].include?(x.location.latitude_deg) && ![nil].include?(x.location.longitude_deg)
90
80
  lats.push(x.location.latitude_deg)
91
81
  longs.push(x.location.longitude_deg)
@@ -200,6 +190,29 @@ module URBANopt # :nodoc:
200
190
  return results
201
191
  end
202
192
 
193
+ def modrow(data, idx) # :nodoc:
194
+ data[$generation_timeseries_kwh_col] = $generation_timeseries_kwh[idx] || 0
195
+ data[$load_col] = $load[idx] || 0
196
+ data[$utility_to_load_col] = $utility_to_load[idx] || 0
197
+ data[$utility_to_battery_col] = $utility_to_battery[idx] || 0
198
+ data[$storage_to_load_col] = $storage_to_load[idx] || 0
199
+ data[$storage_to_grid_col] = $storage_to_grid[idx] || 0
200
+ data[$storage_soc_col] = $storage_soc[idx] || 0
201
+ data[$generator_total_col] = $generator_total[idx] || 0
202
+ data[$generator_to_battery_col] = $generator_to_battery[idx] || 0
203
+ data[$generator_to_load_col] = $generator_to_load[idx] || 0
204
+ data[$generator_to_grid_col] = $generator_to_grid[idx] || 0
205
+ data[$pv_total_col] = $pv_total[idx] || 0
206
+ data[$pv_to_battery_col] = $pv_to_battery[idx] || 0
207
+ data[$pv_to_load_col] = $pv_to_load[idx] || 0
208
+ data[$pv_to_grid_col] = $pv_to_grid[idx] || 0
209
+ data[$wind_total_col] = $wind_total[idx] || 0
210
+ data[$wind_to_battery_col] = $wind_to_battery[idx] || 0
211
+ data[$wind_to_load_col] = $wind_to_load[idx] || 0
212
+ data[$wind_to_grid_col] = $wind_to_grid[idx] || 0
213
+ return data
214
+ end
215
+
203
216
  ##
204
217
  # Updates a ScenarioReport from a \REopt Lite response
205
218
  #
@@ -222,7 +235,7 @@ module URBANopt # :nodoc:
222
235
  scenario_report.location.longitude_deg = reopt_output['inputs']['Scenario']['Site']['longitude']
223
236
 
224
237
  # Update distributed generation sizing and financials
225
-
238
+ scenario_report.distributed_generation.annual_renewable_electricity_pct = reopt_output['outputs']['Scenario']['Site']['annual_renewable_electricity_pct'] || 0
226
239
  scenario_report.distributed_generation.lcc_us_dollars = reopt_output['outputs']['Scenario']['Site']['Financial']['lcc_us_dollars'] || 0
227
240
  scenario_report.distributed_generation.npv_us_dollars = reopt_output['outputs']['Scenario']['Site']['Financial']['npv_us_dollars'] || 0
228
241
  scenario_report.distributed_generation.year_one_energy_cost_us_dollars = reopt_output['outputs']['Scenario']['Site']['ElectricTariff']['year_one_energy_cost_us_dollars'] || 0
@@ -252,22 +265,59 @@ module URBANopt # :nodoc:
252
265
 
253
266
  # Store the PV name and location in a hash
254
267
  location = {}
268
+ azimuth = {}
269
+ tilt = {}
270
+ module_type = {}
271
+ gcr = {}
255
272
  # Check whether multi PV assumption input file is used or single PV
256
273
  if reopt_output['inputs']['Scenario']['Site']['PV'].is_a?(Array)
257
274
  reopt_output['inputs']['Scenario']['Site']['PV'].each do |pv|
258
275
  location[pv['pv_name']] = pv['location']
276
+ azimuth[pv['pv_name']] = pv['azimuth']
277
+ tilt[pv['pv_name']] = pv['tilt']
278
+ module_type[pv['pv_name']] = pv['module_type']
279
+ gcr[pv['pv_name']] = pv['gcr']
259
280
  end
260
281
  else
261
282
  location[reopt_output['inputs']['Scenario']['Site']['PV']['pv_name']] = reopt_output['inputs']['Scenario']['Site']['PV']['location']
262
- end
263
-
264
- reopt_output['outputs']['Scenario']['Site']['PV'].each_with_index do |pv, i|
265
- scenario_report.distributed_generation.add_tech 'solar_pv', URBANopt::Reporting::DefaultReports::SolarPV.new({ size_kw: (pv['size_kw'] || 0), id: i, location: location[pv['pv_name']] })
283
+ azimuth[reopt_output['inputs']['Scenario']['Site']['PV']['pv_name']] = reopt_output['inputs']['Scenario']['Site']['PV']['azimuth']
284
+ tilt[reopt_output['inputs']['Scenario']['Site']['PV']['pv_name']] = reopt_output['inputs']['Scenario']['Site']['PV']['tilt']
285
+ module_type[reopt_output['inputs']['Scenario']['Site']['PV']['pv_name']] = reopt_output['inputs']['Scenario']['Site']['PV']['module_type']
286
+ gcr[reopt_output['inputs']['Scenario']['Site']['PV']['pv_name']] = reopt_output['inputs']['Scenario']['Site']['PV']['gcr']
287
+ end
288
+ pv_inputs = reopt_output['inputs']['Scenario']['Site']['PV']
289
+ if pv_inputs.is_a?(Hash)
290
+ pv_inputs = [pv_inputs]
291
+ end
292
+ pv_outputs = reopt_output['outputs']['Scenario']['Site']['PV']
293
+ if pv_outputs.is_a?(Hash)
294
+ pv_outputs = [pv_outputs]
295
+ end
296
+ pv_outputs.each_with_index do |pv, i|
297
+ if pv_inputs[i]
298
+ if pv_inputs[i]['tilt']
299
+ tilt[pv['pv_name']] = pv_inputs[i]['tilt']
300
+ end
301
+ if pv_inputs[i]['azimuth']
302
+ azimuth[pv['pv_name']] = pv_inputs[i]['azimuth']
303
+ end
304
+ if pv_inputs[i]['module_type']
305
+ module_type[pv['pv_name']] = pv_inputs[i]['module_type']
306
+ end
307
+ end
308
+ scenario_report.distributed_generation.add_tech 'solar_pv', URBANopt::Reporting::DefaultReports::SolarPV.new({ size_kw: (pv['size_kw'] || 0), id: i, location: location[pv['pv_name']], average_yearly_energy_produced_kwh: pv['average_yearly_energy_produced_kwh'], azimuth: azimuth[pv['pv_name']], tilt: tilt[pv['pv_name']], module_type: module_type[pv['pv_name']], gcr: gcr[pv['pv_name']] })
266
309
  end
267
310
 
268
311
  wind = reopt_output['outputs']['Scenario']['Site']['Wind']
269
312
  if !wind['size_kw'].nil? && (wind['size_kw'] != 0)
270
- scenario_report.distributed_generation.add_tech 'wind', URBANopt::Reporting::DefaultReports::Wind.new({ size_kw: (wind['size_kw'] || 0) })
313
+ # find size_class
314
+ size_class = nil
315
+ if reopt_output['inputs']['Scenario']['Site']['Wind']['size_class']
316
+ size_class = reopt_output['inputs']['Scenario']['Site']['Wind']['size_class']
317
+ else
318
+ size_class = 'commercial' # default
319
+ end
320
+ scenario_report.distributed_generation.add_tech 'wind', URBANopt::Reporting::DefaultReports::Wind.new({ size_kw: (wind['size_kw'] || 0), size_class: size_class, average_yearly_energy_produced_kwh: (wind['average_yearly_energy_produced_kwh'] || 0) })
271
321
  end
272
322
 
273
323
  generator = reopt_output['outputs']['Scenario']['Site']['Generator']
@@ -445,36 +495,13 @@ module URBANopt # :nodoc:
445
495
  scenario_report.timeseries_csv.column_names.push('REopt:ElectricityProduced:Wind:ToGrid(kw)')
446
496
  end
447
497
 
448
- def modrow(x, i) # :nodoc:
449
- x[$generation_timeseries_kwh_col] = $generation_timeseries_kwh[i] || 0
450
- x[$load_col] = $load[i] || 0
451
- x[$utility_to_load_col] = $utility_to_load[i] || 0
452
- x[$utility_to_battery_col] = $utility_to_battery[i] || 0
453
- x[$storage_to_load_col] = $storage_to_load[i] || 0
454
- x[$storage_to_grid_col] = $storage_to_grid[i] || 0
455
- x[$storage_soc_col] = $storage_soc[i] || 0
456
- x[$generator_total_col] = $generator_total[i] || 0
457
- x[$generator_to_battery_col] = $generator_to_battery[i] || 0
458
- x[$generator_to_load_col] = $generator_to_load[i] || 0
459
- x[$generator_to_grid_col] = $generator_to_grid[i] || 0
460
- x[$pv_total_col] = $pv_total[i] || 0
461
- x[$pv_to_battery_col] = $pv_to_battery[i] || 0
462
- x[$pv_to_load_col] = $pv_to_load[i] || 0
463
- x[$pv_to_grid_col] = $pv_to_grid[i] || 0
464
- x[$wind_total_col] = $wind_total[i] || 0
465
- x[$wind_to_battery_col] = $wind_to_battery[i] || 0
466
- x[$wind_to_load_col] = $wind_to_load[i] || 0
467
- x[$wind_to_grid_col] = $wind_to_grid[i] || 0
468
- return x
469
- end
470
-
471
498
  old_data = CSV.open(scenario_report.timeseries_csv.path).read
472
499
  start_date = Time.parse(old_data[1][0]) # Time is the end of the timestep
473
500
  start_ts = (
474
501
  (
475
502
  ((start_date.yday - 1) * 60.0 * 60.0 * 24) +
476
503
  ((start_date.hour - 1) * 60.0 * 60.0) +
477
- (start_date.min * 60.0) + start_date.sec) /
504
+ (start_date.min * 60.0) + start_date.sec) / \
478
505
  ((60 / scenario_report.timesteps_per_hour) * 60)
479
506
  ).to_int
480
507
  mod_data = old_data.map.with_index do |x, i|
@@ -1,3 +1,33 @@
1
+ # *********************************************************************************
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
+ # contributors. All rights reserved.
4
+ #
5
+ # Redistribution and use in source and binary forms, with or without modification,
6
+ # are permitted provided that the following conditions are met:
7
+ #
8
+ # Redistributions of source code must retain the above copyright notice, this list
9
+ # of conditions and the following disclaimer.
10
+ #
11
+ # Redistributions in binary form must reproduce the above copyright notice, this
12
+ # list of conditions and the following disclaimer in the documentation and/or other
13
+ # materials provided with the distribution.
14
+ #
15
+ # Neither the name of the copyright holder nor the names of its contributors may be
16
+ # used to endorse or promote products derived from this software without specific
17
+ # prior written permission.
18
+ #
19
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
+ # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22
+ # IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24
+ # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
26
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
27
+ # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
28
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
29
+ # *********************************************************************************
30
+
1
31
  def convert_powerflow_resolution(timeseries_kw, original_res, destination_res)
2
32
  if timeseries_kw.nil?
3
33
  return nil
@@ -1,31 +1,21 @@
1
1
  # *********************************************************************************
2
- # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
-
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
-
7
+ #
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
-
10
+ #
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
-
14
+ #
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
-
19
- # Redistribution of this software, without modification, must refer to the software
20
- # by the same designation. Redistribution of a modified version of this software
21
- # (i) may not refer to the modified version by the same designation, or by any
22
- # confusingly similar designation, and (ii) must refer to the underlying software
23
- # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
- # the term “URBANopt”, or any confusingly similar designation may not be used to
25
- # refer to any modified version of this software or any modified version of the
26
- # underlying software originally provided by Alliance without the prior written
27
- # consent of Alliance.
28
-
18
+ #
29
19
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30
20
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31
21
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -40,6 +30,6 @@
40
30
 
41
31
  module URBANopt # :nodoc:
42
32
  module REopt # :nodoc:
43
- VERSION = '0.7.0'.freeze
33
+ VERSION = '0.9.0'.freeze
44
34
  end
45
35
  end
@@ -1,31 +1,21 @@
1
1
  # *********************************************************************************
2
- # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
-
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
-
7
+ #
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
-
10
+ #
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
-
14
+ #
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
-
19
- # Redistribution of this software, without modification, must refer to the software
20
- # by the same designation. Redistribution of a modified version of this software
21
- # (i) may not refer to the modified version by the same designation, or by any
22
- # confusingly similar designation, and (ii) must refer to the underlying software
23
- # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
- # the term “URBANopt”, or any confusingly similar designation may not be used to
25
- # refer to any modified version of this software or any modified version of the
26
- # underlying software originally provided by Alliance without the prior written
27
- # consent of Alliance.
28
-
18
+ #
29
19
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30
20
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31
21
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -1,31 +1,21 @@
1
1
  # *********************************************************************************
2
- # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
-
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
-
7
+ #
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
-
10
+ #
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
-
14
+ #
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
-
19
- # Redistribution of this software, without modification, must refer to the software
20
- # by the same designation. Redistribution of a modified version of this software
21
- # (i) may not refer to the modified version by the same designation, or by any
22
- # confusingly similar designation, and (ii) must refer to the underlying software
23
- # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
- # the term “URBANopt”, or any confusingly similar designation may not be used to
25
- # refer to any modified version of this software or any modified version of the
26
- # underlying software originally provided by Alliance without the prior written
27
- # consent of Alliance.
28
-
18
+ #
29
19
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30
20
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31
21
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -1,31 +1,21 @@
1
1
  # *********************************************************************************
2
- # URBANopt™, Copyright (c) 2019-2021, Alliance for Sustainable Energy, LLC, and other
2
+ # URBANopt™, Copyright (c) 2019-2022, Alliance for Sustainable Energy, LLC, and other
3
3
  # contributors. All rights reserved.
4
-
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without modification,
6
6
  # are permitted provided that the following conditions are met:
7
-
7
+ #
8
8
  # Redistributions of source code must retain the above copyright notice, this list
9
9
  # of conditions and the following disclaimer.
10
-
10
+ #
11
11
  # Redistributions in binary form must reproduce the above copyright notice, this
12
12
  # list of conditions and the following disclaimer in the documentation and/or other
13
13
  # materials provided with the distribution.
14
-
14
+ #
15
15
  # Neither the name of the copyright holder nor the names of its contributors may be
16
16
  # used to endorse or promote products derived from this software without specific
17
17
  # prior written permission.
18
-
19
- # Redistribution of this software, without modification, must refer to the software
20
- # by the same designation. Redistribution of a modified version of this software
21
- # (i) may not refer to the modified version by the same designation, or by any
22
- # confusingly similar designation, and (ii) must refer to the underlying software
23
- # originally provided by Alliance as “URBANopt”. Except to comply with the foregoing,
24
- # the term “URBANopt”, or any confusingly similar designation may not be used to
25
- # refer to any modified version of this software or any modified version of the
26
- # underlying software originally provided by Alliance without the prior written
27
- # consent of Alliance.
28
-
18
+ #
29
19
  # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30
20
  # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31
21
  # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -26,10 +26,11 @@ Gem::Specification.new do |spec|
26
26
 
27
27
  spec.add_development_dependency 'bundler', '>= 2.1.0'
28
28
  spec.add_development_dependency 'rake', '~> 13.0'
29
- spec.add_development_dependency 'rdoc', '~> 4.3.0'
30
29
  spec.add_development_dependency 'rspec', '~> 3.9'
30
+ spec.add_development_dependency 'simplecov', '~> 0.18.2'
31
+ spec.add_development_dependency 'simplecov-lcov', '~> 0.8.0'
31
32
 
32
33
  spec.add_dependency 'certified', '~> 1'
33
34
  spec.add_dependency 'json_pure', '~> 2'
34
- spec.add_dependency 'urbanopt-scenario', '~> 0.7.0'
35
+ spec.add_dependency 'urbanopt-scenario', '~> 0.9.0'
35
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urbanopt-reopt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-12-08 00:00:00.000000000 Z
11
+ date: 2022-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -39,33 +39,47 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rdoc
42
+ name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 4.3.0
47
+ version: '3.9'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 4.3.0
54
+ version: '3.9'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rspec
56
+ name: simplecov
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.9'
61
+ version: 0.18.2
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.9'
68
+ version: 0.18.2
69
+ - !ruby/object:Gem::Dependency
70
+ name: simplecov-lcov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.8.0
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 0.8.0
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: certified
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +114,14 @@ dependencies:
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: 0.7.0
117
+ version: 0.9.0
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: 0.7.0
124
+ version: 0.9.0
111
125
  description: Classes and measures for utilizing the REopt Lite API within OpenStudio
112
126
  workflows.
113
127
  email:
@@ -119,6 +133,7 @@ files:
119
133
  - ".github/ISSUE_TEMPLATE/bug_report.md"
120
134
  - ".github/ISSUE_TEMPLATE/feature_request.md"
121
135
  - ".github/pull_request_template.md"
136
+ - ".github/workflows/nightly_build.yml"
122
137
  - ".gitignore"
123
138
  - ".rakeTasks"
124
139
  - ".rdoc_options"