k_log 0.0.10 → 0.0.15

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
  SHA256:
3
- metadata.gz: 434dc148e16a0ee8d9760e0d7e9b23777da00fbbc653bb48f79c795b265f91cc
4
- data.tar.gz: 7f756677bcb989f589d9b9bb0ce3526e7f3b8d6e05c13dab9f936a89888954e6
3
+ metadata.gz: f2ccb53751a29b845bfd6390858eb240022f36a7a6fccf4ecd7ee1ce9bff6e3c
4
+ data.tar.gz: 4674f6da5073ae74d02e757a2e262cb0f0565937c823b1b8a7e5542b97293a08
5
5
  SHA512:
6
- metadata.gz: 6ae7c995344694b8a22424ec4fc974c7b23e4014b039632c3d184b77cad6ad20dc577ee5db5d0d881177013ad5e617e7347fd284b855a41347e0eb3073876b56
7
- data.tar.gz: 597070e56e27c4d86d426f81e13a13ed1d8db000b44ebcdfe7ce9f1a75f24dc0b0162289ff5bb9ee343c0f23e8a471cbe6956f972cd882539a7a163a77260d4f
6
+ metadata.gz: 925822534585b98027b1f101f6897cb6404bff3f5e51d2bf67acc25a7a6f0ea88534dba1d4245a51a491054d236b226895f2891b453d0f780b7f16937d8a9559
7
+ data.tar.gz: 69c222e2bf0d58c487bc639780befdad04d30779c5d60e66f43970a89a4441103e66d0eae2b66c42118f05d8e415624bbcb839d17ad4af6816eeb9eada4a8239
data/k_log.gemspec CHANGED
@@ -38,6 +38,6 @@ Gem::Specification.new do |spec|
38
38
  spec.require_paths = ['lib']
39
39
  # spec.extensions = ['ext/k_log/extconf.rb']
40
40
 
41
- spec.add_dependency 'table_print', '~> 1.5.7'
41
+ spec.add_dependency 'table_print', '~> 1.5.7'
42
42
  # spec.add_dependency 'tty-box', '~> 0.5.0'
43
43
  end
data/lib/k_log.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'logger'
4
+ require 'table_print'
4
5
  require 'k_log/version'
5
6
  require 'k_log/log_formatter'
6
7
  require 'k_log/log_helper'
@@ -13,11 +14,25 @@ module KLog
13
14
 
14
15
  class << self
15
16
  attr_accessor :logger
17
+
18
+ def default_logger
19
+ return @default_logger if defined? @default_logger
20
+
21
+ @default_logger = begin
22
+ logger = Logger.new($stdout)
23
+ logger.level = Logger::DEBUG
24
+ logger.formatter = KLog::LogFormatter.new
25
+ KLog::LogUtil.new(logger)
26
+ end
27
+ end
16
28
  end
17
29
  end
18
30
 
19
- # KLog.logger = Logger.new($stdout)
20
- # KLog.logger.level = Logger::DEBUG
21
- # KLog.logger.formatter = KLog::LogFormatter.new
31
+ KLog.logger = KLog.default_logger
22
32
 
23
- # L = KLog::LogUtil.new(KLog.logger)
33
+ if ENV['KLUE_DEBUG']&.to_s&.downcase == 'true'
34
+ namespace = 'KLog::Version'
35
+ file_path = $LOADED_FEATURES.find { |f| f.include?('k_log/version') }
36
+ version = KLog::VERSION.ljust(9)
37
+ puts "#{namespace.ljust(40)} : #{version.ljust(9)} : #{file_path}"
38
+ end
@@ -100,8 +100,8 @@ module KLog
100
100
 
101
101
  # # :sql_array should be an array with SQL and values or with SQL and Hash
102
102
  # # example:
103
- # # L.sql(["name = :name and group_id = :value OR parent_id = :value", name: "foo'bar", value: 4])
104
- # # L.sql([sql_exact_match_skills_in_use, {names: self.segments_container.segment_values}])
103
+ # # KLog.logger.sql(["name = :name and group_id = :value OR parent_id = :value", name: "foo'bar", value: 4])
104
+ # # KLog.logger.sql([sql_exact_match_skills_in_use, {names: self.segments_container.segment_values}])
105
105
  # def sql(sql_array)
106
106
  # value = ActiveRecord::Base.send(:sanitize_sql_array, sql_array)
107
107
 
@@ -136,12 +136,12 @@ module KLog
136
136
  case value
137
137
  when OpenStruct
138
138
  if value['rows'].is_a?(Array)
139
- # L.subheading(key)
139
+ # KLog.logger.subheading(key)
140
140
  opts[:subheading] = key
141
141
  open_struct(value, indent, **opts)
142
142
  opts.delete(:subheading)
143
143
  else
144
- L.kv "#{indent}#{key}", ''
144
+ KLog.logger.kv "#{indent}#{key}", ''
145
145
  indent = "#{indent} "
146
146
  open_struct(value, indent, **opts)
147
147
  indent = indent.chomp(' ')
@@ -149,18 +149,17 @@ module KLog
149
149
  when Array
150
150
  next unless opts[:skip_array].nil?
151
151
 
152
- # puts LogHelper.subheading(key, 88)# unless opts[:subheading].nil?
153
- puts LogHelper.subheading(opts[:subheading], 88) unless opts[:subheading].nil?
152
+ puts LogHelper.section_heading(opts[:subheading], 88) unless opts[:subheading].nil?
154
153
 
155
154
  if value.length.positive?
156
155
  if value.first.is_a?(String)
157
- L.kv "#{indent}#{key}", value.join(', ')
156
+ KLog.logger.kv "#{indent}#{key}", value.join(', ')
158
157
  else
159
158
  tp value, value.first.to_h.keys
160
159
  end
161
160
  end
162
161
  else
163
- L.kv "#{indent}#{key}", value
162
+ KLog.logger.kv "#{indent}#{key}", value
164
163
  end
165
164
  end
166
165
  nil
@@ -234,6 +233,27 @@ module KLog
234
233
  end
235
234
  end
236
235
 
236
+ def visual_compare_hashes(hash1, hash2)
237
+ content1 = JSON.pretty_generate(hash1)
238
+ content2 = JSON.pretty_generate(hash2)
239
+
240
+ file1 = Tempfile.new('hash1')
241
+ file1.write(content1)
242
+ file1.close
243
+
244
+ file2 = Tempfile.new('hash2')
245
+ file2.write(content2)
246
+ file2.close
247
+
248
+ system "code --diff #{file1.path} #{file2.path}"
249
+
250
+ # Provide enough time for vscode to open and display the files before deleting them
251
+ sleep 1
252
+
253
+ file1.unlink
254
+ file2.unlink
255
+ end
256
+
237
257
  #----------------------------------------------------------------------------------------------------
238
258
  # Internal Methods
239
259
  #----------------------------------------------------------------------------------------------------
@@ -245,43 +265,43 @@ module KLog
245
265
  end
246
266
 
247
267
  def self.examples_simple
248
- L.debug 'some debug message'
249
- L.info 'some info message'
250
- L.warn 'some warning message'
251
- L.error 'some error message'
252
- L.fatal 'some fatal message'
253
-
254
- L.kv('First Name', 'David')
255
- L.kv('Last Name', 'Cruwys')
256
- L.kv('Age', 45)
257
- L.kv('Sex', 'male')
258
-
259
- L.heading('Heading')
260
- L.subheading('Sub Heading')
261
- L.section_heading('Section Heading')
268
+ KLog.logger.debug 'some debug message'
269
+ KLog.logger.info 'some info message'
270
+ KLog.logger.warn 'some warning message'
271
+ KLog.logger.error 'some error message'
272
+ KLog.logger.fatal 'some fatal message'
273
+
274
+ KLog.logger.kv('First Name', 'David')
275
+ KLog.logger.kv('Last Name', 'Cruwys')
276
+ KLog.logger.kv('Age', 45)
277
+ KLog.logger.kv('Sex', 'male')
278
+
279
+ KLog.logger.heading('Heading')
280
+ KLog.logger.subheading('Sub Heading')
281
+ KLog.logger.section_heading('Section Heading')
262
282
  end
263
283
 
264
284
  def self.examples_complex
265
- L.block ['Line 1', 12, 'Line 3', true, 'Line 5']
285
+ KLog.logger.block ['Line 1', 12, 'Line 3', true, 'Line 5']
266
286
 
267
- L.progress(0, 'Section 1')
268
- L.progress
269
- L.progress
270
- save_progress = L.progress
287
+ KLog.logger.progress(0, 'Section 1')
288
+ KLog.logger.progress
289
+ KLog.logger.progress
290
+ save_progress = KLog.logger.progress
271
291
 
272
- L.progress(10, 'Section 2')
273
- L.progress
274
- L.progress
275
- L.progress
292
+ KLog.logger.progress(10, 'Section 2')
293
+ KLog.logger.progress
294
+ KLog.logger.progress
295
+ KLog.logger.progress
276
296
 
277
- L.progress(save_progress, 'Section 1')
278
- L.progress
279
- L.progress
280
- L.progress
297
+ KLog.logger.progress(save_progress, 'Section 1')
298
+ KLog.logger.progress
299
+ KLog.logger.progress
300
+ KLog.logger.progress
281
301
 
282
- L.line
283
- L.line(20)
284
- L.line(20, character: '-')
302
+ KLog.logger.line
303
+ KLog.logger.line(20)
304
+ KLog.logger.line(20, character: '-')
285
305
 
286
306
  yaml1 = {}
287
307
  yaml1['title'] = 'Software Architect'
@@ -293,28 +313,28 @@ module KLog
293
313
  yaml3['age'] = 20
294
314
  yaml3['name'] = 'Jin'
295
315
 
296
- L.yaml(yaml1)
316
+ KLog.logger.yaml(yaml1)
297
317
 
298
318
  yaml2 = OpenStruct.new
299
319
  yaml2.title = 'Software Architect'
300
320
  yaml2.age = 45
301
321
  yaml2.name = 'David'
302
322
 
303
- L.yaml(yaml2)
323
+ KLog.logger.yaml(yaml2)
304
324
 
305
325
  mixed_yaml_array = [yaml1, yaml2]
306
326
 
307
327
  # This fails because we don't correctly pre-process the array
308
- L.yaml(mixed_yaml_array)
328
+ KLog.logger.yaml(mixed_yaml_array)
309
329
 
310
330
  hash_yaml_array = [yaml1, yaml3]
311
331
 
312
- L.yaml(hash_yaml_array)
332
+ KLog.logger.yaml(hash_yaml_array)
313
333
 
314
334
  begin
315
335
  raise 'Here is an error'
316
336
  rescue StandardError => e
317
- L.exception(e)
337
+ KLog.logger.exception(e)
318
338
  end
319
339
  end
320
340
  # rubocop:enable Metrics/AbcSize, Metrics/MethodLength
data/lib/k_log/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module KLog
4
- VERSION = '0.0.10'
4
+ VERSION = '0.0.15'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: k_log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-04-01 00:00:00.000000000 Z
11
+ date: 2021-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: table_print