rollbar 2.7.0 → 2.7.1

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.
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