raven-processor-sanitizessn 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 768114d9f3460660d17f2bf77ff758b1c02f6400
4
+ data.tar.gz: 8bf701f5302b03185c905575be7d0a20a51be663
5
+ SHA512:
6
+ metadata.gz: 4eb2187118f59fa420d769eb4bd46e90a0cce5f113db48df21eea65c0191744ac3fcd0c7abdec2c53cd511b4251205a3e6d8c205865f2408a586f8fe64ec038c
7
+ data.tar.gz: 72c88fb596585cf725acc75825a5c5d614edfcc10ddc807677fae19f5667f60f09f314ad66a86f43d5eb3f95b9f22a3a917d3c79798fa7a9c9f3abd775cf636c
@@ -33,8 +33,16 @@ module Raven
33
33
  value.map do |value_|
34
34
  apply(value_, key, visited, &block)
35
35
  end
36
- elsif json_data = parse_as_json(value) && json_data.is_a?(Hash)
37
- apply(json_data, key, visited, &block)
36
+ elsif value.is_a?(String) && json_hash = JSON.parse(value) rescue nil
37
+ return "[...]" if visited.include?(value.__id__)
38
+ visited += [value.__id__]
39
+
40
+ json_hash = json_hash.each.reduce({}) do |memo, (k, v)|
41
+ memo[k] = apply(v, k, visited, &block)
42
+ memo
43
+ end
44
+
45
+ json_hash.to_json
38
46
  else
39
47
  block.call(key, value)
40
48
  end
@@ -58,10 +66,6 @@ module Raven
58
66
 
59
67
  private
60
68
 
61
- def parse_as_json(value)
62
- JSON.parse(value) rescue value
63
- end
64
-
65
69
  def clean_invalid_utf8_bytes(text)
66
70
  if RUBY_VERSION <= '1.8.7'
67
71
  text
@@ -1,7 +1,7 @@
1
1
  module Raven
2
2
  module Processor
3
3
  module SanitizeSSNVersion
4
- VERSION = "0.1.1"
4
+ VERSION = "0.2.0"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raven-processor-sanitizessn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
5
- prerelease:
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Cozy Services Ltd.
@@ -10,12 +9,11 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-05-09 00:00:00.000000000 Z
12
+ date: 2014-06-09 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: sentry-raven
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
18
  - - ~>
21
19
  - !ruby/object:Gem::Version
@@ -23,7 +21,6 @@ dependencies:
23
21
  type: :runtime
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
25
  - - ~>
29
26
  - !ruby/object:Gem::Version
@@ -40,27 +37,26 @@ files:
40
37
  homepage: http://github.com/cozyco/raven-processor-sanitizessn
41
38
  licenses:
42
39
  - Apache
40
+ metadata: {}
43
41
  post_install_message:
44
42
  rdoc_options: []
45
43
  require_paths:
46
44
  - lib
47
45
  required_ruby_version: !ruby/object:Gem::Requirement
48
- none: false
49
46
  requirements:
50
- - - ! '>='
47
+ - - '>='
51
48
  - !ruby/object:Gem::Version
52
49
  version: '0'
53
50
  required_rubygems_version: !ruby/object:Gem::Requirement
54
- none: false
55
51
  requirements:
56
- - - ! '>='
52
+ - - '>='
57
53
  - !ruby/object:Gem::Version
58
54
  version: '0'
59
55
  requirements: []
60
56
  rubyforge_project:
61
- rubygems_version: 1.8.23
57
+ rubygems_version: 2.0.14
62
58
  signing_key:
63
- specification_version: 3
59
+ specification_version: 4
64
60
  summary: A processor plugin for the Sentry Raven gem that sanitizes Social Security
65
61
  Number fields.
66
62
  test_files: []