exception_notification 4.6.0 → 5.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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.rdoc +16 -0
  3. data/CONTRIBUTING.md +23 -51
  4. data/Gemfile +1 -1
  5. data/Gemfile.lock +27 -33
  6. data/README.md +65 -31
  7. data/Rakefile +14 -7
  8. data/exception_notification.gemspec +27 -30
  9. data/gemfiles/pinned_dependencies.gemfile +8 -0
  10. data/gemfiles/rails7_1.gemfile +5 -0
  11. data/gemfiles/rails7_2.gemfile +5 -0
  12. data/gemfiles/rails8_0.gemfile +5 -0
  13. data/lib/exception_notification/rack.rb +4 -4
  14. data/lib/exception_notification/rails.rb +2 -2
  15. data/lib/exception_notification/rake.rb +3 -7
  16. data/lib/exception_notification/resque.rb +2 -2
  17. data/lib/exception_notification/sidekiq.rb +8 -23
  18. data/lib/exception_notification/version.rb +1 -1
  19. data/lib/exception_notification.rb +3 -3
  20. data/lib/exception_notifier/datadog_notifier.rb +26 -26
  21. data/lib/exception_notifier/email_notifier.rb +34 -30
  22. data/lib/exception_notifier/google_chat_notifier.rb +9 -9
  23. data/lib/exception_notifier/hipchat_notifier.rb +12 -12
  24. data/lib/exception_notifier/irc_notifier.rb +6 -6
  25. data/lib/exception_notifier/mattermost_notifier.rb +13 -13
  26. data/lib/exception_notifier/modules/error_grouping.rb +5 -5
  27. data/lib/exception_notifier/modules/formatter.rb +12 -12
  28. data/lib/exception_notifier/notifier.rb +3 -3
  29. data/lib/exception_notifier/slack_notifier.rb +16 -16
  30. data/lib/exception_notifier/sns_notifier.rb +9 -9
  31. data/lib/exception_notifier/teams_notifier.rb +61 -57
  32. data/lib/exception_notifier/webhook_notifier.rb +3 -3
  33. data/lib/exception_notifier.rb +27 -26
  34. data/lib/generators/exception_notification/install_generator.rb +7 -7
  35. data/lib/generators/exception_notification/templates/exception_notification.rb.erb +26 -27
  36. data/test/exception_notification/rack_test.rb +14 -14
  37. data/test/exception_notification/rake_test.rb +13 -13
  38. data/test/exception_notification/resque_test.rb +14 -14
  39. data/test/exception_notifier/datadog_notifier_test.rb +47 -46
  40. data/test/exception_notifier/email_notifier_test.rb +89 -98
  41. data/test/exception_notifier/google_chat_notifier_test.rb +77 -77
  42. data/test/exception_notifier/hipchat_notifier_test.rb +76 -74
  43. data/test/exception_notifier/irc_notifier_test.rb +26 -26
  44. data/test/exception_notifier/mattermost_notifier_test.rb +77 -77
  45. data/test/exception_notifier/modules/error_grouping_test.rb +39 -39
  46. data/test/exception_notifier/modules/formatter_test.rb +51 -49
  47. data/test/exception_notifier/sidekiq_test.rb +17 -10
  48. data/test/exception_notifier/slack_notifier_test.rb +66 -67
  49. data/test/exception_notifier/sns_notifier_test.rb +73 -70
  50. data/test/exception_notifier/teams_notifier_test.rb +33 -33
  51. data/test/exception_notifier/webhook_notifier_test.rb +34 -34
  52. data/test/exception_notifier_test.rb +51 -41
  53. data/test/test_helper.rb +8 -11
  54. metadata +45 -85
  55. data/Appraisals +0 -9
  56. data/gemfiles/rails5_2.gemfile +0 -7
  57. data/gemfiles/rails6_0.gemfile +0 -7
  58. data/gemfiles/rails6_1.gemfile +0 -7
  59. data/gemfiles/rails7_0.gemfile +0 -7
@@ -1,10 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'test_helper'
3
+ require "test_helper"
4
4
 
5
5
  class ExceptionOne < StandardError; end
6
+
6
7
  class ExceptionTwo < StandardError; end
7
8
 
9
+ class StandardErrorSubclass < StandardError; end
10
+
8
11
  class ExceptionNotifierTest < ActiveSupport::TestCase
9
12
  setup do
10
13
  ExceptionNotifier.register_exception_notifier(:email, exception_recipients: %w[dummyexceptions@example.com])
@@ -19,25 +22,27 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
19
22
  Rails.cache.clear if defined?(Rails) && Rails.respond_to?(:cache)
20
23
  end
21
24
 
22
- test 'should have default ignored exceptions' do
25
+ test "should have default ignored exceptions" do
23
26
  assert_equal ExceptionNotifier.ignored_exceptions,
24
- ['ActiveRecord::RecordNotFound', 'Mongoid::Errors::DocumentNotFound',
25
- 'AbstractController::ActionNotFound', 'ActionController::RoutingError',
26
- 'ActionController::UnknownFormat', 'ActionController::UrlGenerationError']
27
+ ["ActiveRecord::RecordNotFound", "Mongoid::Errors::DocumentNotFound",
28
+ "AbstractController::ActionNotFound", "ActionController::RoutingError",
29
+ "ActionController::UnknownFormat", "ActionController::UrlGenerationError",
30
+ "ActionDispatch::Http::MimeNegotiation::InvalidType",
31
+ "Rack::Utils::InvalidParameterError"]
27
32
  end
28
33
 
29
- test 'should have email notifier registered' do
34
+ test "should have email notifier registered" do
30
35
  assert_equal ExceptionNotifier.notifiers, [:email]
31
36
  end
32
37
 
33
- test 'should have a valid email notifier' do
38
+ test "should have a valid email notifier" do
34
39
  @email_notifier = ExceptionNotifier.registered_exception_notifier(:email)
35
40
  refute_nil @email_notifier
36
41
  assert_equal @email_notifier.class, ExceptionNotifier::EmailNotifier
37
42
  assert_respond_to @email_notifier, :call
38
43
  end
39
44
 
40
- test 'should allow register/unregister another notifier' do
45
+ test "should allow register/unregister another notifier" do
41
46
  called = false
42
47
  proc_notifier = ->(_exception, _options) { called = true }
43
48
  ExceptionNotifier.register_exception_notifier(:proc, proc_notifier)
@@ -53,7 +58,7 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
53
58
  assert_equal ExceptionNotifier.notifiers, [:email]
54
59
  end
55
60
 
56
- test 'should allow select notifiers to send error to' do
61
+ test "should allow select notifiers to send error to" do
57
62
  notifier1_calls = 0
58
63
  notifier1 = ->(_exception, _options) { notifier1_calls += 1 }
59
64
  ExceptionNotifier.register_exception_notifier(:notifier1, notifier1)
@@ -82,10 +87,10 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
82
87
  assert_equal ExceptionNotifier.notifiers, [:email]
83
88
  end
84
89
 
85
- test 'should ignore exception if satisfies conditional ignore' do
86
- env = 'production'
90
+ test "should ignore exception if satisfies conditional ignore" do
91
+ env = "production"
87
92
  ExceptionNotifier.ignore_if do |_exception, _options|
88
- env != 'production'
93
+ env != "production"
89
94
  end
90
95
 
91
96
  ExceptionNotifier.register_exception_notifier(:test, @test_notifier)
@@ -95,12 +100,12 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
95
100
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
96
101
  assert_equal @notifier_calls, 1
97
102
 
98
- env = 'development'
103
+ env = "development"
99
104
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
100
105
  assert_equal @notifier_calls, 1
101
106
  end
102
107
 
103
- test 'should ignore exception if satisfies by-notifier conditional ignore' do
108
+ test "should ignore exception if satisfies by-notifier conditional ignore" do
104
109
  notifier1_calls = 0
