rsmp 0.1.36 → 0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9146bde932fc22eeb1f696e9446d063cf98942afa46ef7a876a3ae9b5e3070a
4
- data.tar.gz: 5044ef657416b04e1e6a519ded5d500d7fe6c98fcde4a1697a0e08a1540d5e3b
3
+ metadata.gz: 5561e779b1d3e8aa85dd53d2c4e4ce5a630f9405f21b095f413de002021a2201
4
+ data.tar.gz: 2546949c1d79c588a8192feb00eee640cd7b1f8f9b6327b7c78554dbd63935e0
5
5
  SHA512:
6
- metadata.gz: d914ba6a4c7b2ba491999e16be4ae5d12b39ab30482952fec8b07e11ba1801f4bbc6623684c53d0d868258f60cb86b4ddc46cfd0235736d91889b0634516f9b8
7
- data.tar.gz: a4d7f7fa683c31ed002d2a57c4f0a6f63f1bd99fd7703f25e72ce69d32073f1f19353476f91d7c597feb72ddcc4ff9b71e3108cf13e2bc7b9d0a1534115fcdf8
6
+ metadata.gz: b74bae63684ac30eca6f92446ba3a3fe670d25bc6daae7fd9a980363c13ddf66bc573f16057d58c8a3d80995e67b8c364502fcc05fe3891036afe54ec517a822
7
+ data.tar.gz: a40e8a4581a3618e0d51cd33a179fec599042fdabf811b1809b628b472b96e18b49416ad6f05692b8eeb79ba3bec26330a0775b42bdfdc56c9a4494264667b30
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rsmp (0.1.36)
5
- async (~> 1.28.7)
6
- async-io (~> 1.30.2)
4
+ rsmp (0.2)
5
+ async (~> 1.29.1)
6
+ async-io (~> 1.32.1)
7
7
  colorize (~> 0.8.1)
8
8
  rsmp_schemer
9
9
  thor (~> 1.0.1)
@@ -11,91 +11,129 @@ PATH
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- aruba (1.0.0)
15
- childprocess (~> 3.0)
16
- contracts (~> 0.16.0)
17
- cucumber (>= 2.4, < 4.0)
18
- ffi (~> 1.9)
14
+ activesupport (6.1.4)
15
+ concurrent-ruby (~> 1.0, >= 1.0.2)
16
+ i18n (>= 1.6, < 2)
17
+ minitest (>= 5.1)
18
+ tzinfo (~> 2.0)
19
+ zeitwerk (~> 2.3)
20
+ aruba (1.1.2)
21
+ bundler (>= 1.17, < 3.0)
22
+ childprocess (>= 2.0, < 5.0)
23
+ contracts (>= 0.16.0, < 0.18.0)
24
+ cucumber (>= 2.4, < 7.0)
19
25
  rspec-expectations (~> 3.4)
20
26
  thor (~> 1.0)
21
- async (1.28.9)
27
+ async (1.29.1)
22
28
  console (~> 1.10)
23
29
  nio4r (~> 2.3)
24
30
  timers (~> 4.1)
25
- async-io (1.30.2)
31
+ async-io (1.32.1)
26
32
  async (~> 1.14)
27
- backports (3.17.0)
28
33
  builder (3.2.4)
29
- childprocess (3.0.0)
34
+ childprocess (4.1.0)
30
35
  colorize (0.8.1)
36
+ concurrent-ruby (1.1.9)
31
37
  console (1.13.1)
32
38
  fiber-local
