chalk-log 0.1.5 → 0.1.6

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: b64a5b481dbbd3e6b520960eb91a62c16adb4e84
4
- data.tar.gz: f53bd63e7b8ab85a973530ec20ca98fad29bec29
3
+ metadata.gz: 51740a04663dc5789cf617d795902c878753da4d
4
+ data.tar.gz: ddce4867174594d0e261b1451cf8fcf2bb195e44
5
5
  SHA512:
6
- metadata.gz: 708304b9c0a3bd9304dae206683bf183eccb34f4108530d73b39965383abeb40c2431900d9f034410c6134695184eaf7f9be64bf60ccda076797423202a5b4a1
7
- data.tar.gz: 69636ca78d2d41573ce3972b883665270b80114c076bee20d60a1177a2f24181d46d0429056f2a346e2656ef231f17833bcbfd62dda72acd5ca9546aef1682cc
6
+ metadata.gz: 599c1125ff94b46bd016c78a45126b6648bedd03a0fe92d20c10d9595a57eaf81e9e9c9e64ef2862545525f07af68b1a4df0dd68ba70fe90a5fe96e3eb4607c3
7
+ data.tar.gz: f9f6143c0c9cac78ee48e5629d01b7b849766047dd3bfcf959337f4c0231846083584a3173326f73875b385e3c1a877dd1171b93b0edf7e1c2e174ae04553326
@@ -50,6 +50,7 @@ class Chalk::Log::Layout < ::Logging::Layout
50
50
 
51
51
  # Data provided by blocks may not be arrays yet
52
52
  data = [data] unless data.kind_of?(Array)
53
+ data = data.dup # Make a private copy that we can mutate
53
54
  info = data.pop if data.last.kind_of?(Hash)
54
55
  error = data.pop if data.last.kind_of?(Exception)
55
56
  message = data.pop if data.last.kind_of?(String)
@@ -66,7 +67,7 @@ class Chalk::Log::Layout < ::Logging::Layout
66
67
  span: span.to_s,
67
68
  message: message,
68
69
  error: error,
69
- info: (info && info.merge(contextual_info || {})) || contextual_info,
70
+ info: (info && (contextual_info || {}).merge(info)) || contextual_info,
70
71
  pid: pid
71
72
  )
72
73
  end
@@ -95,7 +96,7 @@ class Chalk::Log::Layout < ::Logging::Layout
95
96
  if info
96
97
  message << ' ' if message
97
98
  message ||= ''
98
- info!(message, info)
99
+ message << format_hash(info)
99
100
  end
100
101
 
101
102
  if error
@@ -109,12 +110,6 @@ class Chalk::Log::Layout < ::Logging::Layout
109
110
  message
110
111
  end
111
112
 
112
- # Displaying info hash
113
-
114
- def info!(message, info)
115
- message << format_hash(info.merge(contextual_info || {}))
116
- end
117
-
118
113
  def display(key, value)
119
114
  begin
120
115
  value = json(value)
@@ -1,5 +1,5 @@
1
1
  module Chalk
2
2
  module Log
3
- VERSION = '0.1.5'
3
+ VERSION = '0.1.6'
4
4
  end
5
5
  end
@@ -201,6 +201,13 @@ module Critic::Functional
201
201
  end
202
202
  end
203
203
 
204
+ it 'prefers explicit information over the context' do
205
+ log.with_contextual_info(omg: 'wtf') do
206
+ log.info("message", omg: 'ponies')
207
+ end
208
+ assert_logged("omg=ponies")
209
+ end
210
+
204
211
  it 'requires a block' do
205
212
  exn = assert_raises(ArgumentError) do
206
213
  log.with_contextual_info(i_am_not: "passing a block")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chalk-log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-31 00:00:00.000000000 Z
11
+ date: 2016-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chalk-config
@@ -157,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  version: '0'
158
158
  requirements: []
159
159
  rubyforge_project:
160
- rubygems_version: 2.2.5
160
+ rubygems_version: 2.2.2
161
161
  signing_key:
162
162
  specification_version: 4
163
163
  summary: Chalk::Log makes any class loggable. It provides a logger that can be used
@@ -171,3 +171,4 @@ test_files:
171
171
  - test/functional/log.rb
172
172
  - test/unit/_lib.rb
173
173
  - test/unit/chalk-log/utils.rb
174
+ has_rdoc: