evt-retry 1.0.0.0 → 2.1.0.0

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: cb77da1f088141929adf9ff93bdb5fd9998b6fe5f8ccc2b0f9ecd28e617ccc79
4
- data.tar.gz: 5e2fc9f7ce8bad9b7bfe66ef636f6e60f358a85b5a244a0597202bc0af3227a9
3
+ metadata.gz: b61baf25e206aee4fb92ba9460ffbd7b22e85e0ba05f9637f45af8641d34aeaf
4
+ data.tar.gz: 638f8bab2e64630ed34461e93699393e2a1abdee02779eb28f66b593d171b948
5
5
  SHA512:
6
- metadata.gz: 5a2b5f101eaa670c51b5ae2a95c3518db3b1099fcc31d1f12c1ace214b5af137dbdf95ece5b2ee8c9370f23db4b2a68a362f67298e567b296e88fc94350cb543
7
- data.tar.gz: 5920c9843c98e311c88d81c1cc0c620f504c6e1b364c258f384d5bf0c09b2635bc454a579c31ccbd5d1abc338587484bac29ebdf694f86e72fee78b308556797
6
+ metadata.gz: 435cdb980e1dfd5453777104b2097014fe1d4571fdb9299f53702190652c7e1bd7ccddad6a12de30adf900030e5d4ee5b0bc95a0efbc0a906e2a78a1baf3f825
7
+ data.tar.gz: edc641c5aef345da3f04a4da79ee60eec87188d9ec25ca853e663389d8dbc35018a477323231d1e14205673a1b6e3db237fd16b502d48627222021a487c96630
@@ -2,8 +2,6 @@ class Retry
2
2
  class Log < ::Log
3
3
  def tag!(tags)
4
4
  tags << :retry
5
- tags << :library
6
- tags << :verbose
7
5
  end
8
6
  end
9
7
  end
@@ -32,7 +32,7 @@ class Retry
32
32
  errors = errors.flatten
33
33
  millisecond_intervals ||= [0]
34
34
 
35
- logger.trace { "Starting retry (Errors: #{errors.empty? ? '<none>' : errors.join(', ')}, Millisecond Intervals: #{millisecond_intervals.join(', ')})" }
35
+ logger.trace { "Starting retry (Errors: #{errors.empty? ? '(none)' : errors.join(', ')}, Millisecond Intervals: #{millisecond_intervals.join(', ')})" }
36
36
 
37
37
  intervals = millisecond_intervals.to_enum
38
38
 
@@ -55,13 +55,16 @@ class Retry
55
55
  break
56
56
  end
57
57
 
58
- interval = intervals.next rescue nil
58
+ interval = nil
59
+ Try.(StopIteration) do
60
+ interval = intervals.next
61
+ end
59
62
 
60
63
  logger.debug { "Attempt failed (Cycle: #{cycle}, Error: #{error.class.name})" }
61
- telemetry.record :failed, Retry::Telemetry::Data::Failed.new(cycle, error.class, interval)
64
+ telemetry.record :failed, Retry::Telemetry::Data::Failed.new(cycle, error, interval)
62
65
 
63
66
  if interval.nil?
64
- logger.debug { "No more attempts. Intervals depleted." }
67
+ logger.debug { 'No more attempts. Intervals depleted.' }
65
68
  break
66
69
  end
67
70
 
@@ -8,7 +8,12 @@ class Retry
8
8
  end
9
9
 
10
10
  module Data
11
- Failed = Struct.new :cycle, :error, :millisecond_interval
11
+ Failed = Struct.new :cycle, :error, :millisecond_interval do
12
+ def error_class
13
+ error.class
14
+ end
15
+ end
16
+
12
17
  Succeeded = Struct.new :cycle
13
18
  end
14
19
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evt-retry
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.0
4
+ version: 2.1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Eventide Project
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-04 00:00:00.000000000 Z
11
+ date: 2020-12-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: evt-try
@@ -114,7 +114,7 @@ homepage: https://github.com/eventide-project/retry
114
114
  licenses:
115
115
  - MIT
116
116
  metadata: {}
117
- post_install_message:
117
+ post_install_message:
118
118
  rdoc_options: []
119
119
  require_paths:
120
120
  - lib
@@ -129,9 +129,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
129
  - !ruby/object:Gem::Version
130
130
  version: '0'
131
131
  requirements: []
132
- rubyforge_project:
133
- rubygems_version: 2.7.3
134
- signing_key:
132
+ rubygems_version: 3.1.2
133
+ signing_key:
135
134
  specification_version: 4
136
135
  summary: Retry an execution that terminates with an error, with optional backoff cycles
137
136
  test_files: []