sentry-raven 2.13.0 → 3.1.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 (58) hide show
  1. checksums.yaml +4 -4
  2. data/.craft.yml +15 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  4. data/.github/pull_request_template.md +16 -0
  5. data/.github/workflows/test.yml +92 -0
  6. data/.github/workflows/zeus_upload.yml +32 -0
  7. data/.gitignore +3 -0
  8. data/.rubocop.yml +50 -12
  9. data/.scripts/bump-version.sh +9 -0
  10. data/{changelog.md → CHANGELOG.md} +155 -1
  11. data/CONTRIBUTING.md +71 -0
  12. data/Gemfile +20 -25
  13. data/README.md +26 -16
  14. data/lib/raven/backtrace.rb +9 -5
  15. data/lib/raven/base.rb +6 -2
  16. data/lib/raven/breadcrumbs/{activesupport.rb → active_support_logger.rb} +9 -3
  17. data/lib/raven/breadcrumbs/logger.rb +2 -92
  18. data/lib/raven/breadcrumbs/sentry_logger.rb +73 -0
  19. data/lib/raven/breadcrumbs.rb +1 -1
  20. data/lib/raven/cli.rb +10 -21
  21. data/lib/raven/client.rb +9 -4
  22. data/lib/raven/configuration.rb +86 -10
  23. data/lib/raven/context.rb +13 -8
  24. data/lib/raven/core_ext/object/deep_dup.rb +57 -0
  25. data/lib/raven/core_ext/object/duplicable.rb +153 -0
  26. data/lib/raven/event.rb +27 -15
  27. data/lib/raven/helpers/deprecation_helper.rb +17 -0
  28. data/lib/raven/instance.rb +9 -4
  29. data/lib/raven/integrations/delayed_job.rb +13 -14
  30. data/lib/raven/integrations/rack-timeout.rb +7 -4
  31. data/lib/raven/integrations/rack.rb +4 -3
  32. data/lib/raven/integrations/rails/active_job.rb +6 -4
  33. data/lib/raven/integrations/rails/backtrace_cleaner.rb +29 -0
  34. data/lib/raven/integrations/rails/overrides/debug_exceptions_catcher.rb +2 -2
  35. data/lib/raven/integrations/rails.rb +13 -3
  36. data/lib/raven/integrations/sidekiq/cleanup_middleware.rb +13 -0
  37. data/lib/raven/integrations/sidekiq/context_filter.rb +42 -0
  38. data/lib/raven/integrations/sidekiq/error_handler.rb +38 -0
  39. data/lib/raven/integrations/sidekiq.rb +4 -78
  40. data/lib/raven/interface.rb +2 -2
  41. data/lib/raven/interfaces/stack_trace.rb +1 -1
  42. data/lib/raven/linecache.rb +5 -2
  43. data/lib/raven/logger.rb +3 -2
  44. data/lib/raven/processor/cookies.rb +16 -6
  45. data/lib/raven/processor/post_data.rb +2 -0
  46. data/lib/raven/processor/removecircularreferences.rb +3 -1
  47. data/lib/raven/processor/sanitizedata.rb +65 -17
  48. data/lib/raven/processor/utf8conversion.rb +2 -0
  49. data/lib/raven/transports/http.rb +5 -5
  50. data/lib/raven/transports.rb +4 -0
  51. data/lib/raven/utils/exception_cause_chain.rb +1 -0
  52. data/lib/raven/utils/real_ip.rb +1 -1
  53. data/lib/raven/version.rb +2 -2
  54. data/lib/sentry-raven-without-integrations.rb +6 -1
  55. data/lib/sentry_raven_without_integrations.rb +1 -0
  56. data/sentry-raven.gemspec +2 -2
  57. metadata +21 -12
  58. data/.travis.yml +0 -47
@@ -26,10 +26,10 @@ module Raven
26
26
  req.headers['X-Sentry-Auth'] = auth_header
27
27
  req.body = data
28
28
  end
29
- rescue Faraday::Error => ex
30
- error_info = ex.message
31
- if ex.response && ex.response[:headers]['x-sentry-error']
32
- error_info += " Error in headers is: #{ex.response[:headers]['x-sentry-error']}"
29
+ rescue Faraday::Error => e
30
+ error_info = e.message
31
+ if e.response && e.response[:headers]['x-sentry-error']
32
+ error_info += " Error in headers is: #{e.response[:headers]['x-sentry-error']}"
33
33
  end
34
34
  raise Raven::Error, error_info
35
35
  end
@@ -42,7 +42,7 @@ module Raven
42
42
  proxy = configuration.public_send(:proxy)
43
43
 
44
44
  Faraday.new(configuration.server, :ssl => ssl_configuration, :proxy => proxy) do |builder|
45
- configuration.faraday_builder.call(builder) if configuration.faraday_builder
45
+ configuration.faraday_builder&.call(builder)
46
46
  builder.response :raise_error
47
47
  builder.options.merge! faraday_opts
48
48
  builder.headers[:user_agent] = "sentry-ruby/#{Raven::VERSION}"
@@ -13,3 +13,7 @@ module Raven
13
13
  end
14
14
  end
15
15
  end
16
+
17
+ require "raven/transports/dummy"
18
+ require "raven/transports/http"
19
+ require "raven/transports/stdout"
@@ -7,6 +7,7 @@ module Raven
7
7
  while exception.cause
8
8
  exception = exception.cause
9
9
  break if exceptions.any? { |e| e.object_id == exception.object_id }
10
+
10
11
  exceptions << exception
11
12
  end
12
13
  exceptions
@@ -13,7 +13,7 @@ module Raven
13
13
  "fc00::/7", # private IPv6 range fc00::/7
14
14
  "10.0.0.0/8", # private IPv4 range 10.x.x.x
15
15
  "172.16.0.0/12", # private IPv4 range 172.16.0.0 .. 172.31.255.255
16
- "192.168.0.0/16", # private IPv4 range 192.168.x.x
16
+ "192.168.0.0/16" # private IPv4 range 192.168.x.x
17
17
  ].map { |proxy| IPAddr.new(proxy) }
18
18
 
19
19
  attr_accessor :ip, :ip_addresses
data/lib/raven/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Raven
3
- # Freezing this constant breaks in 1.9.x
4
- VERSION = "2.13.0" # rubocop:disable Style/MutableConstant
4
+ VERSION = "3.1.0"
5
5
  end
@@ -1 +1,6 @@
1
- require 'raven/base'
1
+ require "raven/helpers/deprecation_helper"
2
+
3
+ filename = "sentry_raven_without_integrations"
4
+ DeprecationHelper.deprecate_dasherized_filename(filename)
5
+
6
+ require filename
@@ -0,0 +1 @@
1
+ require 'raven/base'
data/sentry-raven.gemspec CHANGED
@@ -11,11 +11,11 @@ Gem::Specification.new do |gem|
11
11
 
12
12
  gem.version = Raven::VERSION
13
13
  gem.platform = Gem::Platform::RUBY
14
- gem.required_ruby_version = '>= 1.9.0'
14
+ gem.required_ruby_version = '>= 2.3'
15
15
  gem.extra_rdoc_files = ["README.md", "LICENSE"]
16
16
  gem.files = `git ls-files | grep -Ev '^(spec|benchmarks|examples)'`.split("\n")
17
17
  gem.bindir = "exe"
18
18
  gem.executables = "raven"
19
19
 
20
- gem.add_dependency "faraday", ">= 0.7.6", "< 1.0"
20
+ gem.add_dependency "faraday", ">= 1.0"
21
21
  end
metadata CHANGED
@@ -1,23 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sentry-raven
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.13.0
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sentry Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-12-17 00:00:00.000000000 Z
11
+ date: 2020-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 0.7.6
20
- - - "<"
21
18
  - !ruby/object:Gem::Version
22
19
  version: '1.0'
23
20
  type: :runtime
@@ -25,9 +22,6 @@ dependencies:
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - ">="
28
- - !ruby/object:Gem::Version
29
- version: 0.7.6
30
- - - "<"
31
25
  - !ruby/object:Gem::Version
32
26
  version: '1.0'
33
27
  description: A gem that provides a client interface for the Sentry error logger
@@ -39,34 +33,45 @@ extra_rdoc_files:
39
33
  - README.md
40
34
  - LICENSE
41
35
  files:
36
+ - ".craft.yml"
37
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
38
+ - ".github/pull_request_template.md"
39
+ - ".github/workflows/test.yml"
40
+ - ".github/workflows/zeus_upload.yml"
42
41
  - ".gitignore"
43
42
  - ".gitmodules"
44
43
  - ".rspec"
45
44
  - ".rubocop.yml"
46
- - ".travis.yml"
45
+ - ".scripts/bump-version.sh"
46
+ - CHANGELOG.md
47
+ - CONTRIBUTING.md
47
48
  - Gemfile
48
49
  - LICENSE
49
50
  - README.md
50
51
  - Rakefile
51
- - changelog.md
52
52
  - exe/raven
