urbanopt-reopt 0.7.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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"