raygun4ruby 1.1.3 → 1.1.4

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: d9e6e07eb62a1e5b014f23705b3438154a8d5645
4
- data.tar.gz: 1669c3ed97bc8ab9f2234db2d351e1542539136e
3
+ metadata.gz: 48b225693ce7d8b12ed42cf62c7ac62772631423
4
+ data.tar.gz: 6a6d145569e18de22b0f6264ea124d5893a5bb28
5
5
  SHA512:
6
- metadata.gz: 8ce62d3015545c77a1cdbdf76dc5215c9f8aa01b1ff7930d77debda1140dd267eb52cf01ee4736c10866ff8c9c67565b9de9748b74179d08477f1fc1d0edfc08
7
- data.tar.gz: 96f8dc35a93f66b220d368f0370b413e605a080a07ee849747ef3009be7230df23ac4a401e55a657b23ecd941fdce3b7a7348df6abdfc53df2a6b45a2d319449
6
+ metadata.gz: 57fb50409b4dbcbeead76dc3306b2d5204652b0a3ec274c51ad7c8f2852300456af3b048cc03f3f964c2d9bace03640ad8a957b20f589977f7d4cb69ab7289f3
7
+ data.tar.gz: f6ba6f88c324f94d72ae15acab093ce33c5a47e8020d97ca7ce67f9a315aa8c6241ce6cadd21b7536ae64e0149a48ce03e4005a1e8537b0855eaeda63f068030
data/lib/raygun/client.rb CHANGED
@@ -49,7 +49,7 @@ module Raygun
49
49
  {
50
50
  lineNumber: line_number,
51
51
  fileName: file_name,
52
- methodName: method.gsub(/^in `(.*?)'$/, "\\1")
52
+ methodName: method ? method.gsub(/^in `(.*?)'$/, "\\1") : "(none)"
53
53
  }
54
54
  end
55
55
 
@@ -76,7 +76,7 @@ module Raygun
76
76
  hostName: env["SERVER_NAME"],
77
77
  url: env["PATH_INFO"],
78
78
  httpMethod: env["REQUEST_METHOD"],
79
- iPAddress: ip_address_from(env),
79
+ iPAddress: "#{ip_address_from(env)}",
80
80
  queryString: Rack::Utils.parse_nested_query(env["QUERY_STRING"]),
81
81
  form: form_data(env),
82
82
  headers: headers(env),
@@ -1,3 +1,3 @@
1
1
  module Raygun
2
- VERSION = "1.1.3"
2
+ VERSION = "1.1.4"
3
3
  end
data/lib/raygun.rb CHANGED
@@ -50,7 +50,7 @@ module Raygun
50
50
  end
51
51
  rescue Exception => e
52
52
  if configuration.failsafe_logger
53
- failsafe_log("Problem reporting exception to Raygun: #{e.class}: #{e.message}\n\n#{e.backrace.join("\n")}")
53
+ failsafe_log("Problem reporting exception to Raygun: #{e.class}: #{e.message}\n\n#{e.backtrace.join("\n")}")
54
54
  else
55
55
  raise e
56
56
  end
data/raygun4ruby.gemspec CHANGED
@@ -30,5 +30,5 @@ Gem::Specification.new do |spec|
30
30
  spec.add_development_dependency "minitest", "~> 4.2"
31
31
  spec.add_development_dependency "redis-namespace", ">= 1.3.1"
32
32
  spec.add_development_dependency "resque"
33
- spec.add_development_dependency "sidekiq", "~> 3"
33
+ spec.add_development_dependency "sidekiq", [">= 3", "< 3.2.2"]
34
34
  end
@@ -6,6 +6,16 @@ class ClientTest < Raygun::UnitTest
6
6
 
7
7
  class TestException < StandardError; end
8
8
 
9
+ class FakeActionDispatcherIp
10
+ attr_reader :ip
11
+ def initialize remote_ip
12
+ @ip = remote_ip
13
+ end
14
+ def to_s
15
+ return ip
16
+ end
17
+ end
18
+
9
19
  def setup
10
20
  super
11
21
  @client = Raygun::Client.new
@@ -90,6 +100,18 @@ class ClientTest < Raygun::UnitTest
90
100
  assert_silent { @client.track_exception(bad_exception) }
91
101
  end
92
102
 
103
+ def test_backtrace_without_method_name
104
+
105
+ expected = {
106
+ lineNumber: "123",
107
+ fileName: "/some/folder/some_file.rb",
108
+ methodName: "(none)"
109
+ }
110
+
111
+ # note lack of "in method name" in this stack trace line
112
+ assert_equal expected, @client.send(:stack_trace_for, "/some/folder/some_file.rb:123")
113
+ end
114
+
93
115
  def test_full_payload_hash
94
116
  Timecop.freeze do
95
117
  Raygun.configuration.version = 123
@@ -242,12 +264,35 @@ class ClientTest < Raygun::UnitTest
242
264
  "SERVER_PROTOCOL"=>"HTTP/1.1",
243
265
  "SCRIPT_NAME"=>"",
244
266
  "REMOTE_ADDR"=>"127.0.0.1",
245
- "action_dispatch.remote_ip"=>"123.456.789.012"
267
+ "action_dispatch.remote_ip"=> "123.456.789.012"
246
268
  }
247
269
 
248
270
  assert_equal "123.456.789.012", @client.send(:ip_address_from, sample_env_hash)
249
271
  assert_equal "123.456.789.012", @client.send(:request_information, sample_env_hash)[:iPAddress]
250
272
  end
273
+ def test_ip_address_from_old_action_dispatch
274
+ old_action_dispatch_ip = FakeActionDispatcherIp.new("123.456.789.012")
275
+ sample_env_hash = {
276
+ "HTTP_VERSION"=>"HTTP/1.1",
277
+ "HTTP_HOST"=>"localhost:3000",
278
+ "HTTP_CONNECTION"=>"keep-alive",
279
+ "HTTP_CACHE_CONTROL"=>"max-age=0",
280
+ "HTTP_ACCEPT"=>"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
281
+ "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.22 Safari/537.36",
282
+ "HTTP_ACCEPT_ENCODING"=>"gzip,deflate,sdch",
283
+ "HTTP_ACCEPT_LANGUAGE"=>"en-US,en;q=0.8",
284
+ "HTTP_COOKIE"=>"cookieval",
285
+ "GATEWAY_INTERFACE"=>"CGI/1.2",
286
+ "SERVER_PORT"=>"3000",
287
+ "SERVER_PROTOCOL"=>"HTTP/1.1",
288
+ "SCRIPT_NAME"=>"",
289
+ "REMOTE_ADDR"=>"127.0.0.1",
290
+ "action_dispatch.remote_ip"=> old_action_dispatch_ip
291
+ }
292
+
293
+ assert_equal old_action_dispatch_ip, @client.send(:ip_address_from, sample_env_hash)
294
+ assert_equal "123.456.789.012", @client.send(:request_information, sample_env_hash)[:iPAddress]
295
+ end
251
296
 
252
297
  def test_ip_address_from_raygun_specific_key
253
298
  sample_env_hash = {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun4ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mindscape
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-07-09 00:00:00.000000000 Z
12
+ date: 2014-08-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -155,16 +155,22 @@ dependencies:
155
155
  name: sidekiq
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ~>
158
+ - - '>='
159
159
  - !ruby/object:Gem::Version
160
160
  version: '3'
161
+ - - <
162
+ - !ruby/object:Gem::Version
163
+ version: 3.2.2
161
164
  type: :development
162
165
  prerelease: false
163
166
  version_requirements: !ruby/object:Gem::Requirement
164
167
  requirements:
165
- - - ~>
168
+ - - '>='
166
169
  - !ruby/object:Gem::Version
167
170
  version: '3'
171
+ - - <
172
+ - !ruby/object:Gem::Version
173
+ version: 3.2.2
168
174
  description: Ruby Adapter for Raygun.io
169
175
  email:
170
176
  - hello@raygun.io