raygun4ruby 3.2.0 → 3.2.5.pre

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 (117) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +21 -18
  3. data/.rspec +1 -1
  4. data/.travis.yml +20 -12
  5. data/CHANGELOG.md +130 -117
  6. data/Gemfile +4 -4
  7. data/LICENSE.txt +22 -22
  8. data/README.md +420 -420
  9. data/Rakefile +27 -27
  10. data/examples/sinatras_raygun.rb +17 -17
  11. data/lib/generators/raygun/install_generator.rb +26 -26
  12. data/lib/raygun.rb +179 -179
  13. data/lib/raygun/affected_user.rb +59 -59
  14. data/lib/raygun/breadcrumbs.rb +34 -34
  15. data/lib/raygun/breadcrumbs/breadcrumb.rb +34 -34
  16. data/lib/raygun/breadcrumbs/store.rb +86 -86
  17. data/lib/raygun/client.rb +308 -303
  18. data/lib/raygun/configuration.rb +194 -194
  19. data/lib/raygun/error.rb +10 -10
  20. data/lib/raygun/javascript_tracker.rb +42 -42
  21. data/lib/raygun/middleware/breadcrumbs_store_initializer.rb +19 -19
  22. data/lib/raygun/middleware/javascript_exception_tracking.rb +32 -32
  23. data/lib/raygun/middleware/rack_exception_interceptor.rb +18 -18
  24. data/lib/raygun/middleware/rails_insert_affected_user.rb +26 -26
  25. data/lib/raygun/railtie.rb +39 -39
  26. data/lib/raygun/services/apply_whitelist_filter_to_payload.rb +27 -27
  27. data/lib/raygun/sidekiq.rb +71 -67
  28. data/lib/raygun/version.rb +3 -3
  29. data/lib/raygun4ruby.rb +1 -1
  30. data/lib/resque/failure/raygun.rb +25 -25
  31. data/lib/tasks/raygun.tasks +7 -7
  32. data/raygun4ruby.gemspec +45 -45
  33. data/spec/dummy/.gitignore +17 -0
  34. data/spec/dummy/Gemfile +47 -0
  35. data/spec/dummy/README.rdoc +28 -0
  36. data/spec/dummy/Rakefile +6 -6
  37. data/spec/dummy/app/assets/config/manifest.js +3 -3
  38. data/spec/dummy/app/assets/javascripts/application.js +13 -15
  39. data/spec/dummy/app/assets/stylesheets/application.css +15 -15
  40. data/spec/dummy/app/controllers/application_controller.rb +5 -2
  41. data/spec/dummy/app/controllers/home_controller.rb +4 -4
  42. data/spec/dummy/app/helpers/application_helper.rb +2 -2
  43. data/spec/dummy/app/{assets/javascripts/channels → mailers}/.keep +0 -0
  44. data/spec/dummy/{storage → app/models}/.keep +0 -0
  45. data/spec/dummy/app/views/home/index.html.erb +3 -3
  46. data/spec/dummy/app/views/home/index.json.erb +1 -1
  47. data/spec/dummy/app/views/layouts/application.html.erb +14 -15
  48. data/spec/dummy/bin/bundle +3 -3
  49. data/spec/dummy/bin/rails +9 -4
  50. data/spec/dummy/bin/rake +9 -4
  51. data/spec/dummy/bin/setup +29 -36
  52. data/spec/dummy/bin/spring +17 -0
  53. data/spec/dummy/config.ru +4 -5
  54. data/spec/dummy/config/application.rb +26 -18
  55. data/spec/dummy/config/boot.rb +3 -5
  56. data/spec/dummy/config/database.yml +25 -25
  57. data/spec/dummy/config/environment.rb +5 -5
  58. data/spec/dummy/config/environments/development.rb +41 -61
  59. data/spec/dummy/config/environments/production.rb +79 -94
  60. data/spec/dummy/config/initializers/assets.rb +11 -14
  61. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -7
  62. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -5
  63. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -4
  64. data/spec/dummy/config/initializers/inflections.rb +16 -16
  65. data/spec/dummy/config/initializers/mime_types.rb +4 -4
  66. data/spec/dummy/config/initializers/session_store.rb +3 -0
  67. data/spec/dummy/config/initializers/to_time_preserves_timezone.rb +10 -0
  68. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -14
  69. data/spec/dummy/config/locales/en.yml +23 -33
  70. data/spec/dummy/config/routes.rb +58 -3
  71. data/spec/dummy/config/secrets.yml +22 -0
  72. data/spec/dummy/db/seeds.rb +7 -0
  73. data/spec/dummy/{db/test.sqlite3 → lib/tasks/.keep} +0 -0
  74. data/spec/dummy/public/404.html +67 -67
  75. data/spec/dummy/public/422.html +67 -67
  76. data/spec/dummy/public/500.html +66 -66
  77. data/spec/dummy/public/robots.txt +5 -0
  78. data/spec/dummy/{public/apple-touch-icon-precomposed.png → vendor/assets/javascripts/.keep} +0 -0
  79. data/spec/dummy/{public/apple-touch-icon.png → vendor/assets/stylesheets/.keep} +0 -0
  80. data/spec/features/javascript_spec.rb +48 -48
  81. data/spec/rails_helper.rb +4 -4
  82. data/spec/raygun/breadcrumbs/breadcrumb_spec.rb +171 -171
  83. data/spec/raygun/breadcrumbs/store_spec.rb +170 -170
  84. data/spec/raygun/raygun_spec.rb +47 -47
  85. data/spec/services/apply_whitelist_filter_to_payload_spec.rb +251 -251
  86. data/spec/spec_helper.rb +24 -24
  87. data/spec/support/fake_logger.rb +17 -17
  88. data/test/integration/client_test.rb +19 -19
  89. data/test/test_helper.rb +72 -72
  90. data/test/unit/affected_user_test.rb +136 -136
  91. data/test/unit/client_test.rb +812 -790
  92. data/test/unit/configuration_test.rb +206 -206
  93. data/test/unit/raygun_test.rb +25 -25
  94. data/test/unit/resque_failure_test.rb +24 -24
  95. data/test/unit/sidekiq_failure_test.rb +32 -32
  96. metadata +36 -49
  97. data/lib/raygun/testable.rb +0 -23
  98. data/spec/dummy/.ruby-version +0 -1
  99. data/spec/dummy/app/assets/javascripts/cable.js +0 -13
  100. data/spec/dummy/app/channels/application_cable/channel.rb +0 -4
  101. data/spec/dummy/app/channels/application_cable/connection.rb +0 -4
  102. data/spec/dummy/app/jobs/application_job.rb +0 -2
  103. data/spec/dummy/app/mailers/application_mailer.rb +0 -4
  104. data/spec/dummy/app/models/application_record.rb +0 -3
  105. data/spec/dummy/app/views/layouts/mailer.html.erb +0 -13
  106. data/spec/dummy/app/views/layouts/mailer.text.erb +0 -1
  107. data/spec/dummy/bin/update +0 -31
  108. data/spec/dummy/bin/yarn +0 -11
  109. data/spec/dummy/config/cable.yml +0 -10
  110. data/spec/dummy/config/environments/test.rb +0 -46
  111. data/spec/dummy/config/initializers/application_controller_renderer.rb +0 -8
  112. data/spec/dummy/config/initializers/content_security_policy.rb +0 -25
  113. data/spec/dummy/config/puma.rb +0 -34
  114. data/spec/dummy/config/spring.rb +0 -6
  115. data/spec/dummy/config/storage.yml +0 -34
  116. data/spec/dummy/db/schema.rb +0 -15
  117. data/spec/dummy/package.json +0 -5
@@ -1,24 +1,24 @@
1
- require_relative "../test_helper.rb"
2
-
3
- # Very simple test
4
- class ResqueFailureTest < Raygun::UnitTest
5
-
6
- require "resque/failure/raygun"
7
-
8
- def setup
9
- super
10
-
11
- stub_request(:post, 'https://api.raygun.io/entries').to_return(status: 202)
12
- fake_successful_entry
13
- end
14
-
15
- def test_failure_backend_appears_to_work
16
- assert Resque::Failure::Raygun.new(
17
- StandardError.new("Worker Problem"),
18
- "TestWorker PID 123",
19
- "super_important_jobs",
20
- class: "SendCookies", args: [ "nik" ]
21
- ).save.success?
22
- end
23
-
24
- end
1
+ require_relative "../test_helper.rb"
2
+
3
+ # Very simple test
4
+ class ResqueFailureTest < Raygun::UnitTest
5
+
6
+ require "resque/failure/raygun"
7
+
8
+ def setup
9
+ super
10
+
11
+ stub_request(:post, 'https://api.raygun.com/entries').to_return(status: 202)
12
+ fake_successful_entry
13
+ end
14
+
15
+ def test_failure_backend_appears_to_work
16
+ assert Resque::Failure::Raygun.new(
17
+ StandardError.new("Worker Problem"),
18
+ "TestWorker PID 123",
19
+ "super_important_jobs",
20
+ class: "SendCookies", args: [ "nik" ]
21
+ ).save.success?
22
+ end
23
+
24
+ end
@@ -1,32 +1,32 @@
1
- require_relative "../test_helper.rb"
2
-
3
- require "sidekiq"
4
- # Convince Sidekiq it's on a server :)
5
- module Sidekiq
6
- def self.server?
7
- true
8
- end
9
- end
10
- require "raygun/sidekiq"
11
-
12
- class SidekiqFailureTest < Raygun::UnitTest
13
-
14
- def setup
15
- super
16
-
17
- stub_request(:post, 'https://api.raygun.io/entries').to_return(status: 202)
18
- fake_successful_entry
19
- end
20
-
21
- def test_failure_backend_appears_to_work
22
- assert Raygun::SidekiqReporter.call(
23
- StandardError.new("Oh no! Your Sidekiq has failed!"),
24
- sidekick_name: "robin"
25
- ).success?
26
- end
27
-
28
- def test_we_are_in_sidekiqs_list_of_error_handlers
29
- assert Sidekiq.error_handlers.include?(Raygun::SidekiqReporter)
30
- end
31
-
32
- end
1
+ require_relative "../test_helper.rb"
2
+
3
+ require "sidekiq"
4
+ # Convince Sidekiq it's on a server :)
5
+ module Sidekiq
6
+ def self.server?
7
+ true
8
+ end
9
+ end
10
+ require "raygun/sidekiq"
11
+
12
+ class SidekiqFailureTest < Raygun::UnitTest
13
+
14
+ def setup
15
+ super
16
+
17
+ stub_request(:post, 'https://api.raygun.com/entries').to_return(status: 202)
18
+ fake_successful_entry
19
+ end
20
+
21
+ def test_failure_backend_appears_to_work
22
+ assert Raygun::SidekiqReporter.call(
23
+ StandardError.new("Oh no! Your Sidekiq has failed!"),
24
+ sidekick_name: "robin"
25
+ ).success?
26
+ end
27
+
28
+ def test_we_are_in_sidekiqs_list_of_error_handlers
29
+ assert Sidekiq.error_handlers.include?(Raygun::SidekiqReporter)
30
+ end
31
+
32
+ end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun4ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.2.5.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mindscape
8
8
  - Nik Wakelin
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-02-20 00:00:00.000000000 Z
12
+ date: 2021-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -85,16 +85,16 @@ dependencies:
85
85
  name: rake
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - "~>"
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
- version: '11'
90
+ version: 12.3.3
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "~>"
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
- version: '11'
97
+ version: 12.3.3
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: timecop
100
100
  requirement: !ruby/object:Gem::Requirement
