honeybadger 3.1.1 → 3.1.2

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: 2f0a64f658caa8ec626ba0c4a4a8ce4d0f258145
4
- data.tar.gz: 8def10b166ae16d0faeab0cf7ec4c10fb2596cf3
3
+ metadata.gz: 1fca9cfb9b3f398717cef38fb7fc102258d38e09
4
+ data.tar.gz: 70732d0da96a1d602ee6cd5d004e07d1aeeef64d
5
5
  SHA512:
6
- metadata.gz: cb3be63b99e2fbb896b7ac9f8f57eadc7c9d4369f46e09661ec23121fb833ee5edb228376d9066e6f031718d00abdff5d8750115cb4530fefa0bde6e7a09e930
7
- data.tar.gz: 2eed6f1df816b815b90a07be55d474bf2924294e15120c4b546bd16ff744319133943b3f7a2a2234a3e900abdcaa2e4dfa4960dd4ffafd33410f231fd2818b28
6
+ metadata.gz: 1cda45a0714647ea90064e27a76f24fc24b35eda416401a3fe4f24009f4a944fe10a523c13d97da69c8fdb8536c025d84bb18633f0a5e98ed2a7185faff2d190
7
+ data.tar.gz: 97ab1d295995b103bb49662b12a0d81cc167c84a149e63b92d80bc8aa325ac78fc4880f909057d151009dd06847d4226a81e88c1820f58b8ad17ac0d85f4dd15
@@ -5,6 +5,13 @@ adheres to [Semantic Versioning](http://semver.org/).
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [3.1.2] - 2017-04-20
9
+ ### Fixed
10
+ - Fixed a bug in the Resque plugin which prevented error reports from being
11
+ sent. The issue was that the Resque's callbacks were executed in an unexpected
12
+ order which caused the queue to be flushed before error notification instead
13
+ of after.
14
+
8
15
  ## [3.1.1] - 2017-04-13
9
16
  ### Fixed
10
17
  - `honeybadger deploy` cli command now reads default environment from
@@ -5,14 +5,18 @@ module Honeybadger
5
5
  module Plugins
6
6
  module Resque
7
7
  module Extension
8
+ # Executed before `on_failure` hook; the flush is necessary so that
9
+ # errors reported within jobs get sent before the worker dies.
8
10
  def around_perform_with_honeybadger(*args)
9
11
  Honeybadger.flush { yield }
10
12
  ensure
11
13
  Honeybadger.context.clear!
12
14
  end
13
15
 
16
+ # Error notifications must be synchronous as the `on_failure` hook is
17
+ # executed after `around_perform`.
14
18
  def on_failure_with_honeybadger(e, *args)
15
- Honeybadger.notify(e, parameters: { job_arguments: args }) if send_exception_to_honeybadger?(e, args)
19
+ Honeybadger.notify(e, parameters: { job_arguments: args }, sync: true) if send_exception_to_honeybadger?(e, args)
16
20
  end
17
21
 
18
22
  def send_exception_to_honeybadger?(e, args)
@@ -21,7 +25,7 @@ module Honeybadger
21
25
 
22
26
  !retry_criteria_valid?(e)
23
27
  rescue => e
24
- Honeybadger.notify(e, parameters: { job_arguments: args })
28
+ Honeybadger.notify(e, parameters: { job_arguments: args }, sync: true)
25
29
  end
26
30
  end
27
31
 
@@ -1,4 +1,4 @@
1
1
  module Honeybadger
2
2
  # Public: The current String Honeybadger version.
3
- VERSION = '3.1.1'.freeze
3
+ VERSION = '3.1.2'.freeze
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: honeybadger
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.1
4
+ version: 3.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Honeybadger Industries LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-13 00:00:00.000000000 Z
11
+ date: 2017-04-20 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Make managing application errors a more pleasant experience.
14
14
  email: