rollbar 2.27.0 → 3.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -60,6 +60,10 @@ module Rollbar
60
60
  end
61
61
 
62
62
  def self.skip_report?(job)
63
+ handler = ::Rollbar.configuration.async_skip_report_handler
64
+
65
+ return handler.call(job) if handler.respond_to?(:call)
66
+
63
67
  job.attempts < ::Rollbar.configuration.dj_threshold
64
68
  end
65
69
 
@@ -67,10 +67,7 @@ module Rollbar
67
67
 
68
68
  params = decode_www_form(query)
69
69
 
70
- encoded_query = encode_www_form(filter_query_params(params, regex, randomize_scrub_length, scrub_all, whitelist))
71
-
72
- # We want this to rebuild array params like foo[]=1&foo[]=2
73
- URI.escape(CGI.unescape(encoded_query))
70
+ encode_www_form(filter_query_params(params, regex, randomize_scrub_length, scrub_all, whitelist))
74
71
  end
75
72
 
76
73
  def decode_www_form(query)
@@ -78,7 +75,15 @@ module Rollbar
78
75
  end
79
76
 
80
77
  def encode_www_form(params)
81
- URI.encode_www_form(params)
78
+ restore_square_brackets(URI.encode_www_form(params))
79
+ end
80
+
81
+ def restore_square_brackets(query)
82
+ # We want this to rebuild array params like foo[]=1&foo[]=2
83
+ #
84
+ # URI.encode_www_form follows the spec at https://url.spec.whatwg.org/#concept-urlencoded-serializer
85
+ # and percent encodes square brackets. Here we change them back.
86
+ query.gsub('%5B', '[').gsub('%5D', ']')
82
87
  end
83
88
 
84
89
  def filter_query_params(params, regex, randomize_scrub_length, scrub_all, whitelist)
@@ -1,3 +1,3 @@
1
1
  module Rollbar
2
- VERSION = '2.27.0'.freeze
2
+ VERSION = '3.1.1'.freeze
3
3
  end
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
16
16
  gem.files += ['spec/support/rollbar_api.rb'] # useful helper for app spec/tests.
17
17
  gem.name = 'rollbar'
18
18
  gem.require_paths = ['lib']
19
- gem.required_ruby_version = '>= 1.9.3'
19
+ gem.required_ruby_version = '>= 2.0.0'
20
20
  gem.version = Rollbar::VERSION
21
21
 
22
22
  if gem.respond_to?(:metadata)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rollbar
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.27.0
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rollbar, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-24 00:00:00.000000000 Z
11
+ date: 2020-11-16 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Easy and powerful exception tracking for Ruby
14
14
  email:
@@ -19,10 +19,11 @@ extensions: []
19
19
  extra_rdoc_files: []
20
20
  files:
21
21
  - ".codeclimate.yml"
22
+ - ".github/pull_request_template.md"
23
+ - ".github/workflows/ci.yml"
22
24
  - ".gitignore"
23
25
  - ".gitmodules"
24
26
  - ".rubocop.yml"
25
- - ".travis.yml"
26
27
  - Appraisals
27
28
  - CHANGELOG.md
28
29
  - Gemfile
@@ -152,7 +153,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
152
153
  requirements:
153
154
  - - ">="
154
155
  - !ruby/object:Gem::Version
155
- version: 1.9.3
156
+ version: 2.0.0
156
157
  required_rubygems_version: !ruby/object:Gem::Requirement
157
158
  requirements:
158
159
  - - ">="