@@ -219,14 +219,14 @@ dependencies:
219
219
  requirements:
220
220
  - - '='
221
221
  - !ruby/object:Gem::Version
222
- version: '5.2'
222
+ version: 4.2.11
223
223
  type: :development
224
224
  prerelease: false
225
225
  version_requirements: !ruby/object:Gem::Requirement
226
226
  requirements:
227
227
  - - '='
228
228
  - !ruby/object:Gem::Version
229
- version: '5.2'
229
+ version: 4.2.11
230
230
  - !ruby/object:Gem::Dependency
231
231
  name: sqlite3
232
232
  requirement: !ruby/object:Gem::Requirement
@@ -259,16 +259,16 @@ dependencies:
259
259
  name: rspec-rails
260
260
  requirement: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - ">="
262
+ - - "~>"
263
263
  - !ruby/object:Gem::Version
264
- version: '0'
264
+ version: '3.9'
265
265
  type: :development
266
266
  prerelease: false
267
267
  version_requirements: !ruby/object:Gem::Requirement
268
268
  requirements:
269
- - - ">="
269
+ - - "~>"
270
270
  - !ruby/object:Gem::Version
271
- version: '0'
271
+ version: '3.9'
272
272
  - !ruby/object:Gem::Dependency
273
273
  name: launchy
