errands 0.0.2 → 0.0.3

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
  SHA1:
3
- metadata.gz: 0b3ec45541ab232b30e76994f6f9e157e6ce0090
4
- data.tar.gz: fab0fe7273f9ac5617597da2a114bbc4c1fceb05
3
+ metadata.gz: f60061e39afff40b9a5352c4ace02594b931fd77
4
+ data.tar.gz: c438ffbfa522ce6f7bfef3e2634cbab3b8811e70
5
5
  SHA512:
6
- metadata.gz: 8fc4027f696fc7b287b34f2fed5e9159ad7548c16ba9bfedd95e4a66854c854bde830b54dbc0c8ab2a0cc1b1317a3ed839e376974058b522a31046969ccccf14
7
- data.tar.gz: 674b812a10089f7d5829fb2f1a53f633c648270a361f4a160f4fb51863cfc6d6164e6ba2e2d629db720a7a156ad726f2849032d7c51e12e160f5397cfb812931
6
+ metadata.gz: 1b06f6443e62f63b9ef06210539200d12d88642480cbdcec1ced6cc75d198ab3d15969d460512323425af1d7eace360e26656ef4a94b17c1fc884de350b9e49a
7
+ data.tar.gz: 21c04969538540ed9d894ddba9fe46c44a9cea740a942594984772d9872a851ec24bc5deb0e09ff5a05fdf56af107c13444873ee1d7af111453905bdef085955
@@ -251,7 +251,9 @@ module Errands
251
251
  end
252
252
 
253
253
  def stopped?
254
- our[:stopped] = threads.key_sliced(stopped_threads).alive.empty?
254
+ our[:stopped] = threads.key_sliced(stopped_threads).alive.empty?.tap { |bool|
255
+ log_activity Time.now, "All activities stopped" if bool
256
+ }
255
257
  end
256
258
 
257
259
  def started?
@@ -268,6 +270,8 @@ module Errands
268
270
  rescued_loop do
269
271
  (e = events.shift) ? errands(*e) : sleep(frequency(:main_loop) || 1)
270
272
  end
273
+
274
+ log_activity Time.now, "Exiting main loop"
271
275
  end
272
276
 
273
277
  def ready_receptor!(processing)
@@ -295,7 +299,7 @@ module Errands
295
299
  else
296
300
  threads[name] = Thread.new {
297
301
  (my && my[:name] && (my[:named] = true)) || Thread.stop || (my[:named] = true)
298
- r = my[:result] = my[:loop] ? rescued_loop(&block) : block.call
302
+ r = my[:result] = my[:loop] ? rescued_loop(&block) : rescued_execution(&block)
299
303
  ["stop_#{name}", our[name] && "stop_#{his(our[name])[:type]}"].compact.each { |s| checked_send s }
300
304
  my[:deletable] && threads.delete(name)
301
305
  r
@@ -321,12 +325,23 @@ module Errands
321
325
  }.to_sym
322
326
  end
323
327
 
324
- def rescued_loop
325
- loop { our["#{my[:name]}_iteration".to_sym] = begin
326
- my[:stop] ? break : yield; Time.now
328
+ def rescued_execution
329
+ our["#{my[:name]}_iteration".to_sym] = begin
330
+ yield; Time.now
327
331
  rescue => e
328
332
  log_error e, my[:data], my
329
- end }
333
+ rescue Exception => e
334
+ #~ puts e
335
+ log_error e, my[:data], my
336
+ raise e
337
+ end
338
+ end
339
+
340
+ def rescued_loop(&block)
341
+ loop do
342
+ break if my[:stop]
343
+ rescued_execution &block
344
+ end
330
345
  end
331
346
 
332
347
  def checked_send(meth, recipient = self, *_)
@@ -343,6 +358,12 @@ module Errands
343
358
  puts(e) || puts(e.message) || puts(data) || puts(e.backtrace) || puts(_) if our[:verbose]
344
359
  end
345
360
 
361
+ def log_activity(*_)
362
+ message = _.map(&:to_s).join(" ")
363
+ # message = activity if message.empty?
364
+ puts message
365
+ end
366
+
346
367
  def startups
347
368
  self.class.startups
348
369
  .dup
@@ -1,3 +1,3 @@
1
1
  module Errands
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
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.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - lacravate
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-05-14 00:00:00.000000000 Z
11
+ date: 2018-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec