eh 0.0.8 → 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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4bfd804b161c51f29a99084c06c275b3c1e1db47
4
+ data.tar.gz: eeaf921eb9cd1746ac8c5e5f482b460920b81a4a
5
+ SHA512:
6
+ metadata.gz: 1f6e3feba9c429e10e6b084b3f1c5a63477f1e8fd161a2cf5b86e4aa8d9f8af030577d77b38955bf924ad92c083b7f752f0d8c171c934ed6b59ea65a53afe203
7
+ data.tar.gz: 0f7b40f362363c4328b4e56049563bf174c6c940f123fed8cc96d7ac676e936f9da91b94b154832440033f9b988ab6bcc3e1637a675bfb5eae86ae6af9cbd494
@@ -1,4 +1,4 @@
1
- Copyright (c) 2013 Ernst van Graan, Wynand van Dyk, Hetzner (Pty) Ltd
1
+ Copyright (c) 2013 Ernst van Graan
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -25,7 +25,7 @@ o Unhandled exceptions can be logged and emailed in main() using EH::report_unha
25
25
 
26
26
  o A list of handlers can be injected to do custom handling, such as email, roll-back, etc.
27
27
 
28
- This gem is sponsored by Hetzner (Pty) Ltd - http://hetzner.co.za
28
+ This gem was sponsored by Hetzner (Pty) Ltd - http://hetzner.co.za
29
29
 
30
30
  ## Installation
31
31
 
@@ -112,15 +112,13 @@ All exceptions are passed to all handlers, regardless of exception filter. It is
112
112
  Unhandled exceptions can be logged and emailed as follows:
113
113
 
114
114
  at_exit do
115
- EH::report_unhandled(logfile = "/var/log/myapp/crash.log", email = "ernst.van.graan@hetzner.co.za")
115
+ EH::report_unhandled(logfile = "/var/log/myapp/crash.log", email = "ernstvangraan@gmail.com")
116
116
  exit EH::EX_CONFIG
117
117
  end
118
118
 
119
119
  Please send feedback and comments to the authors at:
120
120
 
121
- Ernst van Graan <ernst.van.graan@hetzner.co.za>
122
-
123
- Wynand van Dyk <wynand.van.dyk@hetzner.co.za>
121
+ Ernst van Graan <ernstvangraan@gmail>
124
122
 
125
123
  ## Contributing
126
124
 
data/eh.gemspec CHANGED
@@ -6,11 +6,11 @@ require 'eh/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "eh"
8
8
  spec.version = ErrorHandler::VERSION
9
- spec.authors = ["Ernst van Graan, Wynand van Dyk"]
10
- spec.email = ["ernst.van.graan@hetzner.co.za", "wynand.van.dyk@hetzner.co.za"]
9
+ spec.authors = ["Ernst van Graan"]
10
+ spec.email = ["ernstvangraan@gmail.com"]
11
11
  spec.description = %q{Error handler gem that allows wrapping of code blocks with support for block retry, logging, exception filtering and re-raise}
12
12
  spec.summary = %q{Error handler gem that allows wrapping of code blocks with support for block retry, logging, exception filtering and re-raise}
13
- spec.homepage = ""
13
+ spec.homepage = "https://github.com/evangraan/eh"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
@@ -1,3 +1,3 @@
1
1
  module ErrorHandler
2
- VERSION = "0.0.8"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -20,7 +20,7 @@ describe ErrorHandler do
20
20
  rescue => e
21
21
  exception = e
22
22
  end
23
- exception.nil?.should == true
23
+ expect(exception.nil?).to eq(true)
24
24
  end
25
25
 
26
26
  it "should not retry" do
@@ -32,11 +32,11 @@ describe ErrorHandler do
32
32
  end
33
33
  rescue => e
34
34
  end
35
- count.should == 1
35
+ expect(count).to eq(1)
36
36
  end
37
37
 
38
38
  it "should log the message specified with the exception appended, using the logger specified" do
39
- @logger.should_receive(:error).with("the message: RuntimeError")
39
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
40
40
  begin
41
41
  EH::run(:logger => @logger, :message => "the message") do