274
274
  requirement: !ruby/object:Gem::Requirement
@@ -297,9 +297,9 @@ dependencies:
297
297
  - - ">="
298
298
  - !ruby/object:Gem::Version
299
299
  version: '0'
300
- description: Ruby Adapter for Raygun.io
300
+ description: Ruby Adapter for Raygun
301
301
  email:
302
- - hello@raygun.io
302
+ - hello@raygun.com
303
303
  executables: []
304
304
  extensions: []
305
305
  extra_rdoc_files: []
@@ -330,76 +330,64 @@ files:
330
330
  - lib/raygun/railtie.rb
331
331
  - lib/raygun/services/apply_whitelist_filter_to_payload.rb
332
332
  - lib/raygun/sidekiq.rb
333
- - lib/raygun/testable.rb
334
333
  - lib/raygun/version.rb
335
334
  - lib/raygun4ruby.rb
336
335
  - lib/resque/failure/raygun.rb
337
336
  - lib/tasks/raygun.tasks
338
337
  - raygun4ruby.gemspec
339
- - spec/dummy/.ruby-version
338
+ - spec/dummy/.gitignore
339
+ - spec/dummy/Gemfile
340
+ - spec/dummy/README.rdoc
340
341
  - spec/dummy/Rakefile
341
342
  - spec/dummy/app/assets/config/manifest.js
342
343
  - spec/dummy/app/assets/images/.keep
343
344
  - spec/dummy/app/assets/javascripts/application.js
344
- - spec/dummy/app/assets/javascripts/cable.js
345
- - spec/dummy/app/assets/javascripts/channels/.keep
346
345
  - spec/dummy/app/assets/stylesheets/application.css
347
- - spec/dummy/app/channels/application_cable/channel.rb
348
- - spec/dummy/app/channels/application_cable/connection.rb
349
346
  - spec/dummy/app/controllers/application_controller.rb
350
347
  - spec/dummy/app/controllers/concerns/.keep
351
348
  - spec/dummy/app/controllers/home_controller.rb
352
349
  - spec/dummy/app/helpers/application_helper.rb
353
- - spec/dummy/app/jobs/application_job.rb
354
- - spec/dummy/app/mailers/application_mailer.rb
355
- - spec/dummy/app/models/application_record.rb
350
+ - spec/dummy/app/mailers/.keep
351
+ - spec/dummy/app/models/.keep
356
352
  - spec/dummy/app/models/concerns/.keep
357
353
  - spec/dummy/app/views/home/index.html.erb
358
354
  - spec/dummy/app/views/home/index.json.erb
359
355
  - spec/dummy/app/views/layouts/application.html.erb
360
- - spec/dummy/app/views/layouts/mailer.html.erb
361
- - spec/dummy/app/views/layouts/mailer.text.erb
362
356
  - spec/dummy/bin/bundle
363
357
  - spec/dummy/bin/rails
364
358
  - spec/dummy/bin/rake
365
359
  - spec/dummy/bin/setup
366
- - spec/dummy/bin/update
367
- - spec/dummy/bin/yarn
360
+ - spec/dummy/bin/spring
368
361
  - spec/dummy/config.ru
369
362
  - spec/dummy/config/application.rb
370
363
  - spec/dummy/config/boot.rb
371
- - spec/dummy/config/cable.yml
372
364
  - spec/dummy/config/database.yml
373
365
  - spec/dummy/config/environment.rb
374
366
  - spec/dummy/config/environments/development.rb
375
367
  - spec/dummy/config/environments/production.rb
376
- - spec/dummy/config/environments/test.rb
377
- - spec/dummy/config/initializers/application_controller_renderer.rb
378
368
  - spec/dummy/config/initializers/assets.rb
379
369
  - spec/dummy/config/initializers/backtrace_silencers.rb
380
- - spec/dummy/config/initializers/content_security_policy.rb
381
370
  - spec/dummy/config/initializers/cookies_serializer.rb
382
371
  - spec/dummy/config/initializers/filter_parameter_logging.rb
383
372
  - spec/dummy/config/initializers/inflections.rb
384
373
  - spec/dummy/config/initializers/mime_types.rb
374
+ - spec/dummy/config/initializers/session_store.rb
375
+ - spec/dummy/config/initializers/to_time_preserves_timezone.rb
385
376
  - spec/dummy/config/initializers/wrap_parameters.rb
386
377
  - spec/dummy/config/locales/en.yml
387
- - spec/dummy/config/puma.rb
388
378
  - spec/dummy/config/routes.rb
389
- - spec/dummy/config/spring.rb
390
- - spec/dummy/config/storage.yml
391
- - spec/dummy/db/schema.rb
392
- - spec/dummy/db/test.sqlite3
379
+ - spec/dummy/config/secrets.yml
380
+ - spec/dummy/db/seeds.rb
393
381
  - spec/dummy/lib/assets/.keep
382
+ - spec/dummy/lib/tasks/.keep
394
383
  - spec/dummy/log/.keep
395
- - spec/dummy/package.json
396
384
  - spec/dummy/public/404.html
397
385
  - spec/dummy/public/422.html
398
386
  - spec/dummy/public/500.html
399
- - spec/dummy/public/apple-touch-icon-precomposed.png
400
- - spec/dummy/public/apple-touch-icon.png
401
387
  - spec/dummy/public/favicon.ico
402
- - spec/dummy/storage/.keep
388
+ - spec/dummy/public/robots.txt
389
+ - spec/dummy/vendor/assets/javascripts/.keep
390
+ - spec/dummy/vendor/assets/stylesheets/.keep
403
391
  - spec/features/javascript_spec.rb
404
392
  - spec/rails_helper.rb
405
393
  - spec/raygun/breadcrumbs/breadcrumb_spec.rb
@@ -416,11 +404,11 @@ files:
416
404
  - test/unit/raygun_test.rb
417
405
  - test/unit/resque_failure_test.rb
418
406
  - test/unit/sidekiq_failure_test.rb
419
- homepage: http://raygun.io
407
+ homepage: https://raygun.com
420
408
  licenses:
421
409
  - MIT
422
410
  metadata: {}
423
- post_install_message:
411
+ post_install_message:
424
412
  rdoc_options: []
425
413
  require_paths:
426
414
  - lib
@@ -431,15 +419,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
431
419
  version: '2.0'
432
420
  required_rubygems_version: !ruby/object:Gem::Requirement
433
421
  requirements:
434
- - - ">="
422
+ - - ">"
435
423
  - !ruby/object:Gem::Version
436
- version: '0'
424
+ version: 1.3.1
437
425
  requirements: []
438
- rubyforge_project:
439
- rubygems_version: 2.6.8
440
- signing_key:
426
+ rubygems_version: 3.1.4
427
+ signing_key:
441
428
  specification_version: 4
442
- summary: This gem provides support for Ruby and Ruby on Rails for the Raygun.io error
429
+ summary: This gem provides support for Ruby and Ruby on Rails for the Raygun error
443
430
  reporter
444
431
  test_files:
445
432
  - test/integration/client_test.rb
@@ -1,23 +0,0 @@
1
- module Raygun
2
-
3
- class ItWorksException < StandardError; end
4
-
5
- module Testable
6
-
7
- def track_test_exception
8
- Raygun.configuration.silence_reporting = false
9
- raise ItWorksException.new("Woohoo! Your Raygun<->Ruby connection is set up correctly")
10
- rescue ItWorksException => e
11
- response = Raygun.track_exception(e)
12
-
13
- if response.success?
14
- puts "Success! Now go check your Raygun.io Dashboard"
15
- else
16
- puts "Oh-oh, something went wrong - double check your API key"
17
- puts "API Key - " << Raygun.configuration.api_key << ")"
18
- puts "API Response - " << response
19
- end
20
- end
21
-
22
- end
23
- end
@@ -1 +0,0 @@
1
- 2.5.1
@@ -1,13 +0,0 @@
1
- // Action Cable provides the framework to deal with WebSockets in Rails.
2
- // You can generate new channels where WebSocket features live using the `rails generate channel` command.
3
- //
4
- //= require action_cable
5
- //= require_self
6
- //= require_tree ./channels
7
-
8
- (function() {
9
- this.App || (this.App = {});
10
-
11
- App.cable = ActionCable.createConsumer();
12
-
13
- }).call(this);
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Channel < ActionCable::Channel::Base
3
- end
4
- end
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Connection < ActionCable::Connection::Base
3
- end
4
- end
@@ -1,2 +0,0 @@
1
- class ApplicationJob < ActiveJob::Base
2
- end
@@ -1,4 +0,0 @@
1
- class ApplicationMailer < ActionMailer::Base
2
- default from: 'from@example.com'
3
- layout 'mailer'
4
- end
@@ -1,3 +0,0 @@
1
- class ApplicationRecord < ActiveRecord::Base
2
- self.abstract_class = true
3
- end
@@ -1,13 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5
- <style>
6
- /* Email styles need to be inline */
7
- </style>
8
- </head>
9
-
10
- <body>
11
- <%= yield %>
12
- </body>
13
- </html>
@@ -1 +0,0 @@
1
- <%= yield %>
@@ -1,31 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'fileutils'
3
- include FileUtils
4
-
5
- # path to your application root.
6
- APP_ROOT = File.expand_path('..', __dir__)
7
-
8
- def system!(*args)
9
- system(*args) || abort("\n== Command #{args} failed ==")
10
- end
11
-
12
- chdir APP_ROOT do
13
- # This script is a way to update your development environment automatically.
14
- # Add necessary update steps to this file.
15
-
16
- puts '== Installing dependencies =='
17
- system! 'gem install bundler --conservative'
18
- system('bundle check') || system!('bundle install')
19
-
20
- # Install JavaScript dependencies if using Yarn
21
- # system('bin/yarn')
22
-
23
- puts "\n== Updating database =="
24
- system! 'bin/rails db:migrate'
25
-
26
- puts "\n== Removing old logs and tempfiles =="
27
- system! 'bin/rails log:clear tmp:clear'
28
-
29
- puts "\n== Restarting application server =="
30
- system! 'bin/rails restart'
31
- end