sentry-rails 7.0.0 → 7.2.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 (46) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/gemfiles/ruby-2.7_rails-5.2.0.gemfile.lock +15 -15
  4. data/gemfiles/ruby-2.7_rails-6.0.0.gemfile.lock +15 -15
  5. data/gemfiles/ruby-2.7_rails-6.1.0.gemfile.lock +15 -15
  6. data/gemfiles/ruby-2.7_rails-7.0.0.gemfile.lock +15 -15
  7. data/gemfiles/ruby-2.7_rails-7.1.0.gemfile.lock +19 -17
  8. data/gemfiles/ruby-3.0_rails-6.1.0.gemfile.lock +19 -19
  9. data/gemfiles/ruby-3.0_rails-7.0.0.gemfile.lock +19 -19
  10. data/gemfiles/ruby-3.0_rails-7.1.0.gemfile.lock +21 -19
  11. data/gemfiles/ruby-3.1_rails-6.1.0.gemfile.lock +37 -37
  12. data/gemfiles/ruby-3.1_rails-7.0.0.gemfile.lock +37 -37
  13. data/gemfiles/ruby-3.1_rails-7.1.0.gemfile.lock +40 -37
  14. data/gemfiles/ruby-3.1_rails-7.2.0.gemfile.lock +107 -104
  15. data/gemfiles/ruby-3.2_rails-6.1.0.gemfile.lock +45 -45
  16. data/gemfiles/ruby-3.2_rails-7.0.0.gemfile.lock +45 -45
  17. data/gemfiles/ruby-3.2_rails-7.1.0.gemfile.lock +46 -45
  18. data/gemfiles/ruby-3.2_rails-7.2.0.gemfile.lock +46 -45
  19. data/gemfiles/ruby-3.2_rails-8.0.0.gemfile.lock +48 -47
  20. data/gemfiles/ruby-3.3_rails-6.1.0.gemfile.lock +45 -45
  21. data/gemfiles/ruby-3.3_rails-7.0.0.gemfile.lock +45 -45
  22. data/gemfiles/ruby-3.3_rails-7.1.0.gemfile.lock +46 -45
  23. data/gemfiles/ruby-3.3_rails-7.2.0.gemfile.lock +46 -45
  24. data/gemfiles/ruby-3.3_rails-8.0.0.gemfile.lock +48 -47
  25. data/gemfiles/ruby-3.4_rails-7.1.0.gemfile.lock +46 -45
  26. data/gemfiles/ruby-3.4_rails-7.2.0.gemfile.lock +46 -45
  27. data/gemfiles/ruby-3.4_rails-8.0.0.gemfile.lock +48 -47
  28. data/gemfiles/ruby-3.4_rails-8.1.3.gemfile.lock +114 -113
  29. data/gemfiles/ruby-4.0_rails-6.1.0.gemfile.lock +45 -45
  30. data/gemfiles/ruby-4.0_rails-7.0.0.gemfile.lock +45 -45
  31. data/gemfiles/ruby-4.0_rails-7.1.0.gemfile.lock +46 -45
  32. data/gemfiles/ruby-4.0_rails-8.0.0.gemfile.lock +48 -47
  33. data/gemfiles/ruby-4.0_rails-8.1.3.gemfile.lock +114 -113
  34. data/gemfiles/ruby-jruby-9.4.14.0_rails-6.1.0.gemfile.lock +31 -31
  35. data/gemfiles/ruby-jruby-9.4.14.0_rails-7.0.0.gemfile.lock +31 -31
  36. data/gemfiles/ruby-jruby-9.4.14.0_rails-7.1.0.gemfile.lock +38 -35
  37. data/lib/sentry/rails/active_job.rb +1 -0
  38. data/lib/sentry/rails/configuration.rb +7 -1
  39. data/lib/sentry/rails/controller_transaction.rb +2 -2
  40. data/lib/sentry/rails/overrides/streaming_reporter.rb +2 -0
  41. data/lib/sentry/rails/railtie.rb +15 -1
  42. data/lib/sentry/rails/solid_queue_recurring.rb +118 -0
  43. data/lib/sentry/rails/version.rb +1 -1
  44. data/lib/sentry/rails.rb +1 -0
  45. data/sentry-rails.gemspec +6 -1
  46. metadata +12 -8
@@ -6,7 +6,7 @@ GIT
6
6
  PATH
7
7
  remote: ../../sentry-ruby
8
8
  specs:
9
- sentry-ruby (6.7.0)
9
+ sentry-ruby (7.1.0)
10
10
  bigdecimal
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
12
  logger
@@ -14,9 +14,9 @@ PATH
14
14
  PATH
15
15
  remote: ..
16
16
  specs:
17
- sentry-rails (6.7.0)
17
+ sentry-rails (7.1.0)
18
18
  railties (>= 5.2.0)
19
- sentry-ruby (~> 6.7.0)
19
+ sentry-ruby (~> 7.1.0)
20
20
 
21
21
  GEM
22
22
  remote: https://rubygems.org/
@@ -108,12 +108,12 @@ GEM
108
108
  benchmark-memory (0.1.2)
109
109
  memory_profiler (~> 0.9)
110
110
  benchmark_driver (0.16.5)
111
- bigdecimal (4.1.2-java)
111
+ bigdecimal (4.1.3-java)
112
112
  builder (3.3.0)
113
113
  cgi (0.5.2-java)
114
114
  concurrent-ruby (1.3.8)
115
- crass (1.0.7)
116
- date (3.5.1-java)
115
+ crass (1.0.8)
116
+ date (3.6.0-java)
117
117
  diff-lcs (1.6.2)
118
118
  docile (1.4.1)
119
119
  drb (2.2.3)
@@ -124,13 +124,13 @@ GEM
124
124
  activesupport (>= 6.1)
125
125
  i18n (1.15.2)
126
126
  concurrent-ruby (~> 1.0)
127
- io-console (0.9.2-java)
127
+ io-console (0.9.4-java)
128
128
  irb (1.18.0)
129
129
  pp (>= 0.6.0)
130
130
  prism (>= 1.3.0)
131
131
  rdoc (>= 4.0.0)
132
132
  reline (>= 0.4.2)
133
- jar-dependencies (0.5.7)
133
+ jar-dependencies (0.6.1-java)
134
134
  jdbc-mysql (8.4.0.1)
135
135
  jdbc-sqlite3 (3.46.1.1)
136
136
  logger (1.7.0)
@@ -146,7 +146,7 @@ GEM
146
146
  marcel (1.2.1)
147
147
  memory_profiler (0.9.14)
148
148
  method_source (1.1.0)
149
- mini_magick (5.3.3)
149
+ mini_magick (5.4.0)
150
150
  logger
151
151
  mini_mime (1.1.5)
152
152
  minitest (5.27.0)
@@ -156,23 +156,23 @@ GEM
156
156
  net-protocol
157
157
  net-pop (0.1.2)
158
158
  net-protocol
159
- net-protocol (0.2.2)
159
+ net-protocol (0.4.0)
160
160
  timeout
161
- net-smtp (0.5.1)
161
+ net-smtp (0.5.2)
162
162
  net-protocol
163
163
  nio4r (2.7.5-java)
164
164
  nokogiri (1.18.10-java)
165
165
  racc (~> 1.4)
166
166
  pp (0.6.4)
167
167
  prettyprint
168
- prettyprint (0.2.0)
169
- prism (1.9.0)
168
+ prettyprint (0.2.1)
169
+ prism (2.0.0)
170
170
  psych (5.5.0-java)
171
171
  date
172
172
  jar-dependencies (>= 0.1.7)
173
173
  racc (1.8.1-java)
174
174
  rack (2.2.24)
175
- rack-test (2.2.0)
175
+ rack-test (2.3.0)
176
176
  rack (>= 1.3)
177
177
  rails (7.0.10)
178
178
  actioncable (= 7.0.10)
@@ -234,7 +234,7 @@ GEM
234
234
  rspec-core (> 3.3)
235
235
  rspec-support (3.13.7)
236
236
  securerandom (0.4.1)
237
- sequel (5.107.0)
237
+ sequel (5.109.0)
238
238
  bigdecimal
239
239
  simplecov (0.22.0)
240
240
  docile (~> 1.1)
@@ -245,7 +245,7 @@ GEM
245
245
  simplecov (~> 0.19)
246
246
  simplecov-html (0.13.2)
247
247
  simplecov_json_formatter (0.1.4)
248
- sprockets (4.4.0)
248
+ sprockets (4.4.1)
249
249
  concurrent-ruby (~> 1.1)
250
250
  logger
251
251
  rack (>= 2.2.4, < 4)
@@ -313,12 +313,12 @@ CHECKSUMS
313
313
  benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230
314
314
  benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87
315
315
  benchmark_driver (0.16.5) sha256=f675df0fe1de7e18e40df313ae24ebe4c7ee7814a4165f29a1a37b863a685831
316
- bigdecimal (4.1.2-java) sha256=ccc836eab720a525529f70ed0de26a206fdbc9a9e8ac67b3b4ac7318b03e114d
316
+ bigdecimal (4.1.3-java) sha256=9a6a1fa67723a27ab1b3a6d5526322d8c82170af03199da7c915b8d9a1770532
317
317
  builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f
318
318
  cgi (0.5.2-java) sha256=08bbfe06e10e771d36f10db6c1dfb81727ea2a25c3dbcd28d890a1794414a73d
319
319
  concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1
320
- crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295
321
- date (3.5.1-java) sha256=12e09477dc932afe45bf768cd362bf73026804e0db1e6c314186d6cd0bee3344
320
+ crass (1.0.8) sha256=7a0145c7a2c59f8e7923b3a69ce819c444823a00a5127d805298fea13be24efe
321
+ date (3.6.0-java) sha256=7276986bbacc2357d0c6d41a863be5906e2f745ea2ccb47eed84bf761f6a7806
322
322
  diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
323
323
  docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e
324
324
  drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
@@ -326,9 +326,9 @@ CHECKSUMS
326
326
  erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
327
327
  globalid (1.4.0) sha256=037f12fbf1d9d7a014d501c2d5c77356fd4ddd96d7a7991d6700bba96706f427
328
328
  i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
329
- io-console (0.9.2-java) sha256=929c09163ad227cda17f5dc57861b995dbecf69c7ca2ce7b0c5f941f1f3da7d3
329
+ io-console (0.9.4-java) sha256=789188c38b937fc2d04400e35fd3b2838ffdf061e846571e51524036bc1bc185
330
330
  irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
331
- jar-dependencies (0.5.7) sha256=013ce5f4639414ac8cf1169cdbe763da164b81e2d2c983d11042b5ff7bfcce80
331
+ jar-dependencies (0.6.1-java) sha256=2746643482d139fd9cecb524b57df63b71d9b5d734c7275171701201e3164f23
332
332
  jdbc-mysql (8.4.0.1) sha256=429cb7999d11c4f46a7153a382b6ac07935a4c10ddc52dd98e2d52b22c17fa13
333
333
  jdbc-sqlite3 (3.46.1.1) sha256=2498fea7d37c0d51c6bad1b95ffc909173c014ba6bd36825f37910113d0230cf
334
334
  logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
@@ -337,23 +337,23 @@ CHECKSUMS
337
337
  marcel (1.2.1) sha256=1678e9360e32f9eafa917c80029e2f6d10b2715c66a4b87b6d0da9b9cd1f859f
338
338
  memory_profiler (0.9.14) sha256=de558cf6525d8d56d2c0ea465b1664517fbe45560f892dc7a898d3b8c2863b12
339
339
  method_source (1.1.0) sha256=181301c9c45b731b4769bc81e8860e72f9161ad7d66dd99103c9ab84f560f5c5
340
- mini_magick (5.3.3) sha256=b3beed8a8cef36bd03666365f14b89cd344da0ecd373af53e617c71bfd426aab
340
+ mini_magick (5.4.0) sha256=f120af581d9ed4ec52c57f35a67a605d112bb1d8f582d1415b147fda42d11d78
341
341
  mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef
342
342
  minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5
343
343
  mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751
344
344
  net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614
345
345
  net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3
346
- net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8
347
- net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736
346
+ net-protocol (0.4.0) sha256=f9f90c8c6f64794a45160bf422177a336db12809de3beeeaa26b88fcd2e8c853
347
+ net-smtp (0.5.2) sha256=35103cc04d6b2d94632f9928ede07483c24b70b9c0db1f231fea43909b678f3c
348
348
  nio4r (2.7.5-java) sha256=d14779d2a9b012ec0148a53344fbb2ed2a3c4d90c5dd923bf281135ab983b2c9
349
349
  nokogiri (1.18.10-java) sha256=cd431a09c45d84a2f870ba0b7e8f571199b3727d530f2b4888a73639f76510b5
350
350
  pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570
351
- prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
352
- prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
351
+ prettyprint (0.2.1) sha256=d555d57ea6d7cf001d4774b693546a6bd88bec1e778ddffb5c60b68ceec4b7d4
352
+ prism (2.0.0) sha256=fd551446f0c6ca71455ef8d1d40bd2ca1538044834fa22df8837e5095f3a5a39
353
353
  psych (5.5.0-java) sha256=3b7cf3684c44d049c3dee87ec4118ec9cd6ac714cbdcfba386997f96dbbd36ab
354
354
  racc (1.8.1-java) sha256=54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98
355
355
  rack (2.2.24) sha256=ef16526a0d871c43753452338c754040a664c8b41bf0dd7450b85f7772adca5f
356
- rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463
356
+ rack-test (2.3.0) sha256=b118d177cc002c572fc1b6fd8d19c9ed5881a36e8d6f689f9e618f9f861241e8
357
357
  rails (7.0.10) sha256=866eb2c53d3184543fdb770d7ea308e4ee518063226a9e176229f3c7a9537c25
358
358
  rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d
359
359
  rails-html-sanitizer (1.7.1) sha256=e797a7c9b01e567307e317c576b49ab4168017e63eea4dba9ce3cb587e2f22c2
@@ -370,14 +370,14 @@ CHECKSUMS
370
370
  rspec-retry (0.6.2) sha256=6101ba23a38809811ae3484acde4ab481c54d846ac66d5037ccb40131a60d858
371
371
  rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
372
372
  securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
373
- sentry-rails (6.7.0)
374
- sentry-ruby (6.7.0)
375
- sequel (5.107.0) sha256=019629313205295b007f6df2c5eab19ddc40710d549fd445ac300f2853a370db
373
+ sentry-rails (7.1.0)
374
+ sentry-ruby (7.1.0)
375
+ sequel (5.109.0) sha256=e0d1d474442d620c8497d7f4851c0cc3a277920519051b8014b2877aa55efffe
376
376
  simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5
377
377
  simplecov-cobertura (3.2.0) sha256=70d702658677fcb20e5aceb6915ccf8bc62ff2ccd38b62b3ad5c9db5c0888740
378
378
  simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246
379
379
  simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428
380
- sprockets (4.4.0) sha256=84d5819b31e65bf3e61d71241465e65b341947322f6bd57400648bb11e6bb024
380
+ sprockets (4.4.1) sha256=fbd665edad0916de5c7abefef0fc616866a60c5e48ce2846f39ac3fc5df9e184
381
381
  sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e
382
382
  thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73
383
383
  timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb
@@ -6,7 +6,7 @@ GIT
6
6
  PATH
7
7
  remote: ../../sentry-ruby
8
8
  specs:
9
- sentry-ruby (6.7.0)
9
+ sentry-ruby (7.1.0)
10
10
  bigdecimal
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
12
  logger
@@ -14,9 +14,9 @@ PATH
14
14
  PATH
15
15
  remote: ..
16
16
  specs:
17
- sentry-rails (6.7.0)
17
+ sentry-rails (7.1.0)
18
18
  railties (>= 5.2.0)
19
- sentry-ruby (~> 6.7.0)
19
+ sentry-ruby (~> 7.1.0)
20
20
 
21
21
  GEM
22
22
  remote: https://rubygems.org/
@@ -114,37 +114,38 @@ GEM
114
114
  benchmark-memory (0.1.2)
115
115
  memory_profiler (~> 0.9)
116
116
  benchmark_driver (0.16.5)
117
- bigdecimal (4.1.2-java)
117
+ bigdecimal (4.1.3-java)
118
118
  builder (3.3.0)
119
119
  cgi (0.5.2-java)
120
120
  concurrent-ruby (1.3.8)
121
121
  connection_pool (2.5.5)
122
- crass (1.0.7)
123
- date (3.5.1-java)
122
+ crass (1.0.8)
123
+ date (3.6.0-java)
124
124
  diff-lcs (1.6.2)
125
125
  docile (1.4.1)
126
126
  drb (2.2.3)
127
127
  erb (4.0.4.1-java)
128
128
  cgi (>= 0.3.3)
129
129
  erubi (1.13.1)
130
- et-orbi (1.4.1)
130
+ et-orbi (1.4.2)
131
131
  tzinfo
132
- fugit (1.13.0)
132
+ fugit (1.14.0)
133
133
  et-orbi (~> 1.4)
134
134
  raabro (~> 1.4)
135
135
  globalid (1.4.0)
136
136
  activesupport (>= 6.1)
137
137
  i18n (1.15.2)
138
138
  concurrent-ruby (~> 1.0)
139
- io-console (0.9.2-java)
139
+ io-console (0.9.4-java)
140
140
  irb (1.18.0)
141
141
  pp (>= 0.6.0)
142
142
  prism (>= 1.3.0)
143
143
  rdoc (>= 4.0.0)
144
144
  reline (>= 0.4.2)
145
- jar-dependencies (0.5.7)
145
+ jar-dependencies (0.6.1-java)
146
146
  jdbc-mysql (8.4.0.1)
147
147
  jdbc-sqlite3 (3.46.1.1)
148
+ json (2.21.2-java)
148
149
  logger (1.7.0)
149
150
  loofah (2.25.2)
150
151
  crass (~> 1.0.2)
@@ -157,7 +158,7 @@ GEM
157
158
  net-smtp
158
159
  marcel (1.2.1)
159
160
  memory_profiler (0.9.14)
160
- mini_magick (5.3.3)
161
+ mini_magick (5.4.0)
161
162
  logger
162
163
  mini_mime (1.1.5)
163
164
  minitest (5.27.0)
@@ -167,17 +168,17 @@ GEM
167
168
  net-protocol
168
169
  net-pop (0.1.2)
169
170
  net-protocol
170
- net-protocol (0.2.2)
171
+ net-protocol (0.4.0)
171
172
  timeout
172
- net-smtp (0.5.1)
173
+ net-smtp (0.5.2)
173
174
  net-protocol
174
175
  nio4r (2.7.5-java)
175
176
  nokogiri (1.18.10-java)
176
177
  racc (~> 1.4)
177
178
  pp (0.6.4)
178
179
  prettyprint
179
- prettyprint (0.2.0)
180
- prism (1.9.0)
180
+ prettyprint (0.2.1)
181
+ prism (2.0.0)
181
182
  psych (4.0.6-java)
182
183
  jar-dependencies (>= 0.1.7)
183
184
  raabro (1.5.0)
@@ -186,7 +187,7 @@ GEM
186
187
  rack-session (2.1.2)
187
188
  base64 (>= 0.1.0)
188
189
  rack (>= 3.0.0)
189
- rack-test (2.2.0)
190
+ rack-test (2.3.0)
190
191
  rack (>= 1.3)
191
192
  rackup (2.3.1)
192
193
  rack (>= 3)
@@ -253,7 +254,7 @@ GEM
253
254
  rspec-core (> 3.3)
254
255
  rspec-support (3.13.7)
255
256
  securerandom (0.4.1)
256
- sequel (5.107.0)
257
+ sequel (5.109.0)
257
258
  bigdecimal
258
259
  simplecov (0.22.0)
259
260
  docile (~> 1.1)
@@ -271,7 +272,7 @@ GEM
271
272
  fugit (~> 1.11)
272
273
  railties (>= 7.1)
273
274
  thor (>= 1.3.1)
274
- sprockets (4.4.0)
275
+ sprockets (4.4.1)
275
276
  concurrent-ruby (~> 1.1)
276
277
  logger
277
278
  rack (>= 2.2.4, < 4)
@@ -304,6 +305,7 @@ DEPENDENCIES
304
305
  irb
305
306
  jar-dependencies
306
307
  jdbc-sqlite3
308
+ json (< 3)
307
309
  mini_magick
308
310
  psych (~> 4.0.0)
309
311
  rails (~> 7.1.0)
@@ -341,51 +343,52 @@ CHECKSUMS
341
343
  benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230
342
344
  benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87
343
345
  benchmark_driver (0.16.5) sha256=f675df0fe1de7e18e40df313ae24ebe4c7ee7814a4165f29a1a37b863a685831
344
- bigdecimal (4.1.2-java) sha256=ccc836eab720a525529f70ed0de26a206fdbc9a9e8ac67b3b4ac7318b03e114d
346
+ bigdecimal (4.1.3-java) sha256=9a6a1fa67723a27ab1b3a6d5526322d8c82170af03199da7c915b8d9a1770532
345
347
  builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f
346
348
  cgi (0.5.2-java) sha256=08bbfe06e10e771d36f10db6c1dfb81727ea2a25c3dbcd28d890a1794414a73d
347
349
  concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1
348
350
  connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad
349
- crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295
350
- date (3.5.1-java) sha256=12e09477dc932afe45bf768cd362bf73026804e0db1e6c314186d6cd0bee3344
351
+ crass (1.0.8) sha256=7a0145c7a2c59f8e7923b3a69ce819c444823a00a5127d805298fea13be24efe
352
+ date (3.6.0-java) sha256=7276986bbacc2357d0c6d41a863be5906e2f745ea2ccb47eed84bf761f6a7806
351
353
  diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
352
354
  docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e
353
355
  drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
354
356
  erb (4.0.4.1-java) sha256=3e4805edebd25f48cdb43ad4ebf1d61c11538f29373f0a48716b688819e3f7ce
355
357
  erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
356
- et-orbi (1.4.1) sha256=007e2685b1d873415a7587ef889336c6dcdf8a47fc9c9a63547582b21660a11b
357
- fugit (1.13.0) sha256=a4f093fce740da52f216740a5041e2a594ea763cdb89e8b2754ca4399634ab18
358
+ et-orbi (1.4.2) sha256=bb555dae668419cb24caa2a293a170e58be6d4df1e017c51f5030bdc133cd20c
359
+ fugit (1.14.0) sha256=e311a9cc85a54bb67649df45060e721282a1e2c8ebad40e41874a3a7d576f37e
358
360
  globalid (1.4.0) sha256=037f12fbf1d9d7a014d501c2d5c77356fd4ddd96d7a7991d6700bba96706f427
359
361
  i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
360
- io-console (0.9.2-java) sha256=929c09163ad227cda17f5dc57861b995dbecf69c7ca2ce7b0c5f941f1f3da7d3
362
+ io-console (0.9.4-java) sha256=789188c38b937fc2d04400e35fd3b2838ffdf061e846571e51524036bc1bc185
361
363
  irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
362
- jar-dependencies (0.5.7) sha256=013ce5f4639414ac8cf1169cdbe763da164b81e2d2c983d11042b5ff7bfcce80
364
+ jar-dependencies (0.6.1-java) sha256=2746643482d139fd9cecb524b57df63b71d9b5d734c7275171701201e3164f23
363
365
  jdbc-mysql (8.4.0.1) sha256=429cb7999d11c4f46a7153a382b6ac07935a4c10ddc52dd98e2d52b22c17fa13
364
366
  jdbc-sqlite3 (3.46.1.1) sha256=2498fea7d37c0d51c6bad1b95ffc909173c014ba6bd36825f37910113d0230cf
367
+ json (2.21.2-java) sha256=f01521cd90639cc26b63040fb00d2b949f18f41ecaab5c82b02fb31d0b8b736c
365
368
  logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
366
369
  loofah (2.25.2) sha256=2007f746959ac65552456e04b433e83deb22759ab38c838b4445c70e43425918
367
370
  mail (2.9.1) sha256=06574eca475253d6c18145dd70af80d0eb970182d55053497c5f4d797ea160e8
368
371
  marcel (1.2.1) sha256=1678e9360e32f9eafa917c80029e2f6d10b2715c66a4b87b6d0da9b9cd1f859f
369
372
  memory_profiler (0.9.14) sha256=de558cf6525d8d56d2c0ea465b1664517fbe45560f892dc7a898d3b8c2863b12
370
- mini_magick (5.3.3) sha256=b3beed8a8cef36bd03666365f14b89cd344da0ecd373af53e617c71bfd426aab
373
+ mini_magick (5.4.0) sha256=f120af581d9ed4ec52c57f35a67a605d112bb1d8f582d1415b147fda42d11d78
371
374
  mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef
372
375
  minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5
373
376
  mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751
374
377
  net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614
375
378
  net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3
376
- net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8
377
- net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736
379
+ net-protocol (0.4.0) sha256=f9f90c8c6f64794a45160bf422177a336db12809de3beeeaa26b88fcd2e8c853
380
+ net-smtp (0.5.2) sha256=35103cc04d6b2d94632f9928ede07483c24b70b9c0db1f231fea43909b678f3c
378
381
  nio4r (2.7.5-java) sha256=d14779d2a9b012ec0148a53344fbb2ed2a3c4d90c5dd923bf281135ab983b2c9
379
382
  nokogiri (1.18.10-java) sha256=cd431a09c45d84a2f870ba0b7e8f571199b3727d530f2b4888a73639f76510b5
380
383
  pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570
381
- prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
382
- prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
384
+ prettyprint (0.2.1) sha256=d555d57ea6d7cf001d4774b693546a6bd88bec1e778ddffb5c60b68ceec4b7d4
385
+ prism (2.0.0) sha256=fd551446f0c6ca71455ef8d1d40bd2ca1538044834fa22df8837e5095f3a5a39
383
386
  psych (4.0.6-java) sha256=78f8708f8b139ee9b258c2f51b4d55dcccc8e7f567f728ba2f9868685bec8623
384
387
  raabro (1.5.0) sha256=3f998a7bc84f9c84df3ab580634d2e0a5bda4f0841168d56035f529c9877440a
385
388
  racc (1.8.1-java) sha256=54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98
386
389
  rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7
387
390
  rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8
388
- rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463
391
+ rack-test (2.3.0) sha256=b118d177cc002c572fc1b6fd8d19c9ed5881a36e8d6f689f9e618f9f861241e8
389
392
  rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868
390
393
  rails (7.1.6) sha256=9a0a335e510de3daad7542cd791af3d8ff710c644e1da17ed12e96d2f28a7470
391
394
  rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d
@@ -403,15 +406,15 @@ CHECKSUMS
403
406
  rspec-retry (0.6.2) sha256=6101ba23a38809811ae3484acde4ab481c54d846ac66d5037ccb40131a60d858
404
407
  rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
405
408
  securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
406
- sentry-rails (6.7.0)
407
- sentry-ruby (6.7.0)
408
- sequel (5.107.0) sha256=019629313205295b007f6df2c5eab19ddc40710d549fd445ac300f2853a370db
409
+ sentry-rails (7.1.0)
410
+ sentry-ruby (7.1.0)
411
+ sequel (5.109.0) sha256=e0d1d474442d620c8497d7f4851c0cc3a277920519051b8014b2877aa55efffe
409
412
  simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5
410
413
  simplecov-cobertura (3.2.0) sha256=70d702658677fcb20e5aceb6915ccf8bc62ff2ccd38b62b3ad5c9db5c0888740
411
414
  simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246
412
415
  simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428
413
416
  solid_queue (1.4.0) sha256=e6a18d196f0b27cb6e3c77c5b31258b05fb634f8ed64fb1866ed164047216c2a
414
- sprockets (4.4.0) sha256=84d5819b31e65bf3e61d71241465e65b341947322f6bd57400648bb11e6bb024
417
+ sprockets (4.4.1) sha256=fbd665edad0916de5c7abefef0fc616866a60c5e48ce2846f39ac3fc5df9e184
415
418
  sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e
416
419
  thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73
417
420
  timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb
@@ -253,6 +253,7 @@ module Sentry
253
253
  # This handler does not capture error unless `active_job_report_on_retry_error` is true
254
254
  def retry_handler(*args)
255
255
  handle_error_event(*args) do |job, error|
256
+ return if error.nil?
256
257
  return if !Sentry.initialized? || job.already_supported_by_sentry_integration?
257
258
  return unless Sentry.configuration.rails.active_job_report_on_retry_error
258
259
 
@@ -183,6 +183,11 @@ module Sentry
183
183
  # Defaults to true. Set to false to opt out.
184
184
  attr_accessor :active_job_propagate_traces
185
185
 
186
+ # Solid Queue recurring task keys to skip when the :solid_queue_recurring patch is enabled.
187
+ # Strings match the key exactly; Regexps are matched against it.
188
+ # @return [Array<String, Regexp>]
189
+ attr_accessor :solid_queue_exclude_recurring_tasks
190
+
186
191
  # Configuration for structured logging feature
187
192
  # @return [StructuredLoggingConfiguration]
188
193
  attr_reader :structured_logging
@@ -205,6 +210,7 @@ module Sentry
205
210
  @active_support_logger_subscription_items = Sentry::Rails::ACTIVE_SUPPORT_LOGGER_SUBSCRIPTION_ITEMS_DEFAULT.dup
206
211
  @active_job_report_on_retry_error = false
207
212
  @active_job_propagate_traces = true
213
+ @solid_queue_exclude_recurring_tasks = []
208
214
  @structured_logging = StructuredLoggingConfiguration.new
209
215
  end
210
216
  end
@@ -224,7 +230,7 @@ module Sentry
224
230
  }.freeze
225
231
 
226
232
  def initialize
227
- @enabled = true
233
+ @enabled = false
228
234
  @subscribers = DEFAULT_SUBSCRIBERS.dup
229
235
  end
230
236
 
@@ -29,7 +29,7 @@ module Sentry
29
29
  data_collection = Sentry.configuration.data_collection
30
30
 
31
31
  path = request.path
32
- query_parameters = request.query_parameters
32
+ query_parameters = request.query_parameters rescue nil
33
33
 
34
34
  if query_parameters.is_a?(Hash)
35
35
  filtered_query_parameters = data_collection.url_query_params.filter(query_parameters)
@@ -43,7 +43,7 @@ module Sentry
43
43
  child_span.set_data(:path, path)
44
44
 
45
45
  # all params request + body
46
- params = request.params
46
+ params = request.params rescue nil
47
47
  if params.is_a?(Hash)
48
48
  filtered_params = data_collection.url_query_params.filter(params)
49
49
  child_span.set_data(:params, filtered_params)
@@ -4,6 +4,8 @@ module Sentry
4
4
  module Rails
5
5
  module Overrides
6
6
  module StreamingReporter
7
+ private
8
+
7
9
  def log_error(exception)
8
10
  Sentry::Rails.capture_exception(exception)
9
11
  super
@@ -6,6 +6,11 @@ require "sentry/rails/backtrace_cleaner"
6
6
 
7
7
  module Sentry
8
8
  class Railtie < ::Rails::Railtie
9
+ # Referencing ActionController::Live loads ActionDispatch::Response, and Rails
10
+ # warns when that happens before the application has initialized. Rails 8.1.4
11
+ # added the :action_controller_live load hook so we can wait for it instead.
12
+ SUPPORTS_ACTION_CONTROLLER_LIVE_LOAD_HOOK = Gem::Version.new(::Rails.version) >= Gem::Version.new("8.1.4")
13
+
9
14
  # middlewares can't be injected after initialize
10
15
  initializer "sentry.use_rack_middleware" do |app|
11
16
  # placed after all the file-sending middlewares so we can avoid unnecessary transactions
@@ -99,7 +104,16 @@ module Sentry
99
104
  ActiveSupport.on_load :action_controller do
100
105
  include Sentry::Rails::ControllerMethods
101
106
  include Sentry::Rails::ControllerTransaction
102
- ActionController::Live.send(:prepend, Sentry::Rails::Overrides::StreamingReporter)
107
+ end
108
+
109
+ if SUPPORTS_ACTION_CONTROLLER_LIVE_LOAD_HOOK
110
+ ActiveSupport.on_load :action_controller_live do
111
+ prepend Sentry::Rails::Overrides::StreamingReporter
112
+ end
113
+ else
114
+ ActiveSupport.on_load :action_controller do
115
+ ActionController::Live.send(:prepend, Sentry::Rails::Overrides::StreamingReporter)
116
+ end
103
117
  end
104
118
  end
105
119
 
@@ -0,0 +1,118 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentry
4
+ module Rails
5
+ # Sends Crons check-ins for Solid Queue recurring tasks.
6
+ # Enable with `config.enabled_patches << :solid_queue_recurring`.
7
+ module SolidQueueRecurring
8
+ PAYLOAD_KEY = "_sentry_recurring_task"
9
+ CURRENT_TASK = :sentry_solid_queue_recurring_task
10
+
11
+ module RecurringTask
12
+ def enqueue(at:)
13
+ Thread.current[CURRENT_TASK] = self unless Sentry::Rails::SolidQueueRecurring.excluded?(self)
14
+ super
15
+ ensure
16
+ Thread.current[CURRENT_TASK] = nil
17
+ end
18
+ end
19
+
20
+ module Job
21
+ def serialize
22
+ @_sentry_recurring_task ||= Sentry::Rails::SolidQueueRecurring.monitor_for(Thread.current[CURRENT_TASK], self)
23
+ payload = super
24
+ payload[PAYLOAD_KEY] = @_sentry_recurring_task if @_sentry_recurring_task
25
+ payload
26
+ end
27
+
28
+ def deserialize(job_data)
29
+ super
30
+ @_sentry_recurring_task = job_data[PAYLOAD_KEY]
31
+ end
32
+ end
33
+
34
+ class << self
35
+ def excluded?(task)
36
+ return false unless Sentry.initialized?
37
+
38
+ Array(Sentry.configuration.rails.solid_queue_exclude_recurring_tasks).any? { |pattern| pattern === task.key.to_s }
39
+ rescue StandardError => e
40
+ Sentry.sdk_logger.error(Sentry::LOGGER_PROGNAME) { "Could not check solid_queue_exclude_recurring_tasks for #{task.key}: #{e.class}: #{e.message}" }
41
+ false
42
+ end
43
+
44
+ # Runs in the scheduler, which is where Solid Queue evaluates the schedule.
45
+ def monitor_for(task, job)
46
+ return unless task && Sentry.initialized?
47
+ job_class = task.class_name.present? ? task.class_name.safe_constantize : task.class.default_job_class
48
+ return unless job.instance_of?(job_class)
49
+ return if job_class < Sentry::Cron::MonitorCheckIns::Patch
50
+
51
+ slug = Sentry::Cron::Slug.from(task.key)
52
+ return unless slug
53
+
54
+ config = Sentry::Cron::FugitSchedule.from_cron(cron_for(task))
55
+ { "slug" => slug, "crontab" => config&.schedule&.value, "timezone" => config&.timezone }.compact
56
+ rescue StandardError => e
57
+ Sentry.sdk_logger.error(Sentry::LOGGER_PROGNAME) { "Not monitoring Solid Queue recurring task #{task.key}: #{e.class}: #{e.message}" }
58
+ nil
59
+ end
60
+
61
+ def perform(job)
62
+ data = job.instance_variable_get(:@_sentry_recurring_task)
63
+ return yield unless data && Sentry.initialized?
64
+
65
+ slug = data["slug"]
66
+ if data["crontab"]
67
+ cron_config = Sentry.configuration.cron
68
+ monitor_config = Sentry::Cron::MonitorConfig.from_crontab(
69
+ data["crontab"],
70
+ timezone: data["timezone"],
71
+ checkin_margin: cron_config.default_checkin_margin,
72
+ max_runtime: cron_config.default_max_runtime
73
+ )
74
+ end
75
+
76
+ Sentry::Cron::MonitorCheckIns.with_check_in(slug, monitor_config: monitor_config) { yield }
77
+ end
78
+
79
+ def patch
80
+ return if @patched
81
+
82
+ @patched = true
83
+ ActiveSupport.on_load(:active_job) do
84
+ prepend Sentry::Rails::SolidQueueRecurring::Job
85
+ around_perform { |job, block| Sentry::Rails::SolidQueueRecurring.perform(job, &block) }
86
+ end
87
+
88
+ apply = proc do
89
+ if defined?(::SolidQueue::RecurringTask) && !(::SolidQueue::RecurringTask < Sentry::Rails::SolidQueueRecurring::RecurringTask)
90
+ ::SolidQueue::RecurringTask.prepend(Sentry::Rails::SolidQueueRecurring::RecurringTask)
91
+ end
92
+ end
93
+ ::Rails.application.reloader.to_prepare(&apply)
94
+ apply.call if ::Rails.application.initialized?
95
+ end
96
+
97
+ private
98
+
99
+ # Mirrors RecurringTask, which applies SolidQueue.time_zone to zoneless schedules.
100
+ def cron_for(task)
101
+ cron = ::Fugit.parse(task.schedule)
102
+ zone = ::SolidQueue.time_zone if ::SolidQueue.respond_to?(:time_zone)
103
+ return cron unless cron.is_a?(::Fugit::Cron) && cron.zone.nil? && zone.present?
104
+
105
+ ::Fugit.parse("#{cron.to_cron_s} #{zone}")
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
111
+
112
+ Sentry.register_patch(:solid_queue_recurring) do |config|
113
+ if defined?(::SolidQueue) && defined?(::Rails.application) && ::Rails.application
114
+ Sentry::Rails::SolidQueueRecurring.patch
115
+ else
116
+ config.sdk_logger.warn(Sentry::LOGGER_PROGNAME) { "You tried to enable the Solid Queue recurring task integration but the `solid_queue` gem was not detected." }
117
+ end
118
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Sentry
4
4
  module Rails
5
- VERSION = "7.0.0"
5
+ VERSION = "7.2.0"
6
6
  end
7
7
  end
data/lib/sentry/rails.rb CHANGED
@@ -8,6 +8,7 @@ require "sentry/rails/configuration"
8
8
  require "sentry/rails/structured_logging"
9
9
  require "sentry/rails/engine"
10
10
  require "sentry/rails/railtie"
11
+ require "sentry/rails/solid_queue_recurring"
11
12
 
12
13
  module Sentry
13
14
  module Rails
data/sentry-rails.gemspec CHANGED
@@ -31,5 +31,10 @@ Gem::Specification.new do |spec|
31
31
  spec.require_paths = ["lib"]
32
32
 
33
33
  spec.add_dependency "railties", ">= 5.2.0"
34
- spec.add_dependency "sentry-ruby", "~> 7.0.0"
34
+ spec.add_dependency "sentry-ruby", "~> 7.2.0"
35
+
36
+ spec.post_install_message = <<~MSG
37
+ Starting with sentry-rails 7.1.0, Rails structured logging is disabled by default.
38
+ Set `config.rails.structured_logging.enabled = true` to enable it.
39
+ MSG
35
40
  end