airbrake 5.8.1 → 6.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ad6d5f1f3dbd4190b70472b3109bd24c70b25884
4
- data.tar.gz: b3af8d47bf1f2f79f0d624ea8726c482bc31ea71
3
+ metadata.gz: 6fd6dc0541e7ed8b5c12e51970d26ef14ad61d75
4
+ data.tar.gz: 5dbd13f274588c4bfe444914c0dfdd28985e8693
5
5
  SHA512:
6
- metadata.gz: 60754321fb09cb14b563d65d77a42a6df481c3530107a6cb127d83782fe01b883dd0cbbfa832f004672c8c04ecabe6dfe9449ee3d0e2fb7e7d3881d04607fc3b
7
- data.tar.gz: 4b6433d157646f90229817032c50a252f7fef3ea3b9e6a28b931debe4eebb070dee0537c77e93a2828e0b9dd1afa9a1da3ee1acedbdc898dac9a758c078b7d6a
6
+ metadata.gz: 2463751a7a8e16c003acc7671e0a88db25878462fe6cf4fc74ff07160636c87579a1c05eddbe6f16e25fe570d61832c3ca86fc92961ea4c813e9e5d2ef1077e4
7
+ data.tar.gz: 2884c1a743235a0e7c25dc1f07a8f662a6d486d0de7e8fe729b2cfe4a3e33007566b2e258b40994d4495aa849e375fcbbe103637b41c78d8ac8e2729b4069a50
@@ -28,53 +28,8 @@ require 'airbrake/delayed_job/plugin' if defined?(Delayed)
28
28
 
29
29
  require 'airbrake/logger/airbrake_logger'
30
30
 
31
- ##
32
- # This module reopens the original Airbrake module from airbrake-ruby and adds
33
- # integration specific methods.
34
- module Airbrake
35
- class << self
36
- ##
37
- # Attaches a callback (builder) that runs every time the Rack integration
38
- # reports an error. Can be used to attach additional data from the Rack
39
- # request.
40
- #
41
- # @example Adding remote IP from the Rack environment
42
- # Airbrake.add_rack_builder do |notice, request|
43
- # notice[:params][:remoteIp] = request.env['REMOTE_IP']
44
- # end
45
- #
46
- # @yieldparam notice [Airbrake::Notice] notice that will be sent to Airbrake
47
- # @yieldparam request [Rack::Request] current rack request
48
- # @yieldreturn [void]
49
- # @return [void]
50
- # @since 5.1.0
51
- # @deprecated Use {Airbrake.add_filter} with {Airbrake::Notice#stash}
52
- # instead.
53
- def add_rack_builder(&block)
54
- warn(
55
- "#{LOG_LABEL} `Airbrake.add_rack_builder` is deprecated and will " \
56
- "be removed. Please use `Airbrake.add_filter` with `Notice#stash` " \
57
- "instead. The stashed object is accessible through the :rack_request " \
58
- "key. How to use: https://goo.gl/2dbuzR"
59
- )
60
- Airbrake.add_filter(rack_builder_shim(block))
61
- end
62
-
63
- private
64
-
65
- def rack_builder_shim(block)
66
- proc do |notice|
67
- if notice.stash[:rack_request]
68
- block.call(notice, notice.stash[:rack_request])
69
- else
70
- block.call(notice)
71
- end
72
- end
73
- end
74
- end
75
- end
76
-
77
31
  # Notify of unhandled exceptions, if there were any, but ignore SystemExit.
78
32
  at_exit do
79
33
  Airbrake.notify_sync($ERROR_INFO) if $ERROR_INFO
34
+ Airbrake.close
80
35
  end
@@ -2,5 +2,5 @@
2
2
  # We use Semantic Versioning v2.0.0
3
3
  # More information: http://semver.org/
4
4
  module Airbrake
5
- AIRBRAKE_VERSION = '5.8.1'.freeze
5
+ AIRBRAKE_VERSION = '6.0.0'.freeze
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: airbrake
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.8.1
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Airbrake Technologies, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-02 00:00:00.000000000 Z
11
+ date: 2017-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: airbrake-ruby
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.8'
19
+ version: '2.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.8'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -234,7 +234,6 @@ files:
234
234
  - spec/integration/shared_examples/rack_examples.rb
235
235
  - spec/integration/sinatra/sinatra_spec.rb
236
236
  - spec/spec_helper.rb
237
- - spec/unit/airbrake_spec.rb
238
237
  - spec/unit/logger/airbrake_logger_spec.rb
239
238
  - spec/unit/rack/context_filter_spec.rb
240
239
  - spec/unit/rack/http_headers_filter_spec.rb
@@ -289,7 +288,6 @@ test_files:
289
288
  - spec/integration/shared_examples/rack_examples.rb
290
289
  - spec/integration/sinatra/sinatra_spec.rb
291
290
  - spec/spec_helper.rb
292
- - spec/unit/airbrake_spec.rb
293
291
  - spec/unit/logger/airbrake_logger_spec.rb
294
292
  - spec/unit/rack/context_filter_spec.rb
295
293
  - spec/unit/rack/http_headers_filter_spec.rb
@@ -1,65 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe Airbrake do
4
- let(:endpoint) do
5
- 'https://airbrake.io/api/v3/projects/113743/notices?key=fd04e13d806a90f96614ad8e529b2822'
6
- end
7
-
8
- def env_for(url, opts = {})
9
- Rack::MockRequest.env_for(url, opts)
10
- end
11
-
12
- before do
13
- stub_request(:post, endpoint).to_return(status: 201, body: '{}')
14
- end
15
-
16
- describe ".add_rack_builder" do
17
- let(:filters) do
18
- notifier = Airbrake.instance_variable_get(:@notifiers)[:default]
19
- filter_chain = notifier.instance_variable_get(:@filter_chain)
20
- filter_chain.instance_variable_get(:@filters)
21
- end
22
-
23
- after { filters.pop }
24
-
25
- it "adds new builder to the filter chain" do
26
- expect do
27
- Airbrake.add_rack_builder(&proc { |_, _| nil })
28
- end.to change { filters.count }.by(1)
29
- end
30
-
31
- context "when notice has :rack_request in stash" do
32
- it "executes the filter yielding 2 params (last one is request)" do
33
- executed = false
34
- builder = proc do |notice, request|
35
- executed = true
36
- expect(notice).to be_an(Airbrake::Notice)
37
- expect(request).to be_a(Rack::Request)
38
- end
39
- Airbrake.add_rack_builder(&builder)
40
-
41
- notice = Airbrake.build_notice('oops')
42
- notice.stash[:rack_request] = Rack::Request.new(env_for('/'))
43
- Airbrake.notify_sync(notice)
44
-
45
- expect(executed).to be_truthy
46
- end
47
- end
48
-
49
- context "when notice doesn't have :rack_request in stash" do
50
- it "executes the filter yielding only one param" do
51
- executed = false
52
- builder = proc do |notice, request|
53
- executed = true
54
- expect(notice).to be_an(Airbrake::Notice)
55
- expect(request).to be_nil
56
- end
57
- Airbrake.add_rack_builder(&builder)
58
-
59
- Airbrake.notify_sync('oops')
60
-
61
- expect(executed).to be_truthy
62
- end
63
- end
64
- end
65
- end