honeybadger 5.8.0 → 5.9.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 +4 -4
- data/CHANGELOG.md +14 -0
- data/lib/honeybadger/agent.rb +2 -2
- data/lib/honeybadger/cli/exec.rb +1 -1
- data/lib/honeybadger/context_manager.rb +27 -6
- data/lib/honeybadger/version.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2c74b0590c5e22b6e264874c05c3dcc6a05159d9fe9daa119222c3fada7610da
|
4
|
+
data.tar.gz: acce276df177dc0c91c15a216c65f9ecd78e9d1221d5f4d39bb1c95bbee4f509
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bcac64eba99e9cad7d31d59d31643080b6725f6e32ee9454e8f4ffb7fc354a6b10b03433ca5469d280c6afca7b6d4df0e7c2aaa5edc858124a416c22d3e52da8
|
7
|
+
data.tar.gz: 7bfe5cfde348795b66d3fe97ff9e4c7bbe41d1b1fd273b39524d1a225dfebd6dcc62c1dae563fb95c5535362e1f9dbe8f08c8798de516941e433a440258449d3
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,20 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
3
|
|
4
|
+
## [5.9.0](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.8.1...v5.9.0) (2024-05-09)
|
5
|
+
|
6
|
+
|
7
|
+
### Features
|
8
|
+
|
9
|
+
* implement local contexts ([#541](https://github.com/honeybadger-io/honeybadger-ruby/issues/541)) ([806718e](https://github.com/honeybadger-io/honeybadger-ruby/commit/806718e76bf8d132a632c75bea124a8b22a4cc97))
|
10
|
+
|
11
|
+
## [5.8.1](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.8.0...v5.8.1) (2024-05-07)
|
12
|
+
|
13
|
+
|
14
|
+
### Bug Fixes
|
15
|
+
|
16
|
+
* store pr title before usage ([#542](https://github.com/honeybadger-io/honeybadger-ruby/issues/542)) ([d4cdfe7](https://github.com/honeybadger-io/honeybadger-ruby/commit/d4cdfe71d6a957be8c61bcb5c01f96b0735b5c97))
|
17
|
+
|
4
18
|
## [5.8.0](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.7.0...v5.8.0) (2024-03-23)
|
5
19
|
|
6
20
|
|
data/lib/honeybadger/agent.rb
CHANGED
@@ -259,8 +259,8 @@ module Honeybadger
|
|
259
259
|
# (optional).
|
260
260
|
#
|
261
261
|
# @return [self] so that method calls can be chained.
|
262
|
-
def context(context = nil)
|
263
|
-
context_manager.set_context(context) unless context.nil?
|
262
|
+
def context(context = nil, &block)
|
263
|
+
context_manager.set_context(context, &block) unless context.nil?
|
264
264
|
self
|
265
265
|
end
|
266
266
|
|
data/lib/honeybadger/cli/exec.rb
CHANGED
@@ -21,15 +21,36 @@ module Honeybadger
|
|
21
21
|
# Internal helpers
|
22
22
|
|
23
23
|
|
24
|
-
def set_context(hash)
|
24
|
+
def set_context(hash, &block)
|
25
|
+
local = block_given?
|
25
26
|
@mutex.synchronize do
|
26
|
-
@
|
27
|
-
@
|
27
|
+
@global_context ||= {}
|
28
|
+
@local_context ||= []
|
29
|
+
|
30
|
+
new_context = Context(hash)
|
31
|
+
|
32
|
+
if local
|
33
|
+
@local_context << new_context
|
34
|
+
else
|
35
|
+
@global_context.update(new_context)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
if local
|
40
|
+
begin
|
41
|
+
yield
|
42
|
+
ensure
|
43
|
+
@mutex.synchronize { @local_context&.pop }
|
44
|
+
end
|
28
45
|
end
|
29
46
|
end
|
30
47
|
|
31
48
|
def get_context
|
32
|
-
@mutex.synchronize
|
49
|
+
@mutex.synchronize do
|
50
|
+
return @global_context unless @local_context
|
51
|
+
|
52
|
+
@global_context.merge(@local_context.inject({}, :merge))
|
53
|
+
end
|
33
54
|
end
|
34
55
|
|
35
56
|
def set_rack_env(env)
|
@@ -46,10 +67,10 @@ module Honeybadger
|
|
46
67
|
|
47
68
|
def _initialize
|
48
69
|
@mutex.synchronize do
|
49
|
-
@
|
70
|
+
@global_context = nil
|
71
|
+
@local_context = nil
|
50
72
|
@rack_env = nil
|
51
73
|
end
|
52
74
|
end
|
53
|
-
|
54
75
|
end
|
55
76
|
end
|
data/lib/honeybadger/version.rb
CHANGED
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: 5.
|
4
|
+
version: 5.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Honeybadger Industries LLC
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Make managing application errors a more pleasant experience.
|
14
14
|
email:
|
@@ -144,7 +144,7 @@ metadata:
|
|
144
144
|
documentation_uri: https://docs.honeybadger.io/lib/ruby/
|
145
145
|
homepage_uri: https://www.honeybadger.io/for/ruby/
|
146
146
|
source_code_uri: https://github.com/honeybadger-io/honeybadger-ruby
|
147
|
-
post_install_message:
|
147
|
+
post_install_message:
|
148
148
|
rdoc_options:
|
149
149
|
- "--markup=tomdoc"
|
150
150
|
- "--main=README.md"
|
@@ -163,7 +163,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
163
163
|
version: '0'
|
164
164
|
requirements: []
|
165
165
|
rubygems_version: 3.5.3
|
166
|
-
signing_key:
|
166
|
+
signing_key:
|
167
167
|
specification_version: 4
|
168
168
|
summary: Error reports you can be happy about.
|
169
169
|
test_files: []
|