42
42
  raise RuntimeError
@@ -45,7 +45,7 @@ describe ErrorHandler do
45
45
  end
46
46
 
47
47
  it "should inform all handlers specified of the message and exception" do
48
- @mailer.should_receive(:handle)
48
+ expect(@mailer).to receive(:handle)
49
49
  @handler2 = MockMailer.new
50
50
  begin
51
51
  EH::run(:handlers => [@mailer, @handler2], :message => "the message") do
@@ -53,8 +53,8 @@ describe ErrorHandler do
53
53
  end
54
54
  end
55
55
 
56
- @handler2.e.class.should == RuntimeError
57
- @handler2.msg.should == "the message: RuntimeError"
56
+ expect(@handler2.e.class).to eq(RuntimeError)
57
+ expect(@handler2.msg).to eq("the message: RuntimeError")
58
58
  end
59
59
 
60
60
  it "should inform a specified handler of the message and exception" do
@@ -64,12 +64,12 @@ describe ErrorHandler do
64
64
  end
65
65
  end
66
66
 
67
- @mailer.e.class.should == RuntimeError
68
- @mailer.msg.should == "the message: RuntimeError"
67
+ expect(@mailer.e.class).to eq(RuntimeError)
68
+ expect(@mailer.msg).to eq("the message: RuntimeError")
69
69
  end
70
70
 
71
71
  it "should log the message specified with the exception appended, if the exception is in :exception_filter, using the logger specified" do
72
- @logger.should_receive(:error).with("the message: RuntimeError")
72
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
73
73
  begin
