sentry-sanitizer 0.1.1 → 0.2.1

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: 828e9c8127ee2cf145f56ddd014f1c35f4b4994696cd2b7672e7cd8729a994a4
4
- data.tar.gz: 2e26bb264dc53d196f9e601ec1372ea9b791c5c2391380147a3b7f04117c65db
3
+ metadata.gz: 467bf578a00781bcbd0b1f6e239f9fcdbf9284130bb6e3816d0b772afbb9c910
4
+ data.tar.gz: 824f019bb5499f1829c188b76f97e63a749d6f6448c2a440a15c05dfe0053e62
5
5
  SHA512:
6
- metadata.gz: 596f541d0d381bc538f8f8129b2bd34186358f427eccfb9d72f96db140323d52b61dfcdc8d3ab3d43c78485c3cd9b2b85b2a30ed453b2c97e1a695674c010dfe
7
- data.tar.gz: adde04a80883da1e655715f40c7a05bf6abf8408ec8deecd2830927f37ca1a556ae148b8fd39251e65791a7ef2362daa8e0e720cd2da97e980384a35baba287b
6
+ metadata.gz: 3be12a7b4c5043134879e9964d84ba4b0cb7ab3a7dd23898074f83e4679eb509e7badc189367aa9e9d2fb132ef24020bfbe2b3c7668e43b9ee79e169ade871a3
7
+ data.tar.gz: b81b96a41689cb976137f7c83db0f82687ea09420bd85f826a0d2554b562c5922fdd00c9fc1c461acca3f419eac161a31845c8d546d5ba3cac8bd7ca07128839
@@ -0,0 +1,37 @@
1
+ name: CI
2
+ on:
3
+ push:
4
+ branches:
5
+ - master
6
+ pull_request:
7
+
8
+ jobs:
9
+ rspec:
10
+ name: Unit tests
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ include:
15
+ - { ruby_version: 2.4 }
16
+ - { ruby_version: 2.5 }
17
+ - { ruby_version: 2.4 }
18
+ - { ruby_version: 2.7 }
19
+ - { ruby_version: 3.0 }
20
+ - { ruby_version: jruby }
21
+ steps:
22
+ - uses: actions/checkout@v1
23
+
24
+ - name: Set up Ruby ${{ matrix.ruby_version }}
25
+ uses: ruby/setup-ruby@v1
26
+ with:
27
+ bundler: 2
28
+ ruby-version: ${{ matrix.ruby_version }}
29
+
30
+ - name: Run specs
31
+ run: |
32
+ bundle install --jobs 4 --retry 3 --no-cache
33
+ bundle exec rspec
34
+
35
+ - uses: codecov/codecov-action@v1
36
+ with:
37
+ token: ${{ secrets.CODECOV_TOKEN }}
data/CHANGELOG.md ADDED
@@ -0,0 +1,6 @@
1
+ # Changelog
2
+
3
+ ## Unreleased
4
+
5
+ ## 0.2.1
6
+ - Rework header cleaning to adhere to documentation in readme and not crash without configuration [#1](https://github.com/mrexox/sentry-sanitizer/pull/1)
data/Gemfile.lock CHANGED
@@ -1,20 +1,24 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sentry-sanitizer (0.1.0)
4
+ sentry-sanitizer (0.2.1)
5
5
  sentry-ruby (~> 4.2.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
+ codecov (0.4.3)
11
+ simplecov (>= 0.15, < 0.22)
10
12
  concurrent-ruby (1.1.8)
11
13
  diff-lcs (1.4.4)
14
+ docile (1.3.5)
12
15
  faraday (1.3.0)
13
16
  faraday-net_http (~> 1.0)
14
17
  multipart-post (>= 1.2, < 3)
15
18
  ruby2_keywords
16
19
  faraday-net_http (1.0.1)
17
20
  multipart-post (2.1.1)
21
+ rack (2.2.3)
18
22
  rake (10.5.0)
19
23
  rspec (3.10.0)
20
24
  rspec-core (~> 3.10.0)
@@ -37,15 +41,22 @@ GEM
37
41
  sentry-ruby-core (4.2.0)
38
42
  concurrent-ruby
39
43
  faraday
44
+ simplecov (0.18.5)
45
+ docile (~> 1.1)
46
+ simplecov-html (~> 0.11)
47
+ simplecov-html (0.12.3)
40
48
 
41
49
  PLATFORMS
42
50
  ruby
43
51
 
44
52
  DEPENDENCIES
45
53
  bundler (>= 1.17)
54
+ codecov
55
+ rack
46
56
  rake (~> 10.0)
47
57
  rspec (~> 3.0)
48
58
  sentry-sanitizer!
59
+ simplecov (~> 0.18.5)
49
60
 
50
61
  BUNDLED WITH
51
62
  2.1.4
data/LICENSE.txt CHANGED
@@ -1,21 +1,13 @@
1
- The MIT License (MIT)
1
+ The BSD-3-Clause license
2
2
 
3
3
  Copyright (c) 2021 Valentine Kiselev
4
4
 
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
5
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
11
6
 
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
7
+ 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
14
8
 
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
9
+ 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
10
+
11
+ 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
12
+
13
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
data/README.md CHANGED
@@ -1,15 +1,27 @@
1
- # Sentry::Sanitizer
1
+ ![CI](https://github.com/mrexox/sentry-sanitizer/workflows/CI/badge.svg)
2
+ [![Gem Version](https://badge.fury.io/rb/sentry-sanitizer.svg)](https://badge.fury.io/rb/sentry-sanitizer)
3
+ [![codecov](https://codecov.io/gh/mrexox/sentry-sanitizer/branch/master/graph/badge.svg?token=QW93HCVI0W)](https://codecov.io/gh/mrexox/sentry-sanitizer)
2
4
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/sentry/sanitizer`. To experiment with that code, run `bin/console` for an interactive prompt.
5
+ # sentry-sanitizer: sanitizing extension for sentry-ruby
4
6
 
5
- TODO: Delete this and the text above, and describe your gem
7
+ This gem aimed to add sanitizing support to [sentry-ruby](https://rubygems.org/gems/sentry-ruby) gem.
8
+
9
+ [sentry-raven](https://rubygems.org/gems/sentry-raven) gem had this apportunity but it is no longer supported. Moving from `sentry-raven` to `sentry-ruby` can surprise you with missing this ability. But you can still use `sentry-sanitizer` (with a little change to configuration).
10
+
11
+ Currently this gem provides following features
12
+ - [x] Sanitizing POST params
13
+ - [x] Sanitizing HTTP headers
14
+ - [x] Sanitizing cookies
15
+ - [x] Sanitizing extras ([see](https://docs.sentry.io/platforms/ruby/enriching-events/context/#additional-data) `Sentry.set_extras`)
6
16
 
7
17
  ## Installation
8
18
 
19
+ :warning: Please, don't use `0.1.*` version as it was experimental and not usable at all.
20
+
9
21
  Add this line to your application's Gemfile:
10
22
 
11
23
  ```ruby
12
- gem 'sentry-sanitizer'
24
+ gem 'sentry-sanitizer', '>= 0.2.0'
13
25
  ```
14
26
 
15
27
  And then execute:
@@ -22,7 +34,30 @@ Or install it yourself as:
22
34
 
23
35
  ## Usage
24
36
 
25
- TODO: Write usage instructions here
37
+ Add following lines to your Sentry configuration:
38
+
39
+ ```ruby
40
+ Sentry.init do |config|
41
+ # ... your configuration
42
+
43
+ # If using Rails
44
+ config.sanitize.fields = Rails.application.config.filter_parameters
45
+
46
+ # You can also pass custom array
47
+ config.sanitize.fields = %w[password super_secret_token]
48
+
49
+ # HTTP headers can be sanitized too (it is case insensitive)
50
+ config.sanitize.http_headers = %w[Authorization X-Xsrf-Token]
51
+
52
+ # You can sanitize all HTTP headers with setting `true` value
53
+ config.sanitize.http_headers = true
54
+
55
+ # You can sanitize all cookies with this setting
56
+ config.sanitize.cookies = true
57
+
58
+ # ...
59
+ end
60
+ ```
26
61
 
27
62
  ## Development
28
63
 
@@ -32,8 +67,8 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
32
67
 
33
68
  ## Contributing
34
69
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/sentry-sanitizer.
70
+ Bug reports and pull requests are welcome on GitHub at https://github.com/mrexox/sentry-sanitizer.
36
71
 
37
72
  ## License
38
73
 
39
- The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
74
+ The gem is available as open source under the terms of the [BSD-3-Clause License](https://opensource.org/licenses/BSD-3-Clause).
data/Rakefile CHANGED
@@ -1,9 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
3
 
4
- require "bundler/gem_helper"
5
- Bundler::GemHelper.install_tasks(name: "sentry-sanitizer")
6
-
7
4
  RSpec::Core::RakeTask.new(:spec)
8
5
 
9
6
  task :default => :spec
@@ -1,12 +1,6 @@
1
1
  module Sentry
2
2
  module Sanitizer
3
3
  class Cleaner
4
- HOOK = ->(event, hint) do
5
- Sentry::Sanitizer::Cleaner.new(Sentry.configuration.sanitize).call(event)
6
-
7
- event
8
- end.freeze
9
-
10
4
  DEFAULT_MASK = '[FILTERED]'.freeze
11
5
  DEFAULT_SENSITIVE_HEADERS = %w[
12
6
  Authorization
@@ -17,44 +11,74 @@ module Sentry
17
11
 
18
12
  def initialize(config)
19
13
  @fields = config.fields || []
20
- @http_headers = config.http_headers || []
21
- @cookies = config.cookies || false
14
+ @http_headers = config.http_headers || DEFAULT_SENSITIVE_HEADERS
15
+ @do_cookies = config.cookies || false
22
16
  end
23
17
 
24
18
  def call(event)
25
19
  if event.is_a?(Sentry::Event)
26
- event.request = sanitize_request(event.request) if event.request
27
- event.extra = sanitize_hash(event.extra) if event.extra
20
+ sanitize_request(event, :object) if event.request
21
+ event.extra = sanitize_data(event.extra)
22
+ elsif event.is_a?(Hash)
23
+ sanitize_request(event, :stringified_hash) if event['request']
24
+ sanitize_request(event, :symbolized_hash) if event[:request]
25
+ event['extra'] = sanitize_data(event['extra']) if event['extra']
26
+ event[:extra] = sanitize_data(event[:extra]) if event[:extra]
28
27
  end
29
28
  end
30
29
 
31
- def sanitize_request(request)
32
- request.data = sanitize_hash(request.data) if fields
33
- request.headers = sanitize_headers(request.headers) if http_headers
34
- request.cookies = sanitize_cookies(request.cookies) if cookies
30
+ def sanitize_request(event, type)
31
+ case type
32
+ when :object
33
+ event.request.data = sanitize_data(event.request.data)
34
+ event.request.headers = sanitize_headers(event.request.headers)
35
+ event.request.cookies = sanitize_cookies(event.request.cookies)
36
+ when :stringified_hash
37
+ event['request']['data'] = sanitize_data(event['request']['data'])
38
+ event['request']['headers'] = sanitize_headers(event['request']['headers'])
39
+ event['request']['cookies'] = sanitize_cookies(event['request']['cookies'])
40
+ when :symbolized_hash
41
+ event[:request][:data] = sanitize_data(event[:request][:data])
42
+ event[:request][:headers] = sanitize_headers(event[:request][:headers])
43
+ event[:request][:cookies] = sanitize_cookies(event[:request][:cookies])
44
+ end
35
45
  end
36
46
 
37
- def sanitize_hash(hash)
38
- return if hash.blank?
47
+ def sanitize_data(hash)
48
+ return hash unless hash.is_a? Hash
49
+ return hash unless fields.size.positive?
39
50
 
40
51
  sanitize_value(hash, nil)
41
52
  end
42
53
 
43
54
  private
44
55
 
45
- attr_reader :fields, :http_headers, :cookies
56
+ attr_reader :fields, :http_headers, :do_cookies
46
57
 
47
58
  # Sanitize specified headers
48
59
  def sanitize_headers(headers)
49
- headers.keys.select { |key| key.match?(sensitive_headers) }.each do |key|
50
- headers[key] = DEFAULT_MASK
51
- end
60
+ case http_headers
61
+ when TrueClass
62
+ headers.transform_values { DEFAULT_MASK }
63
+ when Array
64
+ return headers unless http_headers.size.positive?
65
+ http_headers_regex = sensitive_regexp(http_headers)
66
+
67
+ headers.keys.select { |key| key.match?(http_headers_regex) }.each do |key|
68
+ headers[key] = DEFAULT_MASK
69
+ end
52
70
 
53
- headers
71
+ headers
72
+ else
73
+ headers
74
+ end
54
75
  end
55
76
 
56
77
  # Sanitize all cookies
57
78
  def sanitize_cookies(cookies)
79
+ return cookies unless cookies.is_a? Hash
80
+ return cookies unless do_cookies
81
+
58
82
  cookies.transform_values { DEFAULT_MASK }
59
83
  end
60
84
 
@@ -97,10 +121,6 @@ module Sentry
97
121
  @sensitive_fields ||= sensitive_regexp(fields)
98
122
  end
99
123
 
100
- def sensitive_headers
101
- @sensitive_headers ||= sensitive_regexp(DEFAULT_SENSITIVE_HEADERS | http_headers)
102
- end
103
-
104
124
  def sensitive_regexp(fields)
105
125
  Regexp.new(fields.map { |field| "\\b#{field}\\b" }.join('|'), 'i')
106
126
  end
@@ -1,57 +1,24 @@
1
1
  require 'sentry/configuration'
2
2
  require 'sentry/sanitizer/cleaner'
3
+ require 'sentry/sanitizer/configuration_mixin'
3
4
 
4
5
  module Sentry
5
6
  # Monkey-patching Sentry::Configuration
6
7
  class Configuration
7
- # Allow adding multiple hooks for this extension
8
- def before_send=(value)
9
- unless value == false || value.respond_to?(:call)
10
- raise ArgumentError, "before_send must be callable (or false to disable)"
11
- end
12
-
13
- return value if value == false
8
+ # Add sanitizing configuration
9
+ attr_reader :sanitize
14
10
 
15
- @before_send_hook_list ||= []
16
- @before_send_hook_list << value
17
-
18
- @before_send = ->(event, hint) {
19
- @before_send_hook_list.each do |hook|
20
- event = hook.call(event, hint)
21
- end
22
- }
23
- end
11
+ # Patch before_send method so it could support more than one call
12
+ prepend Sentry::Sanitizer::ConfigurationMixin
24
13
 
25
- def sanitize
14
+ add_post_initialization_callback do
26
15
  @sanitize ||= Sentry::Sanitizer::Configuration.new
27
- end
28
16
 
29
- def sanitize_fields=(fields)
30
- unless fields.is_a? Array
31
- raise ArgumentError, 'sanitize_fields must be array'
32
- end
17
+ self.before_send = ->(event, hint) do
18
+ Sentry::Sanitizer::Cleaner.new(Sentry.configuration.sanitize).call(event)
33
19
 
34
- sanitize.fields = fields
35
- end
36
-
37
- def sanitize_http_headers=(headers)
38
- unless headers.is_a? Array
39
- raise ArgumentError, 'sanitize_http_headers must be array'
20
+ event
40
21
  end
41
-
42
- sanitize.http_headers = headers
43
- end
44
-
45
- def sanitize_cookies=(cookies)
46
- unless [TrueClass, FalseClass].include?(cookies.class)
47
- raise ArgumentError, 'sanitize_cookies must be boolean'
48
- end
49
-
50
- sanitize.cookies = cookies
51
- end
52
-
53
- add_post_initialization_callback do
54
- self.before_send = Sentry::Sanitizer::Cleaner::HOOK if sanitize.configured?
55
22
  end
56
23
  end
57
24
 
@@ -62,6 +29,30 @@ module Sentry
62
29
  def configured?
63
30
  [fields, http_headers, cookies].any? { |setting| !setting.nil? }
64
31
  end
32
+
33
+ def fields=(fields)
34
+ unless fields.is_a? Array
35
+ raise ArgumentError, 'sanitize_fields must be array'
36
+ end
37
+
38
+ @fields = fields
39
+ end
40
+
41
+ def http_headers=(headers)
42
+ unless [Array, TrueClass, FalseClass].include?(headers.class)
43
+ raise ArgumentError, 'sanitize_http_headers must be array'
44
+ end
45
+
46
+ @http_headers = headers
47
+ end
48
+
49
+ def cookies=(cookies)
50
+ unless [TrueClass, FalseClass].include?(cookies.class)
51
+ raise ArgumentError, 'sanitize_cookies must be boolean'
52
+ end
53
+
54
+ @cookies = cookies
55
+ end
65
56
  end
66
57
  end
67
58
  end
@@ -0,0 +1,25 @@
1
+ module Sentry
2
+ module Sanitizer
3
+ module ConfigurationMixin
4
+ # Allow adding multiple hooks for this extension
5
+ def before_send=(value)
6
+ unless value == false || value.respond_to?(:call)
7
+ raise ArgumentError, "before_send must be callable (or false to disable)"
8
+ end
9
+
10
+ return value if value == false
11
+
12
+ @before_send_hook_list ||= []
13
+ @before_send_hook_list << value
14
+
15
+ @before_send = ->(event, hint) {
16
+ @before_send_hook_list.each do |hook|
17
+ event = hook.call(event, hint)
18
+ end
19
+
20
+ event
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,5 +1,5 @@
1
1
  module Sentry
2
2
  module Sanitizer
3
- VERSION = "0.1.1"
3
+ VERSION = '0.2.1'
4
4
  end
5
5
  end
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  spec.email = ['mrexox@outlook.com']
12
12
 
13
13
  spec.summary = %q{Sanitizing middleware for sentry-ruby gem}
14
- spec.description = %q{Add missing sanitizing support for sentry-ruby (previous sentry-rav)}
14
+ spec.description = %q{Add missing sanitizing support for sentry-ruby (previous sentry-raven)}
15
15
  spec.homepage = 'https://github.com/mrexox/sentry-sanitizer'
16
16
  spec.license = 'BSD'
17
17
 
@@ -27,9 +27,14 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.require_paths = ['lib']
29
29
 
30
+ # Codecov
31
+ spec.add_development_dependency 'codecov'
32
+ spec.add_development_dependency 'simplecov', '~> 0.18.5'
33
+
30
34
  spec.add_development_dependency 'bundler', '>= 1.17'
31
35
  spec.add_development_dependency 'rake', '~> 10.0'
32
36
  spec.add_development_dependency 'rspec', '~> 3.0'
37
+ spec.add_development_dependency 'rack'
33
38
 
34
39
  spec.add_runtime_dependency 'sentry-ruby', '~> 4.2.0'
35
40
  end
metadata CHANGED
@@ -1,15 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sentry-sanitizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Valentine Kiselev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-05 00:00:00.000000000 Z
11
+ date: 2021-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: codecov
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: simplecov
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.18.5
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.18.5
13
41
  - !ruby/object:Gem::Dependency
14
42
  name: bundler
15
43
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +80,20 @@ dependencies:
52
80
  - - "~>"
53
81
  - !ruby/object:Gem::Version
54
82
  version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rack
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
55
97
  - !ruby/object:Gem::Dependency
56
98
  name: sentry-ruby
57
99
  requirement: !ruby/object:Gem::Requirement
@@ -66,16 +108,18 @@ dependencies:
66
108
  - - "~>"
67
109
  - !ruby/object:Gem::Version
68
110
  version: 4.2.0
69
- description: Add missing sanitizing support for sentry-ruby (previous sentry-rav)
111
+ description: Add missing sanitizing support for sentry-ruby (previous sentry-raven)
70
112
  email:
71
113
  - mrexox@outlook.com
72
114
  executables: []
73
115
  extensions: []
74
116
  extra_rdoc_files: []
75
117
  files:
118
+ - ".github/workflows/ci.yml"
76
119
  - ".gitignore"
77
120
  - ".rspec"
78
121
  - ".travis.yml"
122
+ - CHANGELOG.md
79
123
  - Gemfile
80
124
  - Gemfile.lock
81
125
  - LICENSE.txt
@@ -87,6 +131,7 @@ files:
87
131
  - lib/sentry/sanitizer.rb
88
132
  - lib/sentry/sanitizer/cleaner.rb
89
133
  - lib/sentry/sanitizer/configuration.rb
134
+ - lib/sentry/sanitizer/configuration_mixin.rb
90
135
  - lib/sentry/sanitizer/version.rb
91
136
  - sentry-sanitizer.gemspec
92
137
  homepage: https://github.com/mrexox/sentry-sanitizer