33
- contracts (0.16.0)
34
- cucumber (3.1.2)
35
- builder (>= 2.1.2)
36
- cucumber-core (~> 3.2.0)
37
- cucumber-expressions (~> 6.0.1)
38
- cucumber-wire (~> 0.0.1)
39
- diff-lcs (~> 1.3)
40
- gherkin (~> 5.1.0)
41
- multi_json (>= 1.7.5, < 2.0)
42
- multi_test (>= 0.1.2)
43
- cucumber-core (3.2.1)
44
- backports (>= 3.8.0)
45
- cucumber-tag_expressions (~> 1.1.0)
46
- gherkin (~> 5.0)
47
- cucumber-expressions (6.0.1)
48
- cucumber-tag_expressions (1.1.1)
49
- cucumber-wire (0.0.1)
50
- diff-lcs (1.3)
39
+ contracts (0.17)
40
+ cucumber (6.1.0)
41
+ builder (~> 3.2, >= 3.2.4)
42
+ cucumber-core (~> 9.0, >= 9.0.1)
43
+ cucumber-create-meta (~> 4.0, >= 4.0.0)
44
+ cucumber-cucumber-expressions (~> 12.1, >= 12.1.1)
45
+ cucumber-gherkin (~> 18.1, >= 18.1.0)
46
+ cucumber-html-formatter (~> 13.0, >= 13.0.0)
47
+ cucumber-messages (~> 15.0, >= 15.0.0)
48
+ cucumber-wire (~> 5.0, >= 5.0.1)
49
+ diff-lcs (~> 1.4, >= 1.4.4)
50
+ mime-types (~> 3.3, >= 3.3.1)
51
+ multi_test (~> 0.1, >= 0.1.2)
52
+ sys-uname (~> 1.2, >= 1.2.2)
53
+ cucumber-core (9.0.1)
54
+ cucumber-gherkin (~> 18.1, >= 18.1.0)
55
+ cucumber-messages (~> 15.0, >= 15.0.0)
56
+ cucumber-tag-expressions (~> 3.0, >= 3.0.1)
57
+ cucumber-create-meta (4.0.0)
58
+ cucumber-messages (~> 15.0, >= 15.0.0)
59
+ sys-uname (~> 1.2, >= 1.2.2)
60
+ cucumber-cucumber-expressions (12.1.1)
61
+ cucumber-gherkin (18.1.1)
62
+ cucumber-messages (~> 15.0, >= 15.0.0)
63
+ cucumber-html-formatter (13.0.0)
64
+ cucumber-messages (~> 15.0, >= 15.0.0)
65
+ cucumber-messages (15.0.0)
66
+ protobuf-cucumber (~> 3.10, >= 3.10.8)
67
+ cucumber-tag-expressions (3.0.1)
68
+ cucumber-wire (5.0.1)
69
+ cucumber-core (~> 9.0, >= 9.0.1)
70
+ cucumber-cucumber-expressions (~> 12.1, >= 12.1.1)
71
+ cucumber-messages (~> 15.0, >= 15.0.0)
72
+ diff-lcs (1.4.4)
51
73
  ecma-re-validator (0.3.0)
52
74
  regexp_parser (~> 2.0)
53
- ffi (1.12.2)
75
+ ffi (1.15.3)
54
76
  fiber-local (1.0.0)
55
- gherkin (5.1.0)
56
77
  hana (1.3.7)
78
+ i18n (1.8.10)
79
+ concurrent-ruby (~> 1.0)
57
80
  json_schemer (0.2.18)
58
81
  ecma-re-validator (~> 0.3)
59
82
  hana (~> 1.3)
60
83
  regexp_parser (~> 2.0)
61
84
  uri_template (~> 0.7)
62
- multi_json (1.14.1)
85
+ middleware (0.1.0)
86
+ mime-types (3.3.1)
87
+ mime-types-data (~> 3.2015)
88
+ mime-types-data (3.2021.0225)
89
+ minitest (5.14.4)
63
90
  multi_test (0.1.2)
64
91
  nio4r (2.5.7)
65
- rake (13.0.1)
92
+ protobuf-cucumber (3.10.8)
93
+ activesupport (>= 3.2)
94
+ middleware
95
+ thor
96
+ thread_safe
97
+ rake (13.0.3)
66
98
  regexp_parser (2.1.1)
67
- rsmp_schemer (0.3)
99
+ rsmp_schemer (0.3.1)
68
100
  json_schemer (~> 0.2.18)
69
- rspec (3.9.0)
70
- rspec-core (~> 3.9.0)
71
- rspec-expectations (~> 3.9.0)
72
- rspec-mocks (~> 3.9.0)
73
- rspec-core (3.9.1)
74
- rspec-support (~> 3.9.1)
75
- rspec-expectations (3.9.1)
101
+ rspec (3.10.0)
102
+ rspec-core (~> 3.10.0)
103
+ rspec-expectations (~> 3.10.0)
104
+ rspec-mocks (~> 3.10.0)
105
+ rspec-core (3.10.1)
106
+ rspec-support (~> 3.10.0)
107
+ rspec-expectations (3.10.1)
76
108
  diff-lcs (>= 1.2.0, < 2.0)
77
- rspec-support (~> 3.9.0)
78
- rspec-mocks (3.9.1)
109
+ rspec-support (~> 3.10.0)
110
+ rspec-mocks (3.10.2)
79
111
  diff-lcs (>= 1.2.0, < 2.0)
