rollbar 2.7.0 → 2.7.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
  SHA1:
3
- metadata.gz: dd9b6e18ebb383811eeb94a71ebb3c257c6f8eb3
4
- data.tar.gz: 53fff3d9e6c7e382ddad631f09fbbfb790761875
3
+ metadata.gz: 307192963be4a3aefcd14f135c284089329768e8
4
+ data.tar.gz: 827eab30ef25e8da4c2ad4befcd48f6e9d142794
5
5
  SHA512:
6
- metadata.gz: 6a71c85969223088bba62f91c54e68fc05bf803f7e7de5fdba8df2912ccb20d14b8eccb896ba6d5e1710f3b0695bcd0faca91a655e2edc93f229a287ebb79a52
7
- data.tar.gz: 41ae2da0a51043db97987f019ef0628ae9b52f9385ae6772df2691c1b95171543d3883d6e2fad6e0c467f1545e48e3360bae41fde06d8f0296b9f0d848bede45
6
+ metadata.gz: fa47e8350d65964e7077556ec9c5930ae429850ce83a8ca945dd57415429c8c800f7617d99b440e2596e01e7d0613b72f31b0d40f9a1341ffc75dec625ae9327
7
+ data.tar.gz: 313592eef5826b4f7bb9674848b28d30b2e366fd4ad580b5a1478fb18d118ff9f49a6ad5d54bb349adc80794460ae8ae239b2e856d4680f9cd17921625c47a06
@@ -1,5 +1,12 @@
1
1
  # Change Log
2
2
 
3
+ ## 2.7.1
4
+
5
+ - Suggest using ROLLBAR_ENV for staging apps. See [#353](https://github.com/rollbar/rollbar-gem/pull/353).
6
+ - Fix Rollbar::Util.deep_merge so it has default values for arguments. See [#362](https://github.com/rollbar/rollbar-gem/pull/362).
7
+ - Ignore exception cause when it's not another exception. See [#357](https://github.com/rollbar/rollbar-gem/pull/357).
8
+
9
+
3
10
  ## 2.7.0
4
11
 
5
12
  - Delayed job integration fix. See [#355](https://github.com/rollbar/rollbar-gem/pull/355).
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.7.0)](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.7.1)](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,13 +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.7.0'
16
- ```
17
-
18
- If you are not using JRuby we suggest using [Oj](https://github.com/ohler55/oj) for JSON serialization. In order to install Oj you can add this line to your Gemfile:
19
-
20
- ```ruby
21
- gem 'oj', '~> 2.12.14'
15
+ gem 'rollbar', '~> 2.7.1'
22
16
  ```
23
17
 
24
18
  And then execute:
@@ -29,6 +23,14 @@ $ bundle install
29
23
  $ gem install rollbar
30
24
  ```
31
25
 
26
+ Unless you are using JRuby, we suggest also installing [Oj](https://github.com/ohler55/oj) for JSON serialization. Add this line to your Gemfile:
27
+
28
+ ```ruby
29
+ gem 'oj', '~> 2.12.14'
30
+ ```
31
+
32
+ and then `bundle install` again.
33
+
32
34
  ### If using Rails
33
35
 
34
36
  Run the following command from your Rails root:
@@ -56,4 +56,11 @@ Rollbar.configure do |config|
56
56
  # config.use_sidekiq
57
57
  # You can supply custom Sidekiq options:
58
58
  # config.use_sidekiq 'queue' => 'default'
59
+
60
+ # If you run your staging application instance in production environment then
61
+ # you'll want to override the environment reported by `Rails.env` with an
62
+ # environment variable like this: `ROLLBAR_ENV=staging`. This is a recommended
63
+ # setup for Heroku. See:
64
+ # https://devcenter.heroku.com/articles/deploying-to-a-custom-rails-environment
65
+ config.environment = ENV['ROLLBAR_ENV'] || Rails.env
59
66
  end
@@ -442,7 +442,7 @@ module Rollbar
442
442
  traces = [trace_data(exception)]
443
443
  visited = [exception]
444
444
 
445
- while exception.respond_to?(:cause) && (cause = exception.cause) && !visited.include?(cause)
445
+ while exception.respond_to?(:cause) && (cause = exception.cause) && cause.is_a?(Exception) && !visited.include?(cause)
446
446
  traces << trace_data(cause)
447
447
  visited << cause
448
448
  exception = cause
@@ -66,10 +66,13 @@ module Rollbar
66
66
  end
67
67
 
68
68
  def self.deep_merge(hash1, hash2)
69
+ hash1 ||= {}
70
+ hash2 ||= {}
71
+
69
72
  hash2.each_key do |k|
70
- if hash1[k].is_a? ::Hash and hash2[k].is_a? ::Hash
73
+ if hash1[k].is_a?(::Hash) && hash2[k].is_a?(::Hash)
71
74
  hash1[k] = deep_merge(hash1[k], hash2[k])
72
- elsif hash1[k].is_a? Array and hash2[k].is_a? Array
75
+ elsif hash1[k].is_a?(Array) && hash2[k].is_a?(Array)
73
76
  hash1[k] += deep_copy(hash2[k])
74
77
  elsif hash2[k]
75
78
  hash1[k] = deep_copy(hash2[k])
@@ -1,3 +1,3 @@
1
1
  module Rollbar
2
- VERSION = "2.7.0"
2
+ VERSION = "2.7.1"
3
3
  end
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ require 'rollbar/util'
4
+
5
+ describe Rollbar::Util do
6
+ describe '.deep_merge' do
7
+ context 'with nil arguments' do
8
+ let(:data) do
9
+ { :foo => :bar }
10
+ end
11
+
12
+ it 'doesnt fail and returns same hash' do
13
+ result = Rollbar::Util.deep_merge(nil, data)
14
+
15
+ expect(result).to be_eql(data)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -2,7 +2,6 @@
2
2
 
3
3
  require 'logger'
4
4
  require 'socket'
5
- require 'spec_helper'
6
5
  require 'girl_friday'
7
6
  require 'redis'
8
7
  require 'active_support/core_ext/object'
@@ -14,6 +13,8 @@ begin
14
13
  rescue LoadError
15
14
  end
16
15
 
16
+ require 'spec_helper'
17
+
17
18
  describe Rollbar do
18
19
  let(:notifier) { Rollbar.notifier }
19
20
  before do
@@ -646,6 +647,13 @@ describe Rollbar do
646
647
  chain[1][:exception][:message].should match(/the cause/)
647
648
  end
648
649
 
650
+ it 'ignores the cause when it is not an Exception' do
651
+ exception_with_custom_cause = Exception.new('custom cause')
652
+ allow(exception_with_custom_cause).to receive(:cause) { "Foo" }
653
+ body = notifier.send(:build_payload_body_exception, message, exception_with_custom_cause, extra)
654
+ body[:trace].should_not be_nil
655
+ end
656
+
649
657
  context 'with cyclic nested exceptions' do
650
658
  let(:exception1) { Exception.new('exception1') }
651
659
  let(:exception2) { Exception.new('exception2') }
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.7.0
4
+ version: 2.7.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: 2015-12-10 00:00:00.000000000 Z
11
+ date: 2015-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -371,6 +371,7 @@ files:
371
371
  - spec/rollbar/truncation/strings_strategy_spec.rb
372
372
  - spec/rollbar/truncation_spec.rb
373
373
  - spec/rollbar/util/hash_spec.rb
374
+ - spec/rollbar/util_spec.rb
374
375
  - spec/rollbar_bc_spec.rb
375
376
  - spec/rollbar_spec.rb
376
377
  - spec/spec_helper.rb
@@ -491,6 +492,7 @@ test_files:
491
492
  - spec/rollbar/truncation/strings_strategy_spec.rb
492
493
  - spec/rollbar/truncation_spec.rb
493
494
  - spec/rollbar/util/hash_spec.rb
495
+ - spec/rollbar/util_spec.rb
494
496
  - spec/rollbar_bc_spec.rb
495
497
  - spec/rollbar_spec.rb
496
498
  - spec/spec_helper.rb