urbanopt-rnm-us 0.7.0 → 1.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bdb06b87fb503d6d05d2f413e69617e062dcbeeeb17f32a2b7b65644c2c99809
4
- data.tar.gz: 2a1b61684b10e2c788f43fc53efca58ed3f1f2d08c9f2cb7032f673406718428
3
+ metadata.gz: 585b08ac10a31db6334984ad14783dc5385b98980bbd132a3076c349babf93cd
4
+ data.tar.gz: 5367b86e7a52975f2185829ccc9c23f21cfdc96cdbe588416f1f8f8f0428e571
5
5
  SHA512:
6
- metadata.gz: 568d07b69a591176e090b6368298d4a19c2f3a75f7f5be9323bedbf41f9e9d40c7072b73871f4349d864bb8e45ab15af357024a819d593dc675ad2aa449a1863
7
- data.tar.gz: d6282dff725a18daf10fac2620ddd900e42d175cc403d73e05c2748aa49b0a31b7248177f694c516b35d07232cf82adce8ac44e2e7c479b035866d12120e0ece
6
+ metadata.gz: 600b27f746431a85221383a84b11225b4a25ca0c6c2022018b024469a34c13f0683badd28e0ce584824e09a01950a164723634d236b18cdc14e001aeb82c095a
7
+ data.tar.gz: 694a88cebfe9ec37201b95aa4caed90f0056785aa243702452e255e8b6eb75762a463b895528fec3016105ac9663a0b43a0b882b2431ef7ed34cac9885a61db3
@@ -2,13 +2,12 @@
2
2
  name: RNM-gem CI
3
3
 
4
4
  on:
5
- # push:
5
+ push:
6
+ workflow_dispatch:
6
7
  schedule:
7
8
  # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule
8
9
  # 5:23 am UTC (11:23pm MDT the day before) every weekday night in MDT
9
10
  - cron: '23 5 * * 2-6'
10
- pull_request:
11
- types: [review_requested]
12
11
 
13
12
  env:
14
13
  # This env var should enforce develop branch of all dependencies
@@ -19,7 +18,7 @@ jobs:
19
18
  weeknight-tests:
20
19
  runs-on: ubuntu-latest
21
20
  container:
22
- image: docker://nrel/openstudio:3.7.0
21
+ image: docker://nrel/openstudio:3.9.0
23
22
  steps:
24
23
  - uses: actions/checkout@v4
25
24
  - name: set git config options
@@ -29,8 +28,8 @@ jobs:
29
28
  - name: Update gems
30
29
  run: |
31
30
  ruby --version
31
+ bundle install
32
32
  bundle update
33
- bundle exec certified-update
34
33
  - name: Run Rspec
35
34
  run: bundle exec rspec
36
35
  - name: Upload artifacts
data/CHANGELOG.md CHANGED
@@ -1,6 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## Version 1.0.0
4
+
5
+ Date Range 01/09/24 - 01/22/25
6
+
7
+ * Upgrade to OpenStudio 3.9 and Ruby 3.2.2 by @vtnate in https://github.com/urbanopt/urbanopt-rnm-us-gem/pull/40
8
+
9
+ **Full Changelog**: https://github.com/urbanopt/urbanopt-rnm-us-gem/compare/v0.7.0...v1.0.0
10
+
3
11
  ## Version 0.7.0
12
+
4
13
  Date Range 06/30/23 - 01/09/24
5
14
 
6
15
  * remove Jenkinsfile by @vtnate in https://github.com/urbanopt/urbanopt-rnm-us-gem/pull/34
@@ -10,61 +19,66 @@ Date Range 06/30/23 - 01/09/24
10
19
  **Full Changelog**: https://github.com/urbanopt/urbanopt-rnm-us-gem/compare/v0.6.0...v0.7.0
11
20
 
12
21
  ## Version 0.6.0
22
+
13
23
  Date Range: 6/7/23 - 6/30/23
14
24
 
15
- - Update dependencies & CI for OpenStudio 3.6.1
16
- - Update license and references to the license file
17
- - Remove unnecessary dev dependency on rubocop as rubocop comes in from other dependencies
18
- - Reactivate GitHub Actions for CI
25
+ * Update dependencies & CI for OpenStudio 3.6.1
26
+ * Update license and references to the license file
27
+ * Remove unnecessary dev dependency on rubocop as rubocop comes in from other dependencies
28
+ * Reactivate GitHub Actions for CI
19
29
 
20
30
  ## Version 0.5.1
31
+
21
32
  Date Range 12/9/22 - 6/7/23
22
33
 
23
- - Fix to handle buildings with courtyard without creating additional erroneous buildings
34
+ * Fix to handle buildings with courtyard without creating additional erroneous buildings
24
35
 
25
36
  ## Version 0.5.0
37
+
26
38
  Date Range 9/30/22 - 12/8/22
27
39
 
28
- - Update dependencies for Extension Gem 0.6.0 and OpenStudio 3.5.0
40
+ * Update dependencies for Extension Gem 0.6.0 and OpenStudio 3.5.0
29
41
 
30
42
  ## Version 0.4.0
43
+
31
44
  Date Range 05/10/22 - 9/30/22
32
45
 
33
- - Breaking changes to electrical catalog used and compatible RNM-US executable.
34
- - Update API to version 2. API v1 still working for older URBANopt SDK releases but no longer working for future versions.
46
+ * Breaking changes to electrical catalog used and compatible RNM-US executable.
47
+ * Update API to version 2. API v1 still working for older URBANopt SDK releases but no longer working for future versions.
35
48
 
36
49
  ## Version 0.3.0
50
+
37
51
  Date Range 11/23/21 - 05/10/22
38
52
 
39
- - Update copyrights
53
+ * Update copyrights
40
54
 
41
55
  ## Version 0.2.0
42
56
 
43
57
  Date Range 11/09/21 - 11/22/21
44
58
 
45
- - Updated dependencies for OpenStudio 3.3
59
+ * Updated dependencies for OpenStudio 3.3
46
60
 
47
61
  ## Version 0.1.3
48
62
 
49
63
  Date Range 11/02/21 - 11/08/21
50
64
 
51
- - Fix [#11](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/11), results files are not downloading in project directory for large projects
65
+ * Fix [#11](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/11), results files are not downloading in project directory for large projects
52
66
 
53
- - Fix [#16](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/16), fix residential enums to be consistent across files and fix typo in multifamily
67
+ * Fix [#16](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/16), fix residential enums to be consistent across files and fix typo in multifamily
54
68
 
55
69
  ## Version 0.1.2
56
70
 
57
71
  Date Range 10/29/21 - 11/01/21
58
72
 
59
- - Fix [#13](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/13), update rubyzip dependency to fix conflict
73
+ * Fix [#13](https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/13), update rubyzip dependency to fix conflict
60
74
 
61
75
  ## Version 0.1.1
62
76
 
63
77
  Date Range 07/22/21 - 10/28/21
64
78
 
65
- - Fixed [#10]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/7 ), Fix peak profile generation for prosumer profiles
66
- - Fixed [#8]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/8 ), Use timestep_per_hour defined in UO feature report for the interval reporting
67
- - Fixed [#10]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/10 ), Add other residential types to prosumer/consumer calculations
79
+ * Fixed [#10]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/7 ), Fix peak profile generation for prosumer profiles
80
+ * Fixed [#8]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/8 ), Use timestep_per_hour defined in UO feature report for the interval reporting
81
+ * Fixed [#10]( https://github.com/urbanopt/urbanopt-rnm-us-gem/issues/10 ), Add other residential types to prosumer/consumer calculations
68
82
 
69
83
  ## Version 0.1.0
70
84
 
data/Gemfile CHANGED
@@ -6,16 +6,13 @@ gemspec
6
6
  # if you want to use local gems during development, use this environment variable to enable them
7
7
  allow_local = ENV['FAVOR_LOCAL_GEMS']
8
8
 
9
- # pin this dependency to avoid unicode_normalize error
10
- gem 'addressable', '2.8.1'
11
- # pin this dependency to avoid using racc dependency (which has native extensions)
12
- gem 'parser', '3.2.2.2'
13
-
14
- # Below is an example of how to configure the gemfile for developing with local gems
15
- # modify as appropriate
9
+ # gem 'openstudio-extension', github: 'NREL/openstudio-extension-gem', branch: 'develop'
16
10
 
17
11
  # if allow_local && File.exists?('../urbanopt-geojson-gem')
18
- # gem 'urbanopt-geojson', path: '../urbanopt-geojson-gem'
12
+ # gem 'urbanopt-geojson', path: '../urbanopt-geojson-gem'
19
13
  # elsif allow_local
20
- # gem 'urbanopt-geojson', github: 'URBANopt/urbanopt-geojson-gem', branch: 'os37'
14
+ # gem 'urbanopt-geojson', github: 'URBANopt/urbanopt-geojson-gem', branch: 'os39'
21
15
  # end
16
+
17
+ # Temporary! Remove this once core-gem is merged/released
18
+ # gem 'urbanopt-core', github: 'URBANopt/urbanopt-core-gem', branch: 'os39'
data/LICENSE.md CHANGED
@@ -1,4 +1,4 @@
1
- URBANopt (tm), Copyright (c) 2019-2024, Alliance for Sustainable Energy, LLC, and other
1
+ URBANopt (tm), Copyright (c) 2019-2025, Alliance for Sustainable Energy, LLC, and other
2
2
  contributors. All rights reserved.
3
3
 
4
4
  Redistribution and use in source and binary forms, with or without modification,
@@ -249,7 +249,7 @@ module URBANopt
249
249
 
250
250
  # check if zip is empty
251
251
  if Dir.empty? File.join(@rnm_dir, 'results')
252
- msg = "Error in simulation: Results.zip empty"
252
+ msg = 'Error in simulation: Results.zip empty'
253
253
  @@logger.error(msg)
254
254
  raise msg
255
255
  end
@@ -120,14 +120,14 @@ module URBANopt
120
120
 
121
121
  # method applying a similar concept of the Carson equation, but for obtaining the primitive potential coeff matrix
122
122
  # for obtaining the lines capacitance
123
- def get_primitive_potential_coeff_matrix(diamaters, images_matrix, dist_matrix)
123
+ def get_primitive_potential_coeff_matrix(diameters, images_matrix, dist_matrix)
124
124
  n_rows = images_matrix.length
125
125
  n_cols = images_matrix.length
126
126
  primitive_potential_coeff_matrix = Array.new(n_rows) { Array.new(n_rows) }
127
127
  for i in 0..n_rows - 1
128
128
  for j in 0..n_cols - 1
129
129
  if i == j
130
- primitive_potential_coeff_matrix[i][j] = 11.17689 * Math.log(images_matrix[i][j] / (diamaters[i] / 2)) # assuming relative permittivity of air of 1.4240 x 10 mF/mile
130
+ primitive_potential_coeff_matrix[i][j] = 11.17689 * Math.log(images_matrix[i][j] / (diameters[i] / 2)) # assuming relative permittivity of air of 1.4240 x 10 mF/mile
131
131
  else
132
132
  primitive_potential_coeff_matrix[i][j] = 11.17689 * Math.log(images_matrix[i][j] / dist_matrix[i][j]) # assuming relative permittivity of air of 1.4240 x 10 mF/mile
133
133
  end
@@ -202,7 +202,7 @@ module URBANopt
202
202
  else # now computing the capacitance for UG concentric neutral power lines
203
203
  material_permettivity = 2.3 # assuming using the minimum permittivity value for "cross-linked polyethlyene", as the insulation material
204
204
  free_space_permittivity = 0.0142 # in microfaraday/mile
205
- radius = (wire_list.outside_diamater_neutral[0] - wire_list.diameter_n_strand[0]) / 2 # in mm
205
+ radius = (wire_list.outside_diameter_neutral[0] - wire_list.diameter_n_strand[0]) / 2 # in mm
206
206
  radius_ft = si_to_imperial_units(radius, 'mm', 'ft')
207
207
  radius_neutral_ft = si_to_imperial_units(wire_list.diameter_n_strand[0] / 2, 'mm', 'ft')
208
208
  radius_conductor_ft = diameters_conductors_ft[0] / 2
@@ -232,7 +232,7 @@ module URBANopt
232
232
  end
233
233
  if !wire_list.r_neutral[0].nil? # computing parameters for concentric neutrals wires
234
234
  for j in 0..conc_neutrals - 1
235
- radius = (wire_list.outside_diamater_neutral[j] - wire_list.diameter_n_strand[j]) / 2
235
+ radius = (wire_list.outside_diameter_neutral[j] - wire_list.diameter_n_strand[j]) / 2
236
236
  wire_list.gmr.push(wire_list.gmr_neutral[j] * wire_list.neutral_strands[j] * (radius**(wire_list.neutral_strands[j] - 1))**(1 / wire_list.neutral_strands[j]))
237
237
  wire_list.r.push(wire_list.r_neutral[j] / wire_list.neutral_strands[j])
238
238
  for k in 0..conc_neutrals - 1
@@ -299,7 +299,7 @@ module URBANopt
299
299
  wire_list.gmr_neutral.push(wires['WIRES CATALOG'][k]['gmr neutral (mm)'])
300
300
  wire_list.neutral_strands.push(wires['WIRES CATALOG'][k]['# concentric neutral strands'])
301
301
  wire_list.diameter_n_strand.push(wires['WIRES CATALOG'][k]['concentric diameter neutral strand (mm)'])
302
- wire_list.outside_diamater_neutral.push(wires['WIRES CATALOG'][k]['concentric neutral outside diameter (mm)'])
302
+ wire_list.outside_diameter_neutral.push(wires['WIRES CATALOG'][k]['concentric neutral outside diameter (mm)'])
303
303
  end
304
304
  end
305
305
  end
@@ -123,7 +123,7 @@ module URBANopt
123
123
  when @lv_limit[:single_phase]..@lv_limit[:three_phase] # defined from the catalog (from the wires)
124
124
  phases = 3
125
125
  voltage_default = 0.48
126
- # MV and 3 phases untill 16 MVA, defined by the SMART-DS project
126
+ # MV and 3 phases until 16 MVA, defined by the SMART-DS project
127
127
  when @lv_limit[:three_phase]..16000
128
128
  phases = 3
129
129
  voltage_default = 12.47
@@ -37,7 +37,7 @@ module URBANopt
37
37
  # creating variables for x, y for each node, with the right street inclination
38
38
  x_uniform = uniform_distance * (distance_x / distance)
39
39
  y_uniform = uniform_distance * (distance_y / distance)
40
- n = 1 # counter to keep track when the number of intervals for each "distnce" is reached
40
+ n = 1 # counter to keep track when the number of intervals for each "distance" is reached
41
41
  # creating nodes in the coordinates array with the right street inclination and uniform distance among each others
42
42
  while n <= intervals
43
43
  id = identifier.to_s + "_#{i}"
@@ -64,7 +64,7 @@ module URBANopt
64
64
  # and it returns the coordinates and id of the closest node of the building to the street
65
65
  ## The new algorithm developed calculates an approximate distance: (x+y)/2, of each building-node with each street-node and compares it with the "minimum_distance"
66
66
  # this approximate distance has been defined in order to be able to disregard all the distances which are greater than the "minimum distance" computed until that moment, without being required to compute the Pithagorean Theorem, which requires a long computational time.
67
- # Therefore (x+y)/2 has been computed knowing that: if the minimum length of the hypothenuse of a right triangle is when the triangle is isosceles so when the hyphothenuse (d) is equal to d = sqrt(2)*x (where x is the distance among the nodes on the x-axis),
67
+ # Therefore (x+y)/2 has been computed knowing that: if the minimum length of the hypotenuse of a right triangle is when the triangle is isosceles so when the hyphothenuse (d) is equal to d = sqrt(2)*x (where x is the distance among the nodes on the x-axis),
68
68
  # so we can assume that x = (x+y)/2, than if d = sqrt(2)*((x+y)/2) > (x+y)/2 > minimum_distance
69
69
  # than it confirmes that x and y can be disregarded and there is no need to compute the real distance for that node since the approximate distance value (which represents the minimum possible distance for the sum of those catheti)
70
70
  # is greater than the minimum_distance that it is been compared with.
@@ -82,7 +82,7 @@ module URBANopt
82
82
  distance = (x**2 + y**2)**0.5 # the real distance between the building node and the street node is computed
83
83
  if distance < dist_min # if the new distance is lower than the minimum distance found until that moment, than this new "distance" value will be set as the minimum distance between the building node and the street node
84
84
  dist_min = distance
85
- chosen_coord = building[j] # assigning the node coordinates values and id of the building with the minimium distance to the street to chose_coord variable
85
+ chosen_coord = building[j] # assigning the node coordinates values and id of the building with the minimum distance to the street to chose_coord variable
86
86
  end
87
87
  end
88
88
  end
@@ -91,7 +91,7 @@ module URBANopt
91
91
  end
92
92
 
93
93
  # defining a method for parsing the coordinates of the substations to be passed in the RNM-US model
94
- # choose the closes coord to the street or the one in the midle of the polygon since the sub is far away from district and streets
94
+ # choose the closes coord to the street or the one in the middle of the polygon since the sub is far away from district and streets
95
95
  def sub_coordinates(points_coord, id)
96
96
  x_utm = []
97
97
  y_utm = []
@@ -123,7 +123,7 @@ module URBANopt
123
123
  streets = geojson_hash
124
124
  puts "SCENARIO FEATURES: #{scenario_features}"
125
125
  # parsing the options defined by the user to run the RNM-US with a certain % of UG cables and designing the network with only LV nodes
126
- # to be consistent in case several case-studies are run to have an homogenous parameter on how to compare the same buildings with different energy consumption
126
+ # to be consistent in case several case-studies are run to have an homogeneous parameter on how to compare the same buildings with different energy consumption
127
127
  # Use defaults and warn user if these fields are unset
128
128
  if streets.key?('project') && streets['project'].key?('underground_cables_ratio')
129
129
  ug_ratio = streets['project']['underground_cables_ratio'].to_f
@@ -42,7 +42,7 @@ module URBANopt
42
42
  end
43
43
  end
44
44
 
45
- # finding the limits on LV defined by the equipments in the catalog
45
+ # finding the limits on LV defined by the equipment in the catalog
46
46
  def catalog_limits
47
47
  catalog = JSON.parse(File.read(@extended_catalog_path))
48
48
  limit = Hash.new(0)
@@ -9,7 +9,7 @@ module URBANopt
9
9
  module RNM
10
10
  @@logger = Logger.new($stdout)
11
11
 
12
- # Definining class variable "@@logger" to log errors, info and warning messages.
12
+ # Defining class variable "@@logger" to log errors, info and warning messages.
13
13
  def self.logger
14
14
  @@logger
15
15
  end
@@ -53,7 +53,7 @@ module URBANopt
53
53
  @av_height = (height_sum / (i + 1)).to_f.round(2)
54
54
  end
55
55
 
56
- # defining a method which defines the "threshold height", in an iterative way and adding 0.1m of height until the threhold limit is reached
56
+ # defining a method which defines the "threshold height", in an iterative way and adding 0.1m of height until the threshold limit is reached
57
57
  # when the % of streets in the district above the threshold is equal to the UG rate defined by the user
58
58
  def threshold_height(street_type, ug_ratio)
59
59
  h_threshold = 0
@@ -184,7 +184,7 @@ module URBANopt
184
184
  when @lv_limit[:single_phase]..@lv_limit[:three_phase] # defined from the catalog (from the wires)
185
185
  phases = 3
186
186
  voltage_default = 0.48
187
- # MV and 3 phases untill 16 MVA defined by SMART-DS project
187
+ # MV and 3 phases until 16 MVA defined by SMART-DS project
188
188
  when @lv_limit[:three_phase]..16000
189
189
  phases = 3
190
190
  voltage_default = 12.47
@@ -10,7 +10,7 @@ module URBANopt
10
10
  module RNM
11
11
  class PrimarySubstation
12
12
  # attr_accessor :x, :y, :id
13
- # choose the closest coord to the street or the one in the midle of the polygon since the sub is far away from district and streets
13
+ # choose the closest coord to the street or the one in the middle of the polygon since the sub is far away from district and streets
14
14
  def coordinates(points_coord, id)
15
15
  x_utm = []
16
16
  y_utm = []
@@ -5,6 +5,6 @@
5
5
 
6
6
  module URBANopt
7
7
  module RNM
8
- VERSION = '0.7.0'.freeze
8
+ VERSION = '1.0.0'.freeze
9
9
  end
10
10
  end
@@ -12,7 +12,7 @@ require 'matrix'
12
12
  module URBANopt
13
13
  module RNM
14
14
  class WiresExtendedCatalog
15
- attr_accessor :x, :height, :gmr, :r, :ampacity, :diameter, :phase, :name, :type, :r_neutral, :gmr_neutral, :neutral_strands, :diameter_n_strand, :outside_diamater_neutral
15
+ attr_accessor :x, :height, :gmr, :r, :ampacity, :diameter, :phase, :name, :type, :r_neutral, :gmr_neutral, :neutral_strands, :diameter_n_strand, :outside_diameter_neutral
16
16
 
17
17
  def initialize
18
18
  self.x = []
@@ -28,7 +28,7 @@ module URBANopt
28
28
  self.gmr_neutral = []
29
29
  self.neutral_strands = []
30
30
  self.diameter_n_strand = []
31
- self.outside_diamater_neutral = []
31
+ self.outside_diameter_neutral = []
32
32
  end
33
33
  end
34
34
  end
@@ -21,21 +21,17 @@ Gem::Specification.new do |spec|
21
21
  spec.bindir = 'exe'
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib', 'catalogs']
24
- spec.required_ruby_version = '~> 2.7.0'
24
+ # We support exactly Ruby v3.2.2 because os-extension requires bundler==2.4.10 and that requires Ruby 3.2.2: https://stdgems.org/bundler/
25
+ # It would be nice to be able to use newer patches of Ruby 3.2, which would require os-extension to relax its dependency on bundler.
26
+ spec.required_ruby_version = '3.2.2'
25
27
 
26
- spec.add_dependency 'certified', '~> 1'
27
- spec.add_dependency 'faraday', '~> 1.0.1'
28
28
  spec.add_dependency 'geoutm', '~> 1.0.2'
29
+ # Matrix is in stdlib; needs to be specifically added here for compatibility with Ruby 3.2
30
+ spec.add_dependency 'matrix', '~> 0.4.2'
29
31
  spec.add_dependency 'rubyzip', '~> 2.3.2'
30
- spec.add_dependency 'urbanopt-geojson', '~> 0.11.1'
32
+ spec.add_dependency 'urbanopt-geojson', '~> 1.0.0'
31
33
 
32
- spec.add_development_dependency 'bundler', '~> 2.1'
33
- spec.add_development_dependency 'rake', '~> 13.1'
34
- spec.add_development_dependency 'rspec', '~> 3.12'
35
- # pin this dependency:
36
- spec.add_development_dependency 'parallel', '~> 1.19.1'
37
- spec.add_development_dependency 'rubocop-checkstyle_formatter', '~> 0.4.0'
38
- spec.add_development_dependency 'rubocop-performance', '~> 1.11.3'
39
- spec.add_development_dependency 'simplecov', '~> 0.18.2'
34
+ spec.add_development_dependency 'rspec', '~> 3.13'
35
+ spec.add_development_dependency 'simplecov', '~> 0.22.0'
40
36
  spec.add_development_dependency 'simplecov-lcov', '~> 0.8.0'
41
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urbanopt-rnm-us
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katherine Fleming
@@ -9,50 +9,36 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2024-01-10 00:00:00.000000000 Z
12
+ date: 2025-01-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: certified
16
- requirement: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - "~>"
19
- - !ruby/object:Gem::Version
20
- version: '1'
21
- type: :runtime
22
- prerelease: false
23
- version_requirements: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - "~>"
26
- - !ruby/object:Gem::Version
27
- version: '1'
28
- - !ruby/object:Gem::Dependency
29
- name: faraday
15
+ name: geoutm
30
16
  requirement: !ruby/object:Gem::Requirement
31
17
  requirements:
32
18
  - - "~>"
33
19
  - !ruby/object:Gem::Version
34
- version: 1.0.1
20
+ version: 1.0.2
35
21
  type: :runtime
36
22
  prerelease: false
37
23
  version_requirements: !ruby/object:Gem::Requirement
38
24
  requirements:
39
25
  - - "~>"
40
26
  - !ruby/object:Gem::Version
41
- version: 1.0.1
27
+ version: 1.0.2
42
28
  - !ruby/object:Gem::Dependency
43
- name: geoutm
29
+ name: matrix
44
30
  requirement: !ruby/object:Gem::Requirement
45
31
  requirements:
46
32
  - - "~>"
47
33
  - !ruby/object:Gem::Version
48
- version: 1.0.2
34
+ version: 0.4.2
49
35
  type: :runtime
50
36
  prerelease: false
51
37
  version_requirements: !ruby/object:Gem::Requirement
52
38
  requirements:
53
39
  - - "~>"
54
40
  - !ruby/object:Gem::Version
55
- version: 1.0.2
41
+ version: 0.4.2
56
42
  - !ruby/object:Gem::Dependency
57
43
  name: rubyzip
58
44
  requirement: !ruby/object:Gem::Requirement
@@ -73,112 +59,42 @@ dependencies:
73
59
  requirements:
74
60
  - - "~>"
75
61
  - !ruby/object:Gem::Version
76
- version: 0.11.1
62
+ version: 1.0.0
77
63
  type: :runtime
78
64
  prerelease: false
79
65
  version_requirements: !ruby/object:Gem::Requirement
80
66
  requirements:
81
67
  - - "~>"
82
68
  - !ruby/object:Gem::Version
83
- version: 0.11.1
84
- - !ruby/object:Gem::Dependency
85
- name: bundler
86
- requirement: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - "~>"
89
- - !ruby/object:Gem::Version
90
- version: '2.1'
91
- type: :development
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: '2.1'
98
- - !ruby/object:Gem::Dependency
99
- name: rake
100
- requirement: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - "~>"
103
- - !ruby/object:Gem::Version
104
- version: '13.1'
105
- type: :development
106
- prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - "~>"
110
- - !ruby/object:Gem::Version
111
- version: '13.1'
69
+ version: 1.0.0
112
70
  - !ruby/object:Gem::Dependency
113
71
  name: rspec
114
72
  requirement: !ruby/object:Gem::Requirement
115
73
  requirements:
116
74
  - - "~>"
117
75
  - !ruby/object:Gem::Version
118
- version: '3.12'
119
- type: :development
120
- prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - "~>"
124
- - !ruby/object:Gem::Version
125
- version: '3.12'
126
- - !ruby/object:Gem::Dependency
127
- name: parallel
128
- requirement: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - "~>"
131
- - !ruby/object:Gem::Version
132
- version: 1.19.1
133
- type: :development
134
- prerelease: false
135
- version_requirements: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - "~>"
138
- - !ruby/object:Gem::Version
139
- version: 1.19.1
140
- - !ruby/object:Gem::Dependency
141
- name: rubocop-checkstyle_formatter
142
- requirement: !ruby/object:Gem::Requirement
143
- requirements:
144
- - - "~>"
145
- - !ruby/object:Gem::Version
146
- version: 0.4.0
147
- type: :development
148
- prerelease: false
149
- version_requirements: !ruby/object:Gem::Requirement
150
- requirements:
151
- - - "~>"
152
- - !ruby/object:Gem::Version
153
- version: 0.4.0
154
- - !ruby/object:Gem::Dependency
155
- name: rubocop-performance
156
- requirement: !ruby/object:Gem::Requirement
157
- requirements:
158
- - - "~>"
159
- - !ruby/object:Gem::Version
160
- version: 1.11.3
76
+ version: '3.13'
161
77
  type: :development
162
78
  prerelease: false
163
79
  version_requirements: !ruby/object:Gem::Requirement
164
80
  requirements:
165
81
  - - "~>"
166
82
  - !ruby/object:Gem::Version
167
- version: 1.11.3
83
+ version: '3.13'
168
84
  - !ruby/object:Gem::Dependency
169
85
  name: simplecov
170
86
  requirement: !ruby/object:Gem::Requirement
171
87
  requirements:
172
88
  - - "~>"
173
89
  - !ruby/object:Gem::Version
174
- version: 0.18.2
90
+ version: 0.22.0
175
91
  type: :development
176
92
  prerelease: false
177
93
  version_requirements: !ruby/object:Gem::Requirement
178
94
  requirements:
179
95
  - - "~>"
180
96
  - !ruby/object:Gem::Version
181
- version: 0.18.2
97
+ version: 0.22.0
182
98
  - !ruby/object:Gem::Dependency
183
99
  name: simplecov-lcov
184
100
  requirement: !ruby/object:Gem::Requirement
@@ -252,16 +168,16 @@ require_paths:
252
168
  - catalogs
253
169
  required_ruby_version: !ruby/object:Gem::Requirement
254
170
  requirements:
255
- - - "~>"
171
+ - - '='
256
172
  - !ruby/object:Gem::Version
257
- version: 2.7.0
173
+ version: 3.2.2
258
174
  required_rubygems_version: !ruby/object:Gem::Requirement
259
175
  requirements:
260
176
  - - ">="
261
177
  - !ruby/object:Gem::Version
262
178
  version: '0'
263
179
  requirements: []
264
- rubygems_version: 3.1.4
180
+ rubygems_version: 3.4.10
265
181
  signing_key:
266
182
  specification_version: 4
267
183
  summary: Library to create input files for RNM-US