105
110
  notifier1 = ->(_exception, _options) { notifier1_calls += 1 }
106
111
  ExceptionNotifier.register_exception_notifier(:notifier1, notifier1)
@@ -109,12 +114,12 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
109
114
  notifier2 = ->(_exception, _options) { notifier2_calls += 1 }
110
115
  ExceptionNotifier.register_exception_notifier(:notifier2, notifier2)
111
116
 
112
- env = 'production'
117
+ env = "production"
113
118
  ExceptionNotifier.ignore_notifier_if(:notifier1) do |_exception, _options|
114
- env == 'development'
119
+ env == "development"
115
120
  end
116
121
  ExceptionNotifier.ignore_notifier_if(:notifier2) do |_exception, _options|
117
- env == 'production'
122
+ env == "production"
118
123
  end
119
124
 
120
125
  exception = StandardError.new
@@ -123,20 +128,20 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
123
128
  assert_equal notifier1_calls, 1
124
129
  assert_equal notifier2_calls, 0
125
130
 
126
- env = 'development'
131
+ env = "development"
127
132
 
128
133
  ExceptionNotifier.notify_exception(exception)
129
134
  assert_equal notifier1_calls, 1
130
135
  assert_equal notifier2_calls, 1
131
136
 
132
- env = 'test'
137
+ env = "test"
133
138
 
134
139
  ExceptionNotifier.notify_exception(exception)
135
140
  assert_equal notifier1_calls, 2
136
141
  assert_equal notifier2_calls, 2
137
142
  end
138
143
 
139
- test 'should return false if all the registered notifiers are ignored' do
144
+ test "should return false if all the registered notifiers are ignored" do
140
145
  ExceptionNotifier.notifiers.each do |notifier|
141
146
  # make sure to register no other notifiers but the tested ones
142
147
  ExceptionNotifier.unregister_exception_notifier(notifier)
@@ -152,12 +157,12 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
152
157
  exception.message =~ /non_critical_error/
153
158
  end
154
159
 
155
- exception = StandardError.new('a non_critical_error occured.')
160
+ exception = StandardError.new("a non_critical_error occured.")
156
161
 
157
162
  refute ExceptionNotifier.notify_exception(exception)
158
163
  end
159
164
 
160
- test 'should return true if one of the notifiers fires' do
165
+ test "should return true if one of the notifiers fires" do
161
166
  ExceptionNotifier.notifiers.each do |notifier|
162
167
  # make sure to register no other notifiers but the tested ones
163
168
  ExceptionNotifier.unregister_exception_notifier(notifier)
@@ -170,12 +175,12 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
170
175
  exception.message =~ /non-critical\serror/
171
176
  end
172
177
 
173
- exception = StandardError.new('a non-critical error occured')
178
+ exception = StandardError.new("a non-critical error occured")
174
179
 
175
180
  assert ExceptionNotifier.notify_exception(exception)
176
181
  end
177
182
 
178
- test 'should not send notification if one of ignored exceptions' do
183
+ test "should not send notification if one of ignored exceptions" do
179
184
  ExceptionNotifier.register_exception_notifier(:test, @test_notifier)
180
185
 
181
186
  exception = StandardError.new
@@ -183,29 +188,27 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
183
188
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
184
189
  assert_equal @notifier_calls, 1
185
190
 
186
- ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: 'StandardError')
191
+ ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: "StandardError")
187
192
  assert_equal @notifier_calls, 1
188
193
  end
189
194
 
190
- test 'should not send notification if subclass of one of ignored exceptions' do
195
+ test "should not send notification if subclass of one of ignored exceptions" do
191
196
  ExceptionNotifier.register_exception_notifier(:test, @test_notifier)
192
197
 
193
- class StandardErrorSubclass < StandardError
194
- end
195
-
196
198
  exception = StandardErrorSubclass.new
197
199
 
198
200
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
199
201
  assert_equal @notifier_calls, 1
200
202
 
201
- ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: 'StandardError')
203
+ ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: "StandardError")
202
204
  assert_equal @notifier_calls, 1
203
205
  end
204
206
 
205
- test 'should not send notification if extended module one of ignored exceptions' do
207
+ test "should not send notification if extended module one of ignored exceptions" do
206
208
  ExceptionNotifier.register_exception_notifier(:test, @test_notifier)
207
209
 
208
- module StandardErrorModule; end
210
+ # Define module at runtime
211
+ Object.const_set(:StandardErrorModule, Module.new)
209
212
 
210
213
  exception = StandardError.new
211
214
  exception.extend StandardErrorModule
@@ -213,15 +216,19 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
213
216
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
214
217
  assert_equal @notifier_calls, 1
215
218
 
216
- ignore_exceptions = 'ExceptionNotifierTest::StandardErrorModule'
219
+ ignore_exceptions = "StandardErrorModule"
217
220
  ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: ignore_exceptions)
218
221
  assert_equal @notifier_calls, 1
222
+ ensure
223
+ # Clean up by removing the module
224
+ Object.send(:remove_const, :StandardErrorModule)
219
225
  end
220
226
 
221
- test 'should not send notification if prepended module at singleton class one of ignored exceptions' do
227
+ test "should not send notification if prepended module at singleton class one of ignored exceptions" do
222
228
  ExceptionNotifier.register_exception_notifier(:test, @test_notifier)
223
229
 
224
- module StandardErrorModule; end
230
+ # Define module at runtime
231
+ Object.const_set(:StandardErrorModule, Module.new)
225
232
 
226
233
  exception = StandardError.new
227
234
  exception.singleton_class.prepend StandardErrorModule
@@ -229,12 +236,15 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
229
236
  ExceptionNotifier.notify_exception(exception, notifiers: :test)
230
237
  assert_equal @notifier_calls, 1
231
238
 
232
- ignore_exceptions = 'ExceptionNotifierTest::StandardErrorModule'
239
+ ignore_exceptions = "StandardErrorModule"
233
240
  ExceptionNotifier.notify_exception(exception, notifiers: :test, ignore_exceptions: ignore_exceptions)
234
241
  assert_equal @notifier_calls, 1
242
+ ensure
243
+ # Clean up by removing the module
244
+ Object.send(:remove_const, :StandardErrorModule)
235
245
  end
236
246
 
237
- test 'should call received block' do
247
+ test "should call received block" do
238
248
  @block_called = false
239
249
  notifier = ->(_exception, _options, &block) { block.call }
240
250
  ExceptionNotifier.register_exception_notifier(:test, notifier)
@@ -248,7 +258,7 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
248
258
  assert @block_called
249
259
  end
250
260
 
251
- test 'should not call group_error! or send_notification? if error_grouping false' do
261
+ test "should not call group_error! or send_notification? if error_grouping false" do
252
262
  exception = StandardError.new
253
263
  ExceptionNotifier.expects(:group_error!).never
254
264
  ExceptionNotifier.expects(:send_notification?).never
@@ -256,7 +266,7 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
256
266
  ExceptionNotifier.notify_exception(exception)
257
267
  end
258
268
 
259
- test 'should call group_error! and send_notification? if error_grouping true' do
269
+ test "should call group_error! and send_notification? if error_grouping true" do
260
270
  ExceptionNotifier.error_grouping = true
261
271
 
262
272
  exception = StandardError.new
@@ -266,7 +276,7 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
266
276
  ExceptionNotifier.notify_exception(exception)
267
277
  end
268
278
 
269
- test 'should skip notification if send_notification? is false' do
279
+ test "should skip notification if send_notification? is false" do
270
280
  ExceptionNotifier.error_grouping = true
271
281
 
272
282
  exception = StandardError.new
@@ -276,7 +286,7 @@ class ExceptionNotifierTest < ActiveSupport::TestCase
276
286
  refute ExceptionNotifier.notify_exception(exception)
277
287
  end
278
288
 
279
- test 'should send notification if send_notification? is true' do
289
+ test "should send notification if send_notification? is true" do
280
290
  ExceptionNotifier.error_grouping = true
281
291
 
282
292
  exception = StandardError.new
data/test/test_helper.rb CHANGED
@@ -1,19 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'coveralls'
4
- Coveralls.wear!
3
+ $LOAD_PATH.unshift File.expand_path("../lib", __dir__)
4
+ require "exception_notification"
5
5
 
6
- $LOAD_PATH.unshift File.expand_path('../lib', __dir__)
7
- require 'exception_notification'
8
-
9
- require 'minitest/autorun'
10
- require 'mocha/minitest'
11
- require 'active_support/test_case'
12
- require 'action_mailer'
6
+ require "minitest/autorun"
7
+ require "mocha/minitest"
8
+ require "active_support/test_case"
9
+ require "action_mailer"
13
10
 
14
11
  ExceptionNotifier.testing_mode!
15
- require 'support/exception_notifier_helper'
12
+ require "support/exception_notifier_helper"
16
13
 
17
- Time.zone = 'UTC'
14
+ Time.zone = "UTC"
18
15
  ActionMailer::Base.delivery_method = :test
19
16
  ActionMailer::Base.append_view_path "#{File.dirname(__FILE__)}/support/views"
metadata CHANGED
@@ -1,15 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exception_notification
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.0
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jamis Buck
8
8
  - Josh Peek
9
- autorequire:
9
+ - Sebastián Martínez
10
+ - Kevin McPhillips
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2025-03-21 00:00:00.000000000 Z
13
+ date: 2025-03-22 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: actionmailer
@@ -17,7 +18,7 @@ dependencies:
17
18
  requirements:
18
19
  - - ">="
19
20
  - !ruby/object:Gem::Version
20
- version: '5.2'
21
+ version: '7.1'
21
22
  - - "<"
22
23
  - !ruby/object:Gem::Version
23
24
  version: '9'
@@ -27,7 +28,7 @@ dependencies:
27
28
  requirements:
28
29
  - - ">="
29
30
  - !ruby/object:Gem::Version
30
- version: '5.2'
31
+ version: '7.1'
31
32
  - - "<"
32
33
  - !ruby/object:Gem::Version
33
34
  version: '9'
@@ -37,7 +38,7 @@ dependencies:
37
38
  requirements:
38
39
  - - ">="
39
40
  - !ruby/object:Gem::Version
40
- version: '5.2'
41
+ version: '7.1'
41
42
  - - "<"
42
43
  - !ruby/object:Gem::Version
43
44
  version: '9'
@@ -47,24 +48,10 @@ dependencies:
47
48
  requirements:
48
49
  - - ">="
49
50
  - !ruby/object:Gem::Version
50
- version: '5.2'
51
+ version: '7.1'
51
52
  - - "<"
52
53
  - !ruby/object:Gem::Version
53
54
  version: '9'
54
- - !ruby/object:Gem::Dependency
55
- name: appraisal
56
- requirement: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: 2.2.0
61
- type: :development
62
- prerelease: false
63
- version_requirements: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: 2.2.0
68
55
  - !ruby/object:Gem::Dependency
69
56
  name: aws-sdk-sns
70
57
  requirement: !ruby/object:Gem::Requirement
@@ -93,20 +80,6 @@ dependencies:
93
80
  - - ">="
94
81
  - !ruby/object:Gem::Version
95
82
  version: 0.7.0
96
- - !ruby/object:Gem::Dependency
97
- name: coveralls
98
- requirement: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: 0.8.2
103
- type: :development
104
- prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: 0.8.2
110
83
  - !ruby/object:Gem::Dependency
111
84
  name: dogapi
112
85
  requirement: !ruby/object:Gem::Requirement
@@ -191,13 +164,27 @@ dependencies:
191
164
  - - ">="
192
165
  - !ruby/object:Gem::Version
193
166
  version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: ostruct
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
194
181
  - !ruby/object:Gem::Dependency
195
182
  name: rails
196
183
  requirement: !ruby/object:Gem::Requirement
197
184
  requirements:
198
185
  - - ">="
199
186
  - !ruby/object:Gem::Version
200
- version: '5.2'
187
+ version: '7.1'
201
188
  - - "<"
202
189
  - !ruby/object:Gem::Version
203
190
  version: '9'
@@ -207,7 +194,7 @@ dependencies:
207
194
  requirements:
208
195
  - - ">="
209
196
  - !ruby/object:Gem::Version
210
- version: '5.2'
197
+ version: '7.1'
211
198
  - - "<"
212
199
  - !ruby/object:Gem::Version
213
200
  version: '9'
@@ -226,47 +213,47 @@ dependencies:
226
213
  - !ruby/object:Gem::Version
227
214
  version: 1.8.0
228
215
  - !ruby/object:Gem::Dependency
229
- name: rubocop
216
+ name: sidekiq
230
217
  requirement: !ruby/object:Gem::Requirement
231
218
  requirements:
232
219
  - - ">="
233
220
  - !ruby/object:Gem::Version
234
- version: '0'
221
+ version: 5.0.4
235
222
  type: :development
236
223
  prerelease: false
237
224
  version_requirements: !ruby/object:Gem::Requirement
238
225
  requirements:
239
226
  - - ">="
240
227
  - !ruby/object:Gem::Version
241
- version: '0'
228
+ version: 5.0.4
242
229
  - !ruby/object:Gem::Dependency
243
- name: sidekiq
230
+ name: slack-notifier
244
231
  requirement: !ruby/object:Gem::Requirement
245
232
  requirements:
246
233
  - - ">="
247
234
  - !ruby/object:Gem::Version
248
- version: 5.0.4
235
+ version: 1.0.0
249
236
  type: :development
250
237
  prerelease: false
251
238
  version_requirements: !ruby/object:Gem::Requirement
252
239
  requirements:
253
240
  - - ">="
254
241
  - !ruby/object:Gem::Version
255
- version: 5.0.4
242
+ version: 1.0.0
256
243
  - !ruby/object:Gem::Dependency
257
- name: slack-notifier
244
+ name: standard
258
245
  requirement: !ruby/object:Gem::Requirement
259
246
  requirements:
260
247
  - - ">="
261
248
  - !ruby/object:Gem::Version
262
- version: 1.0.0
249
+ version: '0'
263
250
  type: :development
264
251
  prerelease: false
265
252
  version_requirements: !ruby/object:Gem::Requirement
266
253
  requirements:
267
254
  - - ">="
268
255
  - !ruby/object:Gem::Version
269
- version: 1.0.0
256
+ version: '0'
270
257
  - !ruby/object:Gem::Dependency
271
258
  name: timecop
272
259
  requirement: !ruby/object:Gem::Requirement
@@ -281,13 +268,11 @@ dependencies:
281
268
  - - "~>"
282
269
  - !ruby/object:Gem::Version
283
270
  version: 0.9.0
284
- description:
285
- email: smartinez87@gmail.com
271
+ email: github@kevinmcphillips.ca
286
272
  executables: []
287
273
  extensions: []
288
274
  extra_rdoc_files: []
289
275
  files:
290
- - Appraisals
291
276
  - CHANGELOG.rdoc
292
277
  - CODE_OF_CONDUCT.md
293
278
  - CONTRIBUTING.md
@@ -309,10 +294,10 @@ files:
309
294
  - docs/notifiers/teams.md
310
295
  - docs/notifiers/webhook.md
311
296
  - exception_notification.gemspec