80
- rspec-support (~> 3.9.0)
81
- rspec-support (3.9.2)
112
+ rspec-support (~> 3.10.0)
113
+ rspec-support (3.10.2)
114
+ sys-uname (1.2.2)
115
+ ffi (~> 1.1)
82
116
  thor (1.0.1)
83
- timecop (0.9.1)
117
+ thread_safe (0.3.6)
118
+ timecop (0.9.4)
84
119
  timers (4.3.3)
120
+ tzinfo (2.0.4)
121
+ concurrent-ruby (~> 1.0)
85
122
  uri_template (0.7.0)
123
+ zeitwerk (2.4.2)
86
124
 
87
125
  PLATFORMS
88
- ruby
126
+ x86_64-darwin-20
89
127
 
90
128
  DEPENDENCIES
91
- aruba (~> 1.0.0)
92
- bundler (~> 2.2.3)
93
- cucumber (~> 3.1.2)
94
- rake (~> 13.0.1)
129
+ aruba (~> 1.1.2)
130
+ bundler (~> 2.2.21)
131
+ cucumber (~> 6.1.0)
132
+ rake (~> 13.0.3)
95
133
  rsmp!
96
- rspec (~> 3.9.0)
97
- rspec-expectations (~> 3.9.1)
98
- timecop (~> 0.9.1)
134
+ rspec (~> 3.10.0)
135
+ rspec-expectations (~> 3.10.1)
136
+ timecop (~> 0.9.4)
99
137
 
100
138
  BUNDLED WITH
101
- 2.2.3
139
+ 2.2.21
@@ -45,9 +45,11 @@ module RSMP
45
45
  @options[:timeout] = options[:timeout] if options[:timeout]
46
46
  @block = block
47
47
 
48
- listen do
49
- task.with_timeout(@options[:timeout]) do
50
- @condition.wait
48
+ unless @done
49
+ listen do
50
+ task.with_timeout(@options[:timeout]) do
51
+ @condition.wait
52
+ end
51
53
  end
52
54
  end
53
55
 