@@ -1,284 +0,0 @@
1
- sudo: false
2
- dist: trusty
3
- services:
4
- - redis-server
5
- language: ruby
6
-
7
- rvm:
8
- - 1.9.3
9
- - 2.0.0
10
- - 2.1.0
11
- - 2.2.2
12
- - 2.3.8
13
- - 2.4.5
14
- - 2.5.3
15
- - 2.6.5
16
- - 2.7.0
17
- - rbx
18
- # Travis's own rvm installer is failing on JRuby builds, TODO: reenable when fixed.
19
- # - jruby-9.1.9.0
20
-
21
- #
22
- # # About legacy JRuby
23
- #
24
- # Legacy JRubies (jruby-18mode, jruby-19mode) have been disabled for some time by
25
- # listing all possible targets in either the exclude or allow_failures sections.
26
- # I have taken a look at getting them running, and have found that no valid
27
- # combination of dependencies is possible for Rails 3.0 and higher. It appears
28
- # Rails 2.2 is meant to work, though I haven't tried it.
29
- #
30
- # For Rails 3.0, it is possible to get a working bundle with all gem dependencies,
31
- # but the JDBC adapter gem needs an earlier version of ActiveSupport, and it will
32
- # fail at runtime.
33
- #
34
- # For Rails 3.1 and 3.2, Rack 1.3.x and higher require Ruby 2.x, while Rails 3.x will
35
- # not accept any 1.2.x version of Rack. Even if this could be resolved, one would
36
- # hit the above runtime issue amyway.
37
- #
38
- # # About current JRuby
39
- #
40
- # While current JRuby builds aim to be Ruby 2.5.x compatible, the JDBC adapter
41
- # gem is constrained to only Rails 5.0, 5.1 and 5.2 at this time. (Old versions
42
- # of the gem allow >= Rails 2.2, but in practice it will not work with Rails 3.0
43
- # and higher because of the ActiveSupport issue described above.) For as long as
44
- # the test suite relies on Rails and SqlLite, it is not possible to include
45
- # earlier Rails for JRuby.
46
-
47
- jdk:
48
- # These are the JDKs currently supported on Travis (Trusty - Ubuntu 14.04)
49
- - openjdk7
50
- - openjdk8
51
- - oraclejdk8
52
- - oraclejdk9
53
- gemfile:
54
- - gemfiles/rails30.gemfile
55
- - gemfiles/rails31.gemfile
56
- - gemfiles/rails32.gemfile
57
- - gemfiles/rails40.gemfile
58
- - gemfiles/rails41.gemfile
59
- - gemfiles/rails42.gemfile
60
- - gemfiles/rails50.gemfile
61
- - gemfiles/rails51.gemfile
62
- - gemfiles/rails52.gemfile
63
- - gemfiles/rails60.gemfile
64
- matrix:
65
- include: []
66
-
67
- allow_failures:
68
- - rvm: ruby-head
69
- - rvm: jruby-head
70
- # oraclejdk9 has a dependency issue that needs to be investigated
71
- - jdk: oraclejdk9
72
-
73
- exclude:
74
- # Don't run tests for non-jruby environments with the JDK.
75
- # NOTE: openjdk7 is missing from these exclusions so that Travis will run at least 1 build for the given rvm.
76
- - rvm: 1.9.3
77
- jdk: openjdk8
78
- - rvm: 1.9.3
79
- jdk: oraclejdk8
80
- - rvm: 1.9.3
81
- jdk: oraclejdk9
82
- - rvm: 2.0.0
83
- jdk: openjdk8
84
- - rvm: 2.0.0
85
- jdk: oraclejdk8
86
- - rvm: 2.0.0
87
- jdk: oraclejdk9
88
- - rvm: 2.1.0
89
- jdk: openjdk8
90
- - rvm: 2.1.0
91
- jdk: oraclejdk8
92
- - rvm: 2.1.0
93
- jdk: oraclejdk9
94
- - rvm: 2.2.2
95
- jdk: openjdk8
96
- - rvm: 2.2.2
97
- jdk: oraclejdk8
98
- - rvm: 2.2.2
99
- jdk: oraclejdk9
100
- - rvm: 2.3.8
101
- jdk: openjdk8
102
- - rvm: 2.3.8
103
- jdk: oraclejdk8
104
- - rvm: 2.3.8
105
- jdk: oraclejdk9
106
- - rvm: 2.4.5
107
- jdk: openjdk8
108
- - rvm: 2.4.5
109
- jdk: oraclejdk8
110
- - rvm: 2.4.5
111
- jdk: oraclejdk9
112
- - rvm: 2.5.3
113
- jdk: openjdk8
114
- - rvm: 2.5.3
115
- jdk: oraclejdk8
116
- - rvm: 2.5.3
117
- jdk: oraclejdk9
118
- - rvm: 2.6.5
119
- jdk: openjdk8
120
- - rvm: 2.6.5
121
- jdk: oraclejdk8
122
- - rvm: 2.6.5
123
- jdk: oraclejdk9
124
- - rvm: 2.7.0
125
- jdk: openjdk8
126
- - rvm: 2.7.0
127
- jdk: oraclejdk8
128
- - rvm: 2.7.0
129
- jdk: oraclejdk9
130
-
131
- - rvm: ruby-head
132
- jdk: openjdk8
133
- - rvm: ruby-head
134
- jdk: oraclejdk8
135
- - rvm: ruby-head
136
- jdk: oraclejdk9
137
- - rvm: rbx
138
- jdk: openjdk8
139
- - rvm: rbx
140
- jdk: oraclejdk8
141
- - rvm: rbx
142
- jdk: oraclejdk9
143
-
144
- # Rails 6.x requires Ruby 2.5.0 or higher
145
- - rvm: 2.2.2
146
- gemfile: gemfiles/rails60.gemfile
147
- - rvm: 2.3.8
148
- gemfile: gemfiles/rails60.gemfile
149
- - rvm: 2.4.5
150
- gemfile: gemfiles/rails60.gemfile
151
- # Rails 5.x requires Ruby 2.2.2 or higher
152
- - rvm: 1.9.3
153
- gemfile: gemfiles/rails50.gemfile
154
- - rvm: 1.9.3
155
- gemfile: gemfiles/rails51.gemfile
156
- - rvm: 1.9.3
157
- gemfile: gemfiles/rails52.gemfile
158
- - rvm: 1.9.3
159
- gemfile: gemfiles/rails60.gemfile
160
- # Rails 5.x requires Ruby 2.2.2 or higher
161
- - rvm: 2.0.0
162
- gemfile: gemfiles/rails50.gemfile
163
- - rvm: 2.0.0
164
- gemfile: gemfiles/rails51.gemfile
165
- - rvm: 2.0.0
166
- gemfile: gemfiles/rails52.gemfile
167
- - rvm: 2.0.0
168
- gemfile: gemfiles/rails60.gemfile
169
- # Rails 5.x requires Ruby 2.2.2 or higher
170
- - rvm: 2.1.0
171
- gemfile: gemfiles/rails50.gemfile
172
- - rvm: 2.1.0
173
- gemfile: gemfiles/rails51.gemfile
174
- - rvm: 2.1.0
175
- gemfile: gemfiles/rails52.gemfile
176
- - rvm: 2.1.0
177
- gemfile: gemfiles/rails60.gemfile
178
- # MRI 2.2.2 supports Rails 3.2.x and higher, except Rails 5.2.4 and higher*
179
- # * ActionDispatch 5.2.4 uses Ruby 3.x safe navigation operator.
180
- - rvm: 2.2.2
181
- gemfile: gemfiles/rails30.gemfile
182
- - rvm: 2.2.2
183
- gemfile: gemfiles/rails31.gemfile
184
- - rvm: 2.2.2
185
- gemfile: gemfiles/rails52.gemfile
186
- # MRI 2.3.x supports Rails 4.0.x and higher
187
- - rvm: 2.3.8
188
- gemfile: gemfiles/rails30.gemfile
189
- - rvm: 2.3.8
190
- gemfile: gemfiles/rails31.gemfile
191
- - rvm: 2.3.8
192
- gemfile: gemfiles/rails32.gemfile
193
- - rvm: 2.3.8
194
- gemfile: gemfiles/rails40.gemfile
195
- - rvm: 2.3.8
196
- gemfile: gemfiles/rails41.gemfile
197
- # MRI 2.4.x and higher (e.g. 2.5.x, 2.6.x, etc) supports Rails 4.2.8 and higher
198
- # Rails lower than 4.2.8 is incompatible with Ruby 2.4 Integer class
199
- - rvm: 2.4.5
200
- gemfile: gemfiles/rails30.gemfile
201
- - rvm: 2.4.5
202
- gemfile: gemfiles/rails31.gemfile
203
- - rvm: 2.4.5
204
- gemfile: gemfiles/rails32.gemfile
205
- - rvm: 2.4.5
206
- gemfile: gemfiles/rails40.gemfile
207
- - rvm: 2.4.5
208
- gemfile: gemfiles/rails41.gemfile
209
- - rvm: 2.5.3
210
- gemfile: gemfiles/rails30.gemfile
211
- - rvm: 2.5.3
212
- gemfile: gemfiles/rails31.gemfile
213
- - rvm: 2.5.3
214
- gemfile: gemfiles/rails32.gemfile
215
- - rvm: 2.5.3
216
- gemfile: gemfiles/rails40.gemfile
217
- - rvm: 2.5.3
218
- gemfile: gemfiles/rails41.gemfile
219
- - rvm: 2.6.5
220
- gemfile: gemfiles/rails30.gemfile
221
- - rvm: 2.6.5
222
- gemfile: gemfiles/rails31.gemfile
223
- - rvm: 2.6.5
224
- gemfile: gemfiles/rails32.gemfile
225
- - rvm: 2.6.5
226
- gemfile: gemfiles/rails40.gemfile
227
- - rvm: 2.6.5
228
- gemfile: gemfiles/rails41.gemfile
229
- - rvm: 2.6.5
230
- gemfile: gemfiles/rails42.gemfile
231
- # Rails 6.x tries to be compatible with Ruby 2.7, though
232
- # it still throws a lot of warnings. No point testing earlier
233
- # Rails with Ruby 2.7.
234
- - rvm: 2.7.0
235
- gemfile: gemfiles/rails30.gemfile
236
- - rvm: 2.7.0
237
- gemfile: gemfiles/rails31.gemfile
238
- - rvm: 2.7.0
239
- gemfile: gemfiles/rails32.gemfile
240
- - rvm: 2.7.0
241
- gemfile: gemfiles/rails40.gemfile
242
- - rvm: 2.7.0
243
- gemfile: gemfiles/rails41.gemfile
244
- - rvm: 2.7.0
245
- gemfile: gemfiles/rails42.gemfile
246
- - rvm: 2.7.0
247
- gemfile: gemfiles/rails50.gemfile
248
- - rvm: 2.7.0
249
- gemfile: gemfiles/rails51.gemfile
250
- - rvm: 2.7.0
251
- gemfile: gemfiles/rails52.gemfile
252
- # JRuby JDBC Adapter is only compatible with Rails >= 5.x
253
- - rvm: jruby-9.1.9.0
254
- gemfile: gemfiles/rails30.gemfile
255
- - rvm: jruby-9.1.9.0
256
- gemfile: gemfiles/rails31.gemfile
257
- - rvm: jruby-9.1.9.0
258
- gemfile: gemfiles/rails32.gemfile
259
- - rvm: jruby-9.1.9.0
260
- gemfile: gemfiles/rails40.gemfile
261
- - rvm: jruby-9.1.9.0
262
- gemfile: gemfiles/rails41.gemfile
263
- - rvm: jruby-9.1.9.0
264
- gemfile: gemfiles/rails42.gemfile
265
- - rvm: rbx
266
- gemfile: gemfiles/rails30.gemfile
267
- - rvm: rbx
268
- gemfile: gemfiles/rails31.gemfile
269
- - rvm: rbx
270
- gemfile: gemfiles/rails32.gemfile
271
- - rvm: rbx
272
- gemfile: gemfiles/rails40.gemfile
273
- - rvm: rbx
274
- gemfile: gemfiles/rails41.gemfile
275
- - rvm: rbx
276
- gemfile: gemfiles/rails42.gemfile
277
- - rvm: rbx
278
- gemfile: gemfiles/rails50.gemfile
279
- - rvm: rbx
280
- gemfile: gemfiles/rails51.gemfile
281
- - rvm: rbx
282
- gemfile: gemfiles/rails52.gemfile
283
- - rvm: rbx
284
- gemfile: gemfiles/rails60.gemfile