312
- - gemfiles/rails5_2.gemfile
313
- - gemfiles/rails6_0.gemfile
314
- - gemfiles/rails6_1.gemfile
315
- - gemfiles/rails7_0.gemfile
297
+ - gemfiles/pinned_dependencies.gemfile
298
+ - gemfiles/rails7_1.gemfile
299
+ - gemfiles/rails7_2.gemfile
300
+ - gemfiles/rails8_0.gemfile
316
301
  - lib/exception_notification.rb
317
302
  - lib/exception_notification/rack.rb
318
303
  - lib/exception_notification/rails.rb
@@ -378,12 +363,11 @@ files:
378
363
  - test/support/views/exception_notifier/_new_section.html.erb
379
364
  - test/support/views/exception_notifier/_new_section.text.erb
380
365
  - test/test_helper.rb
381
- homepage: https://smartinez87.github.io/exception_notification/
366
+ homepage: https://kmcphillips.github.io/exception_notification/
382
367
  licenses:
383
368
  - MIT
384
369
  metadata:
385
- changelog_uri: https://github.com/smartinez87/exception_notification/blob/master/CHANGELOG.rdoc
386
- post_install_message:
370
+ changelog_uri: https://github.com/kmcphillips/exception_notification/blob/master/CHANGELOG.rdoc
387
371
  rdoc_options: []
388
372
  require_paths:
389
373
  - lib
@@ -391,38 +375,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
391
375
  requirements:
392
376
  - - ">="
393
377
  - !ruby/object:Gem::Version
394
- version: '2.3'
378
+ version: '3.2'
395
379
  required_rubygems_version: !ruby/object:Gem::Requirement
396
380
  requirements:
397
381
  - - ">="
398
382
  - !ruby/object:Gem::Version
399
- version: 1.8.11
383
+ version: '0'
400
384
  requirements: []
401
- rubygems_version: 3.5.22
402
- signing_key:
385
+ rubygems_version: 3.6.2
403
386
  specification_version: 4
404
- summary: Exception notification for Rails apps
405
- test_files:
406
- - test/exception_notification/rack_test.rb
407
- - test/exception_notification/rake_test.rb
408
- - test/exception_notification/resque_test.rb
409
- - test/exception_notifier/datadog_notifier_test.rb
410
- - test/exception_notifier/email_notifier_test.rb
411
- - test/exception_notifier/google_chat_notifier_test.rb
412
- - test/exception_notifier/hipchat_notifier_test.rb
413
- - test/exception_notifier/irc_notifier_test.rb
414
- - test/exception_notifier/mattermost_notifier_test.rb
415
- - test/exception_notifier/modules/error_grouping_test.rb
416
- - test/exception_notifier/modules/formatter_test.rb
417
- - test/exception_notifier/sidekiq_test.rb
418
- - test/exception_notifier/slack_notifier_test.rb
419
- - test/exception_notifier/sns_notifier_test.rb
420
- - test/exception_notifier/teams_notifier_test.rb
421
- - test/exception_notifier/webhook_notifier_test.rb
422
- - test/exception_notifier_test.rb
423
- - test/support/exception_notifier_helper.rb
424
- - test/support/views/exception_notifier/_new_bkg_section.html.erb
425
- - test/support/views/exception_notifier/_new_bkg_section.text.erb
426
- - test/support/views/exception_notifier/_new_section.html.erb
427
- - test/support/views/exception_notifier/_new_section.text.erb
428
- - test/test_helper.rb
387
+ summary: Exception notification for Ruby applications
388
+ test_files: []
data/Appraisals DELETED
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- rails_versions = ['~> 5.2.0', '~> 6.0.0', '~> 6.1.0', '~> 7.0.0']
4
-
5
- rails_versions.each do |rails_version|
6
- appraise "rails#{rails_version.slice(/\d+\.\d+/).tr('.', '_')}" do
7
- gem 'rails', rails_version
8
- end
9
- end
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.2.0"
6
-
7
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 6.0.0"
6
-
7
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 6.1.0"
6
-
7
- gemspec path: "../"
@@ -1,7 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 7.0.0"
6
-
7
- gemspec path: "../"