data/lib/rsmp/logger.rb CHANGED
@@ -7,6 +7,7 @@ module RSMP
7
7
  defaults = {
8
8
  'active'=>false,
9
9
  'path'=>nil,
10
+ 'stream'=>nil,
10
11
  'author'=>false,
11
12
  'color'=>true,
12
13
  'site_id'=>true,
@@ -33,7 +34,9 @@ module RSMP
33
34
  end
34
35
 
35
36
  def setup_output_destination
36
- if @settings['path']
37
+ if @settings['stream']
38
+ @stream = @settings['stream']
39
+ elsif @settings['path']
37
40
  @stream = File.open(@settings['path'],'a') # appending
38
41
  else
39
42
  @stream = $stdout
@@ -85,20 +88,19 @@ module RSMP
85
88
  def colorize level, str
86
89
  if @settings["color"] == false || @settings["color"] == nil
87
90
  str
88
- elsif @settings["color"] == true
89
- case level
90
- when :error
91
- str.colorize(:red)
92
- when :warning
93
- str.colorize(:light_yellow)
94
- when :not_acknowledged
95
- str.colorize(:cyan)
96
- when :log
97
- str.colorize(:light_blue)
98
- when :statistics
99
- str.colorize(:light_black)
100
- when :test
101
- str.colorize(:light_magenta)
91
+ elsif @settings["color"] == true || @settings["color"].is_a?(Hash)
92
+ colors = {
93
+ 'info' => 'white',
94
+ 'log' => 'light_blue',
95
+ 'test' => 'light_magenta',
96
+ 'statistics' => 'light_black',
97
+ 'not_acknowledged' => 'cyan',
98
+ 'warning' => 'light_yellow',
99
+ 'error' => 'red'
100
+ }
101
+ colors.merge! @settings["color"] if @settings["color"].is_a?(Hash)
102
+ if colors[level.to_s]
103
+ str.colorize colors[level.to_s].to_sym
102
104
  else
103
105
  str
104
106
  end
@@ -111,7 +113,7 @@ module RSMP
111
113
  end
112
114
  end
113
115
 
114
- def log item, force:false
116
+ def log item, force:false
115
117
  if output?(item, force)
116
118
  output item[:level], build_output(item)
117
119
  end
data/lib/rsmp/node.rb CHANGED
@@ -6,21 +6,21 @@ module RSMP
6
6
  include Wait
7
7
  include Inspect
8
8
 
9
- attr_reader :archive, :logger, :task, :deferred, :error_condition, :clock
9
+ attr_reader :archive, :logger, :task, :deferred, :error_queue, :clock
10
10
 
11
11
  def initialize options
12
12
  initialize_logging options
13
13
  @task = options[:task]
14
14
  @deferred = []
15
15
  @clock = Clock.new
16
- @error_condition = Async::Notification.new
16
+ @error_queue = Async::Queue.new
17
17
  end
18
18
 
19
19
  def notify_error e, options={}
20
20
  if options[:level] == :internal
21
21
  log ["#{e.to_s} in task: #{Async::Task.current.to_s}",e.backtrace].flatten.join("\n"), level: :error
22
22
  end
23
- @error_condition.signal e
23
+ @error_queue.enqueue e
24
24
  end
25
25
 
26
26
  def defer item
data/lib/rsmp/proxy.rb CHANGED
@@ -162,6 +162,8 @@ module RSMP
162
162
  begin
163
163
  now = Clock.now
164
164
  timer(now)
165
+ rescue RSMP::Schemer::Error => e
166
+ puts "Timer: Schema error: #{e}"
165
167
  rescue EOFError => e
166
168
  log "Timer: Connection closed: #{e}", level: :warning
167
169
  rescue IOError => e
@@ -246,7 +248,7 @@ module RSMP
246
248
  # TODO
247
249
  # what schema should we use to validate the intial Version and MessageAck messages?
248
250
  schemas = { core: '3.1.5' }
249
- schemas[sxl] = sxl_version if sxl
251
+ schemas[sxl] = RSMP::Schemer.sanitize_version(sxl_version) if sxl
250
252
  schemas
251
253
  end
252
254
 
@@ -261,7 +263,7 @@ module RSMP
261
263
  log_send message, reason
262
264
  rescue EOFError, IOError
263
265
  buffer_message message
264
- rescue SchemaError => e
266
+ rescue SchemaError, RSMP::Schemer::Error => e
265
267
  str = "Could not send #{message.type} because schema validation failed: #{e.message}"
266
268
  log str, message: message, level: :error
267
269
  notify_error e.exception("#{str} #{message.json}")
@@ -306,7 +308,7 @@ module RSMP
306
308
  log str, message: Malformed.new(attributes), level: :warning
307
309
  # cannot send NotAcknowledged for a malformed message since we can't read it, just ignore it
308
310
  nil
309
- rescue SchemaError => e
311
+ rescue SchemaError, RSMP::Schemer::Error => e
310
312
  str = "Received invalid #{message.type}, schema errors: #{e.message}"
311
313
  log str, message: message, level: :warning
312
314
  notify_error e.exception("#{str} #{message.json}")
@@ -36,7 +36,8 @@ module RSMP
36
36
 
37
37
  def connection_complete
38
38
  super
39
- log "Connection to site #{@site_id} established, using core #{@rsmp_version}, #{@sxl} #{@site_sxl_version}", level: :info
39
+ sanitized_sxl_version = RSMP::Schemer.sanitize_version(@site_sxl_version)
40
+ log "Connection to site #{@site_id} established, using core #{@rsmp_version}, #{@sxl} #{sanitized_sxl_version}", level: :info
40
41
  end
41
42
 
42
43
  def process_message message
@@ -313,6 +314,8 @@ module RSMP
313
314
  # store sxl version requested by site
314
315
  # TODO should check agaist site settings
315
316
  @site_sxl_version = message.attribute 'SXL'
317
+ rescue RSMP::Schemer::UnknownSchemaError => e
318
+ dont_acknowledge message, "Rejected #{message.type} message,", "#{e}"
316
319
  end
317
320
 
318
321
  def sxl_version
@@ -327,8 +330,6 @@ module RSMP
327
330
  check_rsmp_version message
328
331
  check_sxl_version message
329
332
  version_accepted message
330
- rescue RSMP::Schemer::UnknownSchemaError => e
331
- dont_acknowledge message, "Rejected #{message.type} message,", "#{e}"
332
333
  end
333
334
 
334
335
  def check_site_ids message
@@ -54,7 +54,8 @@ module RSMP
54
54
 
55
55
  def connection_complete
56
56
  super
57
- log "Connection to supervisor established, using core #{@rsmp_version}, #{sxl} #{sxl_version}", level: :info
57
+ sanitized_sxl_version = RSMP::Schemer.sanitize_version(sxl_version)
58
+ log "Connection to supervisor established, using core #{@rsmp_version}, #{sxl} #{sanitized_sxl_version}", level: :info
58
59
  start_watchdog
59
60
  end
60
61
 
@@ -131,7 +132,7 @@ module RSMP
131
132
  "fP" => 'NormalControl',
132
133
  "fS" => nil,
133
134
  "se" => component.aggregated_status_bools,
134
- "mId" => m_id
135
+ "mId" => m_id,
135
136
  })
136
137
 
137
138
  if options[:collect]
@@ -145,6 +146,15 @@ module RSMP
145
146
  send_message message, validate: options[:validate]
146
147
  message
147
148
  end
149
+
150
+ # send an invalid message
151
+ message = AggregatedStatus.new({
152
+ "aSTS" => clock.to_s,
153
+ "cId" => component.c_id,
154
+ "fP" => 'Invalid',
155
+ })
156
+ send_message message, validate: false
157
+
148
158
  end
149
159
 
150
160
  def process_aggregated_status message
data/lib/rsmp/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RSMP
2
- VERSION = "0.1.36"
2
+ VERSION = "0.2"
3
3
  end
data/rsmp.gemspec CHANGED
@@ -30,17 +30,17 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ["lib"]
32
32
 
33
- spec.add_dependency "async", "~> 1.28.7"
34
- spec.add_dependency "async-io", "~> 1.30.2"
33
+ spec.add_dependency "async", "~> 1.29.1"
34
+ spec.add_dependency "async-io", "~> 1.32.1"
35
35
  spec.add_dependency "colorize", "~> 0.8.1"
36
36
  spec.add_dependency "thor", "~> 1.0.1"
37
37
  spec.add_dependency "rsmp_schemer"
38
38
 
39
- spec.add_development_dependency "bundler", "~> 2.2.3"
40
- spec.add_development_dependency "rake", "~> 13.0.1"
41
- spec.add_development_dependency "rspec", "~> 3.9.0"
42
- spec.add_development_dependency "rspec-expectations", "~> 3.9.1"
43
- spec.add_development_dependency "timecop", "~> 0.9.1"
44
- spec.add_development_dependency "cucumber", "~> 3.1.2"
45
- spec.add_development_dependency "aruba", "~> 1.0.0"
39
+ spec.add_development_dependency "bundler", "~> 2.2.21"
40
+ spec.add_development_dependency "rake", "~> 13.0.3"
41
+ spec.add_development_dependency "rspec", "~> 3.10.0"
42
+ spec.add_development_dependency "rspec-expectations", "~> 3.10.1"
43
+ spec.add_development_dependency "timecop", "~> 0.9.4"
44
+ spec.add_development_dependency "cucumber", "~> 6.1.0"
45
+ spec.add_development_dependency "aruba" , "~> 1.1.2"
46
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsmp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.36
4
+ version: '0.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emil Tin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-06-18 00:00:00.000000000 Z
11
+ date: 2021-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.28.7
19
+ version: 1.29.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.28.7
26
+ version: 1.29.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: async-io
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.30.2
33
+ version: 1.32.1
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.30.2
40
+ version: 1.32.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: colorize
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -86,98 +86,98 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 2.2.3
89
+ version: 2.2.21
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 2.2.3
96
+ version: 2.2.21
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rake
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 13.0.1
103
+ version: 13.0.3
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 13.0.1
110
+ version: 13.0.3
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 3.9.0
117
+ version: 3.10.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 3.9.0
124
+ version: 3.10.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rspec-expectations
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 3.9.1
131
+ version: 3.10.1
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 3.9.1
138
+ version: 3.10.1
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: timecop
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 0.9.1
145
+ version: 0.9.4
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 0.9.1
152
+ version: 0.9.4
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: cucumber
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 3.1.2
159
+ version: 6.1.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 3.1.2
166
+ version: 6.1.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: aruba
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 1.0.0
173
+ version: 1.1.2
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 1.0.0
180
+ version: 1.1.2
181
181
  description: Easy RSMP site and supervisor communication.
182
182
  email:
183
183
  - zf0f@kk.dk
@@ -254,7 +254,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
254
  - !ruby/object:Gem::Version
255
255
  version: '0'
256
256
  requirements: []
257
- rubygems_version: 3.2.3
257
+ rubygems_version: 3.2.15
258
258
  signing_key:
259
259
  specification_version: 4
260
260
  summary: RoadSide Message Protocol (RSMP) library.