errands 0.0.5 → 0.0.6
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 +4 -4
- data/lib/errands/runner.rb +18 -10
- data/lib/errands/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ea7b04c5aa5d2dd6a5a550b3b7c62509e1f08dd
|
4
|
+
data.tar.gz: 1460f8c835a3691bd5cf8ea39580dd0aab9b99ed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 31e5d14ccabc4c01323d499a62f2dfdcf6e7e637a57463c4d45c3b2aff0224540cad7e06af99951a7b23eb803b1881619c4ee9ede3857ab46f00d9a03c4405a4
|
7
|
+
data.tar.gz: ed67aba6f40bd223851b1da3dd01f227cbe23c4a2e3381a3f9fe6a370152e00e9c5f6ae56ce83160ceae2cb166945aae6e5fecffadc31c0a9a4c8a8be77ca211
|
data/lib/errands/runner.rb
CHANGED
@@ -64,11 +64,11 @@ module Errands
|
|
64
64
|
alias_method :noop_run, :run
|
65
65
|
|
66
66
|
def started_workers(*_)
|
67
|
-
(@started_workers ||= [:worker]).concat _.map(&:to_sym)
|
67
|
+
(@started_workers ||= [:worker]).concat _.flatten.map(&:to_sym)
|
68
68
|
end
|
69
69
|
|
70
70
|
def startups
|
71
|
-
@startups ||= []
|
71
|
+
@startups ||= [:minimal_startup]
|
72
72
|
end
|
73
73
|
|
74
74
|
private
|
@@ -109,7 +109,7 @@ module Errands
|
|
109
109
|
|
110
110
|
def <<(value)
|
111
111
|
return if value.nil?
|
112
|
-
track value, my[:receptor_track]
|
112
|
+
track value, my[:receptor_track] if my
|
113
113
|
super.tap { our[:threads][@name] && our[:threads][@name].run }
|
114
114
|
end
|
115
115
|
|
@@ -181,8 +181,8 @@ module Errands
|
|
181
181
|
|
182
182
|
attr_accessor :running_mode
|
183
183
|
|
184
|
-
def start(options =
|
185
|
-
our_store!
|
184
|
+
def start(options = {})
|
185
|
+
our_store! startups.merge(options)
|
186
186
|
starter
|
187
187
|
end
|
188
188
|
|
@@ -262,6 +262,10 @@ module Errands
|
|
262
262
|
|
263
263
|
private
|
264
264
|
|
265
|
+
def minimal_startup
|
266
|
+
{ threads: Runners.new, receptors: Receptors.new }
|
267
|
+
end
|
268
|
+
|
265
269
|
def frequency(name = nil)
|
266
270
|
our[:config] && our[:config][:frequencies] && our[:config][:frequencies][name || my[:name]]
|
267
271
|
end
|
@@ -311,7 +315,9 @@ module Errands
|
|
311
315
|
end
|
312
316
|
|
313
317
|
def exiting(name, force = true)
|
314
|
-
force && Thread.current == our[name] ?
|
318
|
+
force && Thread.current == our[name] ?
|
319
|
+
errands(:exiting, name) :
|
320
|
+
our[name] && (force || our[name].stop?) && our[name].exit
|
315
321
|
wait_for name, :alive?, false
|
316
322
|
end
|
317
323
|
|
@@ -330,10 +336,8 @@ module Errands
|
|
330
336
|
our["#{my[:name]}_iteration".to_sym] = begin
|
331
337
|
my[:stop] ? break : yield; Time.now
|
332
338
|
rescue => e
|
333
|
-
my[:logged] = Time.now.to_f
|
334
339
|
log_error e, my[:data], my
|
335
340
|
rescue Exception => e
|
336
|
-
my[:logged] = Time.now.to_f
|
337
341
|
log_error e, my[:data], my
|
338
342
|
raise e
|
339
343
|
end
|
@@ -358,11 +362,15 @@ module Errands
|
|
358
362
|
end
|
359
363
|
|
360
364
|
def log_error(e, data, *_)
|
361
|
-
|
365
|
+
my[:logged] = Time.now.to_f
|
366
|
+
log_activity [ "Data : #{data}", "Error : #{e}, #{e.message}\n#{e.backtrace}",
|
367
|
+
"Context : #{_}" ].join("\n")
|
368
|
+
rescue => blunder
|
369
|
+
puts "Got #{blunder} in the process of logging error #{e}"
|
362
370
|
end
|
363
371
|
|
364
372
|
def log_activity(*_)
|
365
|
-
return unless our[:
|
373
|
+
return unless our[:verbose]
|
366
374
|
|
367
375
|
message = _.map(&:to_s).join(" ")
|
368
376
|
# message = activity if message.empty?
|
data/lib/errands/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: errands
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- lacravate
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|