rollbar 2.8.1 → 2.8.2

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.
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Change Log
2
2
 
3
+ ## 2.8.2
4
+
5
+ Bug fixes:
6
+
7
+ - Rollbar JavaScript: Make <head> lookup stricter to avoid matching <header>. See [#394](https://github.com/rollbar/rollbar-gem/pull/394)
8
+ - Fix encoding problem when scrubing parameters. See [#395](https://github.com/rollbar/rollbar-gem/pull/395)
9
+
3
10
  ## 2.8.1
4
11
 
5
12
  New features:
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Rollbar notifier for Ruby [![Build Status](https://api.travis-ci.org/rollbar/rollbar-gem.svg?branch=v2.8.1)](https://travis-ci.org/rollbar/rollbar-gem/branches)
1
+ # Rollbar notifier for Ruby [![Build Status](https://api.travis-ci.org/rollbar/rollbar-gem.svg?branch=v2.8.2)](https://travis-ci.org/rollbar/rollbar-gem/branches)
2
2
 
3
3
  <!-- RemoveNext -->
4
4
  [Rollbar](https://rollbar.com) is an error tracking service for Ruby and other languages. The Rollbar service will alert you of problems with your code and help you understand them in a ways never possible before. We love it and we hope you will too.
@@ -12,7 +12,7 @@ This is the Ruby library for Rollbar. It will instrument many kinds of Ruby appl
12
12
  Add this line to your application's Gemfile:
13
13
 
14
14
  ```ruby
15
- gem 'rollbar', '~> 2.8.1'
15
+ gem 'rollbar', '~> 2.8.2'
16
16
  ```
17
17
 
18
18
  And then execute:
@@ -90,7 +90,7 @@ module Rollbar
90
90
  end
91
91
 
92
92
  def find_end_of_head_open(body)
93
- head_open = body.index('<head')
93
+ head_open = body.index(/<head\W/)
94
94
  body.index('>', head_open) + 1 if head_open
95
95
  end
96
96
 
@@ -194,7 +194,7 @@ module Rollbar
194
194
  return {} unless params
195
195
 
196
196
  params.to_hash.inject({}) do |result, (key, value)|
197
- if sensitive_params_regexp =~ key.to_s
197
+ if sensitive_params_regexp =~ Rollbar::Encoding.encode(key).to_s
198
198
  result[key] = rollbar_scrubbed(value)
199
199
  elsif value.is_a?(Hash)
200
200
  result[key] = rollbar_filtered_params(sensitive_params, value)
@@ -1,3 +1,3 @@
1
1
  module Rollbar
2
- VERSION = "2.8.1"
2
+ VERSION = "2.8.2"
3
3
  end
@@ -79,6 +79,14 @@ END
79
79
  end
80
80
  end
81
81
 
82
+ context 'having a html 200 response without head but with an header tag', :add_js => false do
83
+ let(:body) { ['<header>foobar</header>'] }
84
+ let(:status) { 200 }
85
+ let(:headers) do
86
+ { 'Content-Type' => content_type }
87
+ end
88
+ end
89
+
82
90
  context 'having a html 302 response', :add_js => false do
83
91
  let(:body) { ['foobar'] }
84
92
  let(:status) { 302 }
@@ -31,6 +31,27 @@ describe Rollbar::RequestDataExtractor do
31
31
 
32
32
  expect(result).to be_kind_of(Hash)
33
33
  end
34
+
35
+ context 'with invalid utf8 sequence in key', :if => RUBY_VERSION != '1.8.7' do
36
+ let(:data) do
37
+ File.read(File.expand_path('../../support/encodings/iso_8859_9', __FILE__)).force_encoding(Encoding::ISO_8859_9)
38
+ end
39
+ let(:env) do
40
+ env = Rack::MockRequest.env_for('/',
41
+ 'HTTP_HOST' => 'localhost:81',
42
+ 'HTTP_X_FORWARDED_HOST' => 'example.org:9292',
43
+ 'CONTENT_TYPE' => 'application/json')
44
+
45
+ env['rack.session'] = { data => 'foo' }
46
+ env
47
+ end
48
+
49
+ it 'doesnt crash' do
50
+ result = subject.extract_request_data_from_rack(env)
51
+
52
+ expect(result).to be_kind_of(Hash)
53
+ end
54
+ end
34
55
  end
35
56
 
36
57
  describe '#rollbar_scrubbed_value' do
@@ -0,0 +1 @@
1
+ ����������
metadata CHANGED
@@ -1,223 +1,219 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rollbar
3
- version: !ruby/object:Gem::Version
4
- version: 2.8.1
3
+ version: !ruby/object:Gem::Version
4
+ hash: 43
5
+ prerelease:
6
+ segments:
7
+ - 2
8
+ - 8
9
+ - 2
10
+ version: 2.8.2
5
11
  platform: ruby
6
- authors:
12
+ authors:
7
13
  - Rollbar, Inc.
8
14
  autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
- date: 2016-03-03 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2016-03-04 00:00:00 +01:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
14
22
  name: rails
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 3.0.0
20
- type: :development
21
23
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
24
27
  - - ">="
25
- - !ruby/object:Gem::Version
28
+ - !ruby/object:Gem::Version
29
+ hash: 7
30
+ segments:
31
+ - 3
32
+ - 0
33
+ - 0
26
34
  version: 3.0.0
27
- - !ruby/object:Gem::Dependency
28
- name: rspec-rails
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 2.14.0
34
35
  type: :development
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: rspec-rails
35
39
  prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
38
43
  - - ">="
39
- - !ruby/object:Gem::Version
44
+ - !ruby/object:Gem::Version
45
+ hash: 55
46
+ segments:
47
+ - 2
48
+ - 14
49
+ - 0
40
50
  version: 2.14.0
41
- - !ruby/object:Gem::Dependency
42
- name: database_cleaner
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: 1.0.0
48
51
  type: :development
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: database_cleaner
49
55
  prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ hash: 23
62
+ segments:
63
+ - 1
64
+ - 0
65
+ - 0
54
66
  version: 1.0.0
55
- - !ruby/object:Gem::Dependency
56
- name: girl_friday
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: 0.11.1
62
67
  type: :development
68
+ version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ name: girl_friday
63
71
  prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
72
+ requirement: &id004 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
66
75
  - - ">="
67
- - !ruby/object:Gem::Version
76
+ - !ruby/object:Gem::Version
77
+ hash: 49
78
+ segments:
79
+ - 0
80
+ - 11
81
+ - 1
68
82
  version: 0.11.1
69
- - !ruby/object:Gem::Dependency
70
- name: sucker_punch
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '2.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '2.0'
83
- - !ruby/object:Gem::Dependency
84
- name: sidekiq
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: 2.13.0
90
83
  type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: 2.13.0
97
- - !ruby/object:Gem::Dependency
84
+ version_requirements: *id004
85
+ - !ruby/object:Gem::Dependency
98
86
  name: genspec
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: 0.2.8
104
- type: :development
105
87
  prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
88
+ requirement: &id005 !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
108
91
  - - ">="
109
- - !ruby/object:Gem::Version
92
+ - !ruby/object:Gem::Version
93
+ hash: 7
94
+ segments:
95
+ - 0
96
+ - 2
97
+ - 8
110
98
  version: 0.2.8
111
- - !ruby/object:Gem::Dependency
112
- name: sinatra
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
99
  type: :development
100
+ version_requirements: *id005
101
+ - !ruby/object:Gem::Dependency
102
+ name: sinatra
119
103
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: resque
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
104
+ requirement: &id006 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
129
107
  - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
108
+ - !ruby/object:Gem::Version
109
+ hash: 3
110
+ segments:
111
+ - 0
112
+ version: "0"
132
113
  type: :development
114
+ version_requirements: *id006
115
+ - !ruby/object:Gem::Dependency
116
+ name: resque
133
117
  prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
118
+ requirement: &id007 !ruby/object:Gem::Requirement
119
+ none: false
120
+ requirements:
136
121
  - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
- - !ruby/object:Gem::Dependency
140
- name: delayed_job
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '0'
122
+ - !ruby/object:Gem::Version
123
+ hash: 3
124
+ segments:
125
+ - 0
126
+ version: "0"
146
127
  type: :development
128
+ version_requirements: *id007
129
+ - !ruby/object:Gem::Dependency
130
+ name: delayed_job
147
131
  prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
132
+ requirement: &id008 !ruby/object:Gem::Requirement
133
+ none: false
134
+ requirements:
150
135
  - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: rake
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: 0.9.0
136
+ - !ruby/object:Gem::Version
137
+ hash: 3
138
+ segments:
139
+ - 0
140
+ version: "0"
160
141
  type: :development
142
+ version_requirements: *id008
143
+ - !ruby/object:Gem::Dependency
144
+ name: rake
161
145
  prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
146
+ requirement: &id009 !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
164
149
  - - ">="
165
- - !ruby/object:Gem::Version
150
+ - !ruby/object:Gem::Version
151
+ hash: 59
152
+ segments:
153
+ - 0
154
+ - 9
155
+ - 0
166
156
  version: 0.9.0
167
- - !ruby/object:Gem::Dependency
168
- name: redis
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
157
  type: :development
158
+ version_requirements: *id009
159
+ - !ruby/object:Gem::Dependency
160
+ name: redis
175
161
  prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
162
+ requirement: &id010 !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
178
165
  - - ">="
179
- - !ruby/object:Gem::Version
180
- version: '0'
181
- - !ruby/object:Gem::Dependency
166
+ - !ruby/object:Gem::Version
167
+ hash: 3
168
+ segments:
169
+ - 0
170
+ version: "0"
171
+ type: :development
172
+ version_requirements: *id010
173
+ - !ruby/object:Gem::Dependency
182
174
  name: multi_json
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: '0'
188
- type: :runtime
189
175
  prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
176
+ requirement: &id011 !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
192
179
  - - ">="
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
- - !ruby/object:Gem::Dependency
180
+ - !ruby/object:Gem::Version
181
+ hash: 3
182
+ segments:
183
+ - 0
184
+ version: "0"
185
+ type: :runtime
186
+ version_requirements: *id011
187
+ - !ruby/object:Gem::Dependency
196
188
  name: oj
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - "~>"
200
- - !ruby/object:Gem::Version
201
- version: 2.12.14
202
- type: :development
203
189
  prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - "~>"
207
- - !ruby/object:Gem::Version
190
+ requirement: &id012 !ruby/object:Gem::Requirement
191
+ none: false
192
+ requirements:
193
+ - - ~>
194
+ - !ruby/object:Gem::Version
195
+ hash: 35
196
+ segments:
197
+ - 2
198
+ - 12
199
+ - 14
208
200
  version: 2.12.14
201
+ type: :development
202
+ version_requirements: *id012
209
203
  description: Easy and powerful exception tracking for Ruby
210
- email:
204
+ email:
211
205
  - support@rollbar.com
212
- executables:
206
+ executables:
213
207
  - rollbar-rails-runner
214
208
  extensions: []
209
+
215
210
  extra_rdoc_files: []
216
- files:
217
- - ".gitignore"
218
- - ".gitmodules"
219
- - ".rubocop.yml"
220
- - ".travis.yml"
211
+
212
+ files:
213
+ - .gitignore
214
+ - .gitmodules
215
+ - .rubocop.yml
216
+ - .travis.yml
221
217
  - Appraisals
222
218
  - CHANGELOG.md
223
219
  - Gemfile
@@ -394,36 +390,47 @@ files:
394
390
  - spec/spec_helper.rb
395
391
  - spec/support/cause_exception.rb
396
392
  - spec/support/encoding_helpers.rb
393
+ - spec/support/encodings/iso_8859_9
397
394
  - spec/support/fixture_helpers.rb
398
395
  - spec/support/get_ip_raising.rb
399
396
  - spec/support/helpers.rb
400
397
  - spec/support/notifier_helpers.rb
401
398
  - spec/support/shared_contexts.rb
399
+ has_rdoc: true
402
400
  homepage: https://rollbar.com
403
- licenses:
401
+ licenses:
404
402
  - MIT
405
- metadata: {}
406
403
  post_install_message:
407
404
  rdoc_options: []
408
- require_paths:
405
+
406
+ require_paths:
409
407
  - lib
410
- required_ruby_version: !ruby/object:Gem::Requirement
411
- requirements:
408
+ required_ruby_version: !ruby/object:Gem::Requirement
409
+ none: false
410
+ requirements:
412
411
  - - ">="
413
- - !ruby/object:Gem::Version
414
- version: '0'
415
- required_rubygems_version: !ruby/object:Gem::Requirement
416
- requirements:
412
+ - !ruby/object:Gem::Version
413
+ hash: 3
414
+ segments:
415
+ - 0
416
+ version: "0"
417
+ required_rubygems_version: !ruby/object:Gem::Requirement
418
+ none: false
419
+ requirements:
417
420
  - - ">="
418
- - !ruby/object:Gem::Version
419
- version: '0'
421
+ - !ruby/object:Gem::Version
422
+ hash: 3
423
+ segments:
424
+ - 0
425
+ version: "0"
420
426
  requirements: []
427
+
421
428
  rubyforge_project:
422
- rubygems_version: 2.4.5
429
+ rubygems_version: 1.6.2
423
430
  signing_key:
424
- specification_version: 4
431
+ specification_version: 3
425
432
  summary: Reports exceptions to Rollbar
426
- test_files:
433
+ test_files:
427
434
  - spec/cacert.pem
428
435
  - spec/controllers/home_controller_spec.rb
429
436
  - spec/delay/sidekiq_spec.rb
@@ -520,6 +527,7 @@ test_files:
520
527
  - spec/spec_helper.rb
521
528
  - spec/support/cause_exception.rb
522
529
  - spec/support/encoding_helpers.rb
530
+ - spec/support/encodings/iso_8859_9
523
531
  - spec/support/fixture_helpers.rb
524
532
  - spec/support/get_ip_raising.rb
525
533
  - spec/support/helpers.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: f919b4aa0a21d8051cb1c7bb0dd0e016e262ab49
4
- data.tar.gz: 0ba1643f05092333d1b6c8d4999f05c2145408b7
5
- SHA512:
6
- metadata.gz: 3b88701401c5146985d081d7a8064e7bd73550a5d1419a47cdff8d41af0d619fb5ef202ca24014f098d83901554cb287734ee1d08fe9f5169cb5184916460e54
7
- data.tar.gz: 5bdd0ca265bb6a1f68aa9d8c0d4738a2f1529e5232d6d6ffccaf7c83b9ea780700d65cfdbe4ef5687f91b4620fb538d0b2967ccaae528163c08c143579e2f36f