74
74
  EH::run(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
75
75
  raise RuntimeError
@@ -78,7 +78,7 @@ describe ErrorHandler do
78
78
  end
79
79
 
80
80
  it "should not log, if :exception_filter is specified and the exception is not in :exception_filter" do
81
- @logger.should_not_receive(:error)
81
+ expect(@logger).not_to receive(:error)
82
82
  begin
83
83
  EH::run(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
84
84
  raise IOError
@@ -87,7 +87,7 @@ describe ErrorHandler do
87
87
  end
88
88
 
89
89
  it "should log using the level specified" do
90
- @logger.should_receive(:warn).with("the message: RuntimeError")
90
+ expect(@logger).to receive(:warn).with("the message: RuntimeError")
91
91
  begin
92
92
  EH::run(:logger => @logger, :message => "the message", :level => EH::WARN) do
93
93
  raise RuntimeError
@@ -106,7 +106,7 @@ describe ErrorHandler do
106
106
  rescue => e
107
107
  exception = e
108
108
  end
109
- exception.class.should == RuntimeError
109
+ expect(exception.class).to eq(RuntimeError)
110
110
  end
111
111
 
112
112
  it "should re-raise all exceptions if asked to (no exception filter provided)" do
@@ -118,7 +118,7 @@ describe ErrorHandler do
118
118
  rescue => e
119
119
  exception = e
120
120
  end
121
- exception.class.should == RuntimeError
121
+ expect(exception.class).to eq(RuntimeError)
122
122
  end
123
123
 
124
124
  it "should re-raise all exceptions if asked to (empty exception filter provided)" do
@@ -130,7 +130,7 @@ describe ErrorHandler do
130
130
  rescue => e
131
131
  exception = e
132
132
  end
133
- exception.class.should == RuntimeError
133
+ expect(exception.class).to eq(RuntimeError)
134
134
  end
135
135
 
136
136
  it "should not retry" do
@@ -142,11 +142,11 @@ describe ErrorHandler do
142
142
  end
143
143
  rescue => e
144
144
  end
145
- count.should == 1
145
+ expect(count).to eq(1)
146
146
  end
147
147
 
148
148
  it "should log the message specified with the exception appended, using the logger specified" do
149
- @logger.should_receive(:error).with("the message: RuntimeError")
149
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
150
150
  begin
151
151
  EH::run!(:logger => @logger, :message => "the message") do
152
152
  raise RuntimeError
@@ -156,7 +156,7 @@ describe ErrorHandler do
156
156
  end
157
157
 
158
158
  it "should inform all handlers specified of the message and exception" do
159
- @mailer.should_receive(:handle)
159
+ expect(@mailer).to receive(:handle)
160
160
  @handler2 = MockMailer.new
161
161
  begin
162
162
  EH::run(:handlers => [@mailer, @handler2], :message => "the message") do
@@ -165,8 +165,8 @@ describe ErrorHandler do
165
165
  rescue => e
166
166
  end
167
167
 
168
- @handler2.e.class.should == RuntimeError
169
- @handler2.msg.should == "the message: RuntimeError"
168
+ expect(@handler2.e.class).to eq(RuntimeError)
169
+ expect(@handler2.msg).to eq("the message: RuntimeError")
170
170
  end
171
171
 
172
172
  it "should inform a specified handler of the message and exception" do
@@ -177,12 +177,12 @@ describe ErrorHandler do
177
177
  rescue => e
178
178
  end
179
179
 
180
- @mailer.e.class.should == RuntimeError
181
- @mailer.msg.should == "the message: RuntimeError"
180
+ expect(@mailer.e.class).to eq(RuntimeError)
181
+ expect(@mailer.msg).to eq("the message: RuntimeError")
182
182
  end
183
183
 
184
184
  it "should log the message specified with the exception appended, if the exception is in :exception_filter, using the logger specified" do
185
- @logger.should_receive(:error).with("the message: RuntimeError")
185
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
186
186
  begin
187
187
  EH::run!(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
188
188
  raise RuntimeError
@@ -192,7 +192,7 @@ describe ErrorHandler do
192
192
  end
193
193
 
194
194
  it "should not log, if :exception_filter is specified and the exception is not in :exception_filter" do
195
- @logger.should_not_receive(:error)
195
+ expect(@logger).not_to receive(:error)
196
196
  begin
197
197
  EH::run!(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
198
198
  raise IOError
@@ -202,7 +202,7 @@ describe ErrorHandler do
202
202
  end
203
203
 
204
204
  it "should log using the level specified" do
205
- @logger.should_receive(:warn).with("the message: RuntimeError")
205
+ expect(@logger).to receive(:warn).with("the message: RuntimeError")
206
206
  begin
207
207
  EH::run!(:logger => @logger, :message => "the message", :level => EH::WARN) do
208
208
  raise RuntimeError
@@ -224,7 +224,7 @@ describe ErrorHandler do
224
224
  rescue => e
225
225
  exception = e
226
226
  end
227
- exception.nil?.should == true
227
+ expect(exception.nil?).to eq(true)
228
228
  end
229
229
 
230
230
  it "should retry" do
@@ -235,7 +235,7 @@ describe ErrorHandler do
235
235
  raise RuntimeError
236
236
  end
237
237
  end
238
- count.should == 3
238
+ expect(count).to eq(3)
239
239
  end
240
240
 
241
241
  it "should return true if the code succeeds after retry" do
@@ -246,7 +246,7 @@ describe ErrorHandler do
246
246
  raise RuntimeError if count < 2
247
247
  end
248
248
  end
249
- result.should == true
249
+ expect(result).to eq(true)
250
250
  end
251
251
 
252
252
  it "should return false if the code does not succeed after retry" do
@@ -255,7 +255,7 @@ describe ErrorHandler do
255
255
  raise RuntimeError
256
256
  end
257
257
  end
258
- result.should == false
258
+ expect(result).to eq(false)
259
259
  end
260
260
 
261
261
  it "should attempt the number of retries specified in :threshold" do
@@ -266,7 +266,7 @@ describe ErrorHandler do
266
266
  raise RuntimeError
267
267
  end
268
268
  end
269
- count.should == 5
269
+ expect(count).to eq(5)
270
270
  end
271
271
 
272
272
  it "should delay between intervals as specified in :delay" do
@@ -277,11 +277,11 @@ describe ErrorHandler do
277
277
  end
278
278
  end
279
279
  post = Time.now
280
- (post - pre > 0.6).should == true
280
+ expect(post - pre > 0.6).to eq(true)
281
281
  end
282
282
 
283
283
  it "should log the message specified with the exception appended, using the logger specified" do
284
- @logger.should_receive(:error).with("the message: RuntimeError")
284
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
285
285
  begin
286
286
  EH::retry(:logger => @logger, :message => "the message") do
287
287
  raise RuntimeError
@@ -290,7 +290,7 @@ describe ErrorHandler do
290
290
  end
291
291
 
292
292
  it "should inform all handlers specified of the message and exception" do
293
- @mailer.should_receive(:handle)
293
+ expect(@mailer).to receive(:handle)
294
294
  @handler2 = MockMailer.new
295
295
  begin
296
296
  EH::run(:handlers => [@mailer, @handler2], :message => "the message") do
@@ -298,8 +298,8 @@ describe ErrorHandler do
298
298
  end
299
299
  end
300
300
 
301
- @handler2.e.class.should == RuntimeError
302
- @handler2.msg.should == "the message: RuntimeError"
301
+ expect(@handler2.e.class).to eq(RuntimeError)
302
+ expect(@handler2.msg).to eq("the message: RuntimeError")
303
303
  end
304
304
 
305
305
  it "should inform a specified handler of the message and exception" do
@@ -309,12 +309,12 @@ describe ErrorHandler do
309
309
  end
310
310
  end
311
311
 
312
- @mailer.e.class.should == RuntimeError
313
- @mailer.msg.should == "the message: RuntimeError"
312
+ expect(@mailer.e.class).to eq(RuntimeError)
313
+ expect(@mailer.msg).to eq("the message: RuntimeError")
314
314
  end
315
315
 
316
316
  it "should log the message specified with the exception appended, if the exception is in :exception_filter, using the logger specified" do
317
- @logger.should_receive(:error).with("the message: RuntimeError")
317
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
318
318
  begin
319
319
  EH::retry(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
320
320
  raise RuntimeError
@@ -323,7 +323,7 @@ describe ErrorHandler do
323
323
  end
324
324
 
325
325
  it "should not log, if :exception_filter is specified and the exception is not in :exception_filter" do
326
- @logger.should_not_receive(:error)
326
+ expect(@logger).not_to receive(:error)
327
327
  begin
328
328
  EH::retry(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
329
329
  raise IOError
@@ -332,7 +332,7 @@ describe ErrorHandler do
332
332
  end
333
333
 
334
334
  it "should log using the level specified" do
335
- @logger.should_receive(:warn).with("the message: RuntimeError")
335
+ expect(@logger).to receive(:warn).with("the message: RuntimeError")
336
336
  begin
337
337
  EH::retry(:logger => @logger, :message => "the message", :level => EH::WARN) do
338
338
  raise RuntimeError
@@ -351,7 +351,7 @@ describe ErrorHandler do
351
351
  rescue => e
352
352
  exception = e
353
353
  end
354
- exception.class.should == RuntimeError
354
+ expect(exception.class).to eq(RuntimeError)
355
355
  end
356
356
 
357
357
  it "should retry" do
@@ -363,7 +363,7 @@ describe ErrorHandler do
363
363
  end
364
364
  rescue => e
365
365
  end
366
- count.should == 3
366
+ expect(count).to eq(3)
367
367
  end
368
368
 
369
369
  it "should attempt the number of retries specified in :threshold" do
@@ -375,7 +375,7 @@ describe ErrorHandler do
375
375
  end
376
376
  rescue => e
377
377
  end
378
- count.should == 5
378
+ expect(count).to eq(5)
379
379
  end
380
380
 
381
381
  it "should delay between intervals as specified in :delay" do
@@ -387,11 +387,11 @@ describe ErrorHandler do
387
387
  rescue => e
388
388
  end
389
389
  post = Time.now
390
- (post - pre > 0.6).should == true
390
+ expect(post - pre > 0.6).to eq(true)
391
391
  end
392
392
 
393
393
  it "should log the message specified with the exception appended, using the logger specified" do
394
- @logger.should_receive(:error).with("the message: RuntimeError")
394
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
395
395
  begin
396
396
  EH::retry!(:logger => @logger, :message => "the message") do
397
397
  raise RuntimeError
@@ -401,7 +401,7 @@ describe ErrorHandler do
401
401
  end
402
402
 
403
403
  it "should inform all handlers specified of the message and exception" do
404
- @mailer.should_receive(:handle)
404
+ expect(@mailer).to receive(:handle)
405
405
  @handler2 = MockMailer.new
406
406
  begin
407
407
  EH::run(:handlers => [@mailer, @handler2], :message => "the message") do
@@ -410,8 +410,8 @@ describe ErrorHandler do
410
410
  rescue => e
411
411
  end
412
412
 
413
- @handler2.e.class.should == RuntimeError
414
- @handler2.msg.should == "the message: RuntimeError"
413
+ expect(@handler2.e.class).to eq(RuntimeError)
414
+ expect(@handler2.msg).to eq("the message: RuntimeError")
415
415
  end
416
416
 
417
417
  it "should inform a specified handler of the message and exception" do
@@ -422,12 +422,12 @@ describe ErrorHandler do
422
422
  rescue => e
423
423
  end
424
424
 
425
- @mailer.e.class.should == RuntimeError
426
- @mailer.msg.should == "the message: RuntimeError"
425
+ expect(@mailer.e.class).to eq(RuntimeError)
426
+ expect(@mailer.msg).to eq("the message: RuntimeError")
427
427
  end
428
428
 
429
429
  it "should log the message specified with the exception appended, if the exception is in :exception_filter, using the logger specified" do
430
- @logger.should_receive(:error).with("the message: RuntimeError")
430
+ expect(@logger).to receive(:error).with("the message: RuntimeError")
431
431
  begin
432
432
  EH::retry!(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
433
433
  raise RuntimeError
@@ -437,7 +437,7 @@ describe ErrorHandler do
437
437
  end
438
438
 
439
439
  it "should not log, if :exception_filter is specified and the exception is not in :exception_filter" do
440
- @logger.should_not_receive(:error)
440
+ expect(@logger).not_to receive(:error)
441
441
  begin
442
442
  EH::retry!(:logger => @logger, :message => "the message", :exception_filter => [RuntimeError]) do
443
443
  raise IOError
@@ -447,7 +447,7 @@ describe ErrorHandler do
447
447
  end
448
448
 
449
449
  it "should log using the level specified" do
450
- @logger.should_receive(:warn).with("the message: RuntimeError")
450
+ expect(@logger).to receive(:warn).with("the message: RuntimeError")
451
451
  begin
452
452
  EH::retry!(:logger => @logger, :message => "the message", :level => EH::WARN) do
453
453
  raise RuntimeError
@@ -460,46 +460,46 @@ describe ErrorHandler do
460
460
 
461
461
  context "when asked to log" do
462
462
  it "should log to a single logger provided, with the message specified, at the level specified" do
463
- @logger.should_receive(:info).with("testing single logging")
463
+ expect(@logger).to receive(:info).with("testing single logging")
464
464
  EH::log(@logger, "testing single logging", EH::INFO)
465
465
  end
466
466
 
467
467
  it "should log to a single logger provided, with the message specified, at the level specified" do
468
468
  @logger2 = MockLogger.new
469
469
 
470
- @logger.should_receive(:debug).with("testing single logging")
471
- @logger2.should_receive(:debug).with("testing single logging")
470
+ expect(@logger).to receive(:debug).with("testing single logging")
471
+ expect(@logger2).to receive(:debug).with("testing single logging")
472
472
  EH::log([@logger, @logger2], "testing single logging", EH::DEBUG)
473
473
  end
474
474
 
475
475
  it "should log at all log levels" do
476
- @logger.should_receive(:info)
476
+ expect(@logger).to receive(:info)
477
477
  EH::log(@logger, "info", EH::INFO)
478
478
 
479
- @logger.should_receive(:debug)
479
+ expect(@logger).to receive(:debug)
480
480
  EH::log(@logger, "debug", EH::DEBUG)
481
481
 
482
- @logger.should_receive(:error)
482
+ expect(@logger).to receive(:error)
483
483
  EH::log(@logger, "error", EH::ERROR)
484
484
 
485
- @logger.should_receive(:warn)
485
+ expect(@logger).to receive(:warn)
486
486
  EH::log(@logger, "warn", EH::WARN)
487
487
 
488
- @logger.should_receive(:fatal)
488
+ expect(@logger).to receive(:fatal)
489
489
  EH::log(@logger, "fatal", EH::FATAL)
490
490
  end
491
491
 
492
492
  it "should log using 'warn' if a nil single logger is provided" do
493
- EH::should_receive(:warn).with "fatal: fatal"
493
+ expect(EH).to receive(:warn).with "fatal: fatal"
494
494
 
495
495
  EH::log(nil, "fatal", EH::FATAL)
496
496
  end
497
497
 
498
498
  it "should not log if nil is provided in a list of loggers, and 'warn' should not be called" do
499
- @logger::should_receive(:fatal).once().with "fatal"
500
- EH::should_not_receive(:warn)
499
+ expect(@logger).to receive(:fatal).once().with "fatal"
500
+ expect(EH).not_to receive(:warn)
501
501
 
502
502
  EH::log([nil, @logger], "fatal", EH::FATAL)
503
503
  end
504
504
  end
505
- end
505
+ end
@@ -4,7 +4,7 @@ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
4
4
  $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib', 'eh'))
5
5
 
6
6
  RSpec.configure do |config|
7
- config.treat_symbols_as_metadata_keys_with_true_values = true
7
+ #config.treat_symbols_as_metadata_keys_with_true_values = true
8
8
  config.run_all_when_everything_filtered = true
9
9
  config.filter_run :focus
10
10
 
metadata CHANGED
@@ -1,96 +1,84 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: eh
3
- version: !ruby/object:Gem::Version
4
- hash: 15
5
- prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 8
10
- version: 0.0.8
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
11
5
  platform: ruby
12
- authors:
13
- - Ernst van Graan, Wynand van Dyk
6
+ authors:
7
+ - Ernst van Graan
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2013-04-24 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
11
+ date: 2016-07-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
21
14
  name: bundler
22
- prerelease: false
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
23
20
  type: :development
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 9
30
- segments:
31
- - 1
32
- - 3
33
- version: "1.3"
34
- requirement: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: rake
37
21
  prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
38
34
  type: :development
39
- version_requirements: &id002 !ruby/object:Gem::Requirement
40
- none: false
41
- requirements:
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
42
38
  - - ">="
43
- - !ruby/object:Gem::Version
44
- hash: 3
45
- segments:
46
- - 0
47
- version: "0"
48
- requirement: *id002
49
- - !ruby/object:Gem::Dependency
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
50
42
  name: rspec
51
- prerelease: false
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
52
48
  type: :development
53
- version_requirements: &id003 !ruby/object:Gem::Requirement
54
- none: false
55
- requirements:
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
56
52
  - - ">="
57
- - !ruby/object:Gem::Version
58
- hash: 3
59
- segments:
60
- - 0
61
- version: "0"
62
- requirement: *id003
63
- - !ruby/object:Gem::Dependency
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
64
56
  name: simplecov
65
- prerelease: false
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
66
62
  type: :development
67
- version_requirements: &id004 !ruby/object:Gem::Requirement
68
- none: false
69
- requirements:
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
70
66
  - - ">="
71
- - !ruby/object:Gem::Version
72
- hash: 3
73
- segments:
74
- - 0
75
- version: "0"
76
- requirement: *id004
77
- description: Error handler gem that allows wrapping of code blocks with support for block retry, logging, exception filtering and re-raise
78
- email:
79
- - ernst.van.graan@hetzner.co.za
80
- - wynand.van.dyk@hetzner.co.za
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ description: Error handler gem that allows wrapping of code blocks with support for
70
+ block retry, logging, exception filtering and re-raise
71
+ email:
72
+ - ernstvangraan@gmail.com
81
73
  executables: []
82
-
83
74
  extensions: []
84
-
85
75
  extra_rdoc_files: []
86
-
87
- files:
88
- - .gitignore
76
+ files:
77
+ - ".gitignore"
89
78
  - Gemfile
90
79
  - LICENSE.txt
91
80
  - README.md
92
81
  - Rakefile
93
- - backlog
94
82
  - eh.gemspec
95
83
  - lib/eh/eh.rb
96
84
  - lib/eh/version.rb
@@ -99,41 +87,34 @@ files:
99
87
  - spec/mock_logger.rb
100
88
  - spec/mock_mailer.rb
101
89
  - spec/spec_helper.rb
102
- homepage: ""
103
- licenses:
90
+ homepage: https://github.com/evangraan/eh
91
+ licenses:
104
92
  - MIT
93
+ metadata: {}
105
94
  post_install_message:
106
95
  rdoc_options: []
107
-
108
- require_paths:
96
+ require_paths:
109
97
  - lib
110
- required_ruby_version: !ruby/object:Gem::Requirement
111
- none: false
112
- requirements:
98
+ required_ruby_version: !ruby/object:Gem::Requirement
99
+ requirements:
113
100
  - - ">="
114
- - !ruby/object:Gem::Version
115
- hash: 3
116
- segments:
117
- - 0
118
- version: "0"
119
- required_rubygems_version: !ruby/object:Gem::Requirement
120
- none: false
121
- requirements:
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ required_rubygems_version: !ruby/object:Gem::Requirement
104
+ requirements:
122
105
  - - ">="
123
- - !ruby/object:Gem::Version
124
- hash: 3
125
- segments:
126
- - 0
127
- version: "0"
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
128
108
  requirements: []
129
-
130
109
  rubyforge_project:
131
- rubygems_version: 1.8.24
110
+ rubygems_version: 2.4.8
132
111
  signing_key:
133
- specification_version: 3
134
- summary: Error handler gem that allows wrapping of code blocks with support for block retry, logging, exception filtering and re-raise
135
- test_files:
112
+ specification_version: 4
113
+ summary: Error handler gem that allows wrapping of code blocks with support for block
114
+ retry, logging, exception filtering and re-raise
115
+ test_files:
136
116
  - spec/eh_spec.rb
137
117
  - spec/mock_logger.rb
138
118
  - spec/mock_mailer.rb
139
119
  - spec/spec_helper.rb
120
+ has_rdoc:
data/backlog DELETED
@@ -1,78 +0,0 @@
1
- class Main
2
- def initialize
3
- EH::run!(:message=> "constructor should not fail!", :logger => MyLogger.new, :handlers => ImportantErrorHandler.new) do
4
- some_bugg_initialzation
5
- end
6
- end
7
- end
8
-
9
-
10
- class TestMe
11
- def something
12
- EH::push(:context => "super important")
13
-
14
- EH::retry!() do
15
- some_buggy_code
16
- end
17
-
18
- EH::pop(:context)
19
- end
20
- end
21
-
22
- def easy_to_use
23
- EH::in_order_to({:do => "something",
24
- :given_that => "some state",
25
- :note => "i am doing X with #{y}",
26
- :error_handler => {:log_to => MyLogger.bnew, :mail_to => "helpme.com"}}) do
27
- code_a
28
- code_b
29
- code_c
30
- end
31
- end
32
-
33
- class MySystemApiBoundary
34
- def talk_to_another_system(system, message)
35
- pkg = EH::package_context
36
- message["in_reference_to"] = pkg
37
- system.api_method(message)
38
- end
39
- end
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
- ... then package across system boundaries
48
-
49
- class ContextDic..
50
-
51
- module EH
52
- class EH
53
- def self.handle(context, e, env)
54
- contexts[context].handle(e, env, context_stack)
55
- end
56
-
57
- def self.run(context) do
58
- ?? << context
59
-
60
- yield
61
-
62
- >>
63
- end
64
- end
65
- end
66
-
67
-
68
- complex_reg_task_abc do
69
- myabc
70
- end
71
-
72
-
73
-
74
-
75
- EH::in_order_to({:do => "fullfil domain order",
76
- :given_that => "account deos not exist" ... ).remember("i am creationg an account using #{blah}").and_if_something_goes_wrong(:mailmeat => "a@me.com") do
77
-
78
- end