53
53
  - lib/raven.rb
54
54
  - lib/raven/backtrace.rb
55
55
  - lib/raven/base.rb
56
56
  - lib/raven/breadcrumbs.rb
57
- - lib/raven/breadcrumbs/activesupport.rb
57
+ - lib/raven/breadcrumbs/active_support_logger.rb
58
58
  - lib/raven/breadcrumbs/logger.rb
59
+ - lib/raven/breadcrumbs/sentry_logger.rb
59
60
  - lib/raven/cli.rb
60
61
  - lib/raven/client.rb
61
62
  - lib/raven/configuration.rb
62
63
  - lib/raven/context.rb
64
+ - lib/raven/core_ext/object/deep_dup.rb
65
+ - lib/raven/core_ext/object/duplicable.rb
63
66
  - lib/raven/event.rb
67
+ - lib/raven/helpers/deprecation_helper.rb
64
68
  - lib/raven/instance.rb
65
69
  - lib/raven/integrations/delayed_job.rb
66
70
  - lib/raven/integrations/rack-timeout.rb
67
71
  - lib/raven/integrations/rack.rb
68
72
  - lib/raven/integrations/rails.rb
69
73
  - lib/raven/integrations/rails/active_job.rb
74
+ - lib/raven/integrations/rails/backtrace_cleaner.rb
70
75
  - lib/raven/integrations/rails/controller_methods.rb
71
76
  - lib/raven/integrations/rails/controller_transaction.rb
72
77
  - lib/raven/integrations/rails/overrides/debug_exceptions_catcher.rb
@@ -74,6 +79,9 @@ files:
74
79
  - lib/raven/integrations/railties.rb
75
80
  - lib/raven/integrations/rake.rb
76
81
  - lib/raven/integrations/sidekiq.rb
82
+ - lib/raven/integrations/sidekiq/cleanup_middleware.rb
83
+ - lib/raven/integrations/sidekiq/context_filter.rb
84
+ - lib/raven/integrations/sidekiq/error_handler.rb
77
85
  - lib/raven/integrations/tasks.rb
78
86
  - lib/raven/interface.rb
79
87
  - lib/raven/interfaces/exception.rb
@@ -101,6 +109,7 @@ files:
101
109
  - lib/raven/version.rb
102
110
  - lib/sentry-raven-without-integrations.rb
103
111
  - lib/sentry-raven.rb
112
+ - lib/sentry_raven_without_integrations.rb
104
113
  - sentry-raven.gemspec
105
114
  homepage: https://github.com/getsentry/raven-ruby
106
115
  licenses:
@@ -114,7 +123,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
114
123
  requirements:
115
124
  - - ">="
116
125
  - !ruby/object:Gem::Version
117
- version: 1.9.0
126
+ version: '2.3'
118
127
  required_rubygems_version: !ruby/object:Gem::Requirement
119
128
  requirements:
120
129
  - - ">="
data/.travis.yml DELETED
@@ -1,47 +0,0 @@
1
- language: ruby
2
- dist: trusty
3
- group: beta
4
- cache: bundler
5
-
6
- services:
7
- - redis-server
8
-
9
- branches:
10
- only: [master]
11
-
12
- rvm:
13
- - 2.2.10
14
- - 2.3.8
15
- - 2.4.9
16
- - 2.5.7
17
- - 2.6.5
18
-
19
- env:
20
- - RAILS_VERSION=4
21
- - RAILS_VERSION=5
22
- - RAILS_VERSION=0
23
-
24
- addons:
25
- apt:
26
- packages:
27
- - haveged
28
-
29
- before_install:
30
- - service haveged start
31
- # Pin bundler version due to https://github.com/rubygems/rubygems/issues/2055
32
- - gem install bundler -v 1.16.0
33
-
34
- matrix:
35
- include:
36
- - rvm: 1.9
37
- env: RAILS_VERSION=4
38
- - rvm: jruby-1.7.27
39
- env: JRUBY_OPTS="--dev" RAILS_VERSION=4
40
- - rvm: jruby-9.2.9.0
41
- env: JRUBY_OPTS="--dev -J-Djruby.launch.inproc=true -J-Xmx1024M" RAILS_VERSION=4
42
- - rvm: jruby-9.2.9.0
43
- env: JRUBY_OPTS="--dev -J-Djruby.launch.inproc=true -J-Xmx1024M" RAILS_VERSION=5
44
- - rvm: ruby-head
45
- env: RAILS_VERSION=0
46
- allow_failures:
47
- - rvm: ruby-head