debug_logging 0.1.0 → 1.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 +4 -4
- data/.byebug_history +4 -0
- data/README.md +49 -19
- data/debug_logging.gemspec +1 -0
- data/lib/debug_logging/argument_printer.rb +11 -12
- data/lib/debug_logging/class_logger.rb +6 -5
- data/lib/debug_logging/configuration.rb +32 -0
- data/lib/debug_logging/instance_logger.rb +1 -0
- data/lib/debug_logging/instance_logger_modulizer.rb +5 -4
- data/lib/debug_logging/version.rb +1 -1
- data/lib/debug_logging.rb +82 -61
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 74f20737ddaf59151ab3118f196f2d811cfe4687
|
4
|
+
data.tar.gz: 21a1c19d58110b20436788e74f94c2c5fdc62c10
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7ebb58f828a34bfa2be6c31228c977dd08e796070c2af386781efaf434d5453b7d333552908f47f8e3df5fe6a2a56148499f14d364c203cf1210309f54fa7378
|
7
|
+
data.tar.gz: ee69b5dab10dbb4a5a076bd62ee0d3540747201d41e7bbf22b5b71d11321c2db5dce2bbb44cbc2afb08bd2bb93a5928a24cfce9e4872d49942c327f1907b77a3
|
data/.byebug_history
ADDED
data/README.md
CHANGED
@@ -41,45 +41,75 @@ Crack open the specs for usage examples.
|
|
41
41
|
### Without Rails
|
42
42
|
|
43
43
|
It just works. ;)
|
44
|
-
Configuration can go anywhere you want.
|
44
|
+
Configuration can go anywhere you want. It will look like the Rails config though; see below.
|
45
45
|
|
46
46
|
### With Rails
|
47
47
|
|
48
48
|
Recommend creating `config/initializers/debug_logging.rb` with:
|
49
|
+
|
49
50
|
```ruby
|
50
51
|
# Showing the defaults
|
51
|
-
DebugLogging.logger = Logger.new(STDOUT) # you probably want to override to be the Rails.logger
|
52
|
-
DebugLogging.log_level = :debug # at what level do the messages created by this gem sent at?
|
53
|
-
DebugLogging.last_hash_to_s_proc = nil # e.g. ->(hash) { "#{hash.keys}" }
|
54
|
-
DebugLogging.last_hash_max_length = 1_000
|
55
|
-
DebugLogging.args_max_length = 1_000
|
56
|
-
DebugLogging.instance_benchmarks = false
|
57
|
-
DebugLogging.class_benchmarks = false
|
58
|
-
DebugLogging.add_invocation_id = true # invocation id allows you to identify a method call uniquely in a log
|
59
|
-
DebugLogging.ellipsis = " ✂️ …".freeze
|
52
|
+
DebugLogging.configuration.logger = Logger.new(STDOUT) # you probably want to override to be the Rails.logger
|
53
|
+
DebugLogging.configuration.log_level = :debug # at what level do the messages created by this gem sent at?
|
54
|
+
DebugLogging.configuration.last_hash_to_s_proc = nil # e.g. ->(hash) { "keys: #{hash.keys}" }
|
55
|
+
DebugLogging.configuration.last_hash_max_length = 1_000
|
56
|
+
DebugLogging.configuration.args_max_length = 1_000
|
57
|
+
DebugLogging.configuration.instance_benchmarks = false
|
58
|
+
DebugLogging.configuration.class_benchmarks = false
|
59
|
+
DebugLogging.configuration.add_invocation_id = true # invocation id allows you to identify a method call uniquely in a log
|
60
|
+
DebugLogging.configuration.ellipsis = " ✂️ …".freeze
|
61
|
+
```
|
62
|
+
|
63
|
+
If you prefer to use the block style:
|
64
|
+
|
65
|
+
```ruby
|
66
|
+
DebugLogging.configure do |config|
|
67
|
+
config.logger = Logger.new(STDOUT) # probably want to override to be the Rails.logger
|
68
|
+
config.log_level = :debug # at what level do the messages created by this gem sent at?
|
69
|
+
config.last_hash_to_s_proc = nil # e.g. ->(hash) { "keys: #{hash.keys}" }
|
70
|
+
config.last_hash_max_length = 1_000
|
71
|
+
config.args_max_length = 1_000
|
72
|
+
config.instance_benchmarks = false
|
73
|
+
config.class_benchmarks = false
|
74
|
+
config.add_invocation_id = true # invocation id allows you to identify a method call uniquely in a log
|
75
|
+
config.ellipsis = " ✂️ …".freeze
|
76
|
+
end
|
60
77
|
```
|
61
78
|
|
79
|
+
**All** of the above **config** is **inheritable** and **configurable** at the **per-class** level as well!
|
80
|
+
Just prepend `debug_` to any config value you want to override in a class.
|
81
|
+
|
82
|
+
Every time a method is called, get logs, optionally with arguments, a benchmarck, and a unique invocation identifier:
|
83
|
+
|
62
84
|
```ruby
|
63
85
|
class Car
|
64
86
|
|
87
|
+
# adds the helper methods to the class, all are prefixed with debug_*,
|
88
|
+
# except for the logged class method, which comes from extending DebugLogging::ClassLogger
|
89
|
+
extend DebugLogging
|
90
|
+
|
91
|
+
# per class configuration overrides!
|
92
|
+
self.debug_class_benchmarks = true
|
93
|
+
self.debug_instance_benchmarks = true
|
94
|
+
|
65
95
|
# For instance methods:
|
66
96
|
# Option 1: specify the exact method(s) to add logging to
|
67
97
|
include DebugLogging::InstanceLogger.new(i_methods: [:drive, :stop])
|
68
|
-
|
98
|
+
|
69
99
|
extend DebugLogging::ClassLogger
|
70
|
-
|
71
|
-
logged def
|
72
|
-
def
|
73
|
-
def
|
100
|
+
|
101
|
+
logged def debug_make; new; end
|
102
|
+
def design(*args); new; end
|
103
|
+
def safety(*args); new; end
|
74
104
|
logged :design, :safety
|
75
|
-
|
105
|
+
|
76
106
|
def drive(speed); speed; end
|
77
107
|
def stop; 0; end
|
78
|
-
|
108
|
+
|
79
109
|
# For instance methods:
|
80
110
|
# Option 2: add logging to all instance methods defined above (but *not* defined below)
|
81
|
-
include DebugLogging::InstanceLogger.new(i_methods:
|
82
|
-
|
111
|
+
include DebugLogging::InstanceLogger.new(i_methods: debug_instance_methods(false))
|
112
|
+
|
83
113
|
def will_not_be_logged; false; end
|
84
114
|
|
85
115
|
end
|
data/debug_logging.gemspec
CHANGED
@@ -21,6 +21,7 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
23
|
spec.add_development_dependency "rspec-pending_for"
|
24
|
+
spec.add_development_dependency "byebug", "~> 9.0"
|
24
25
|
spec.add_development_dependency "bundler", "~> 1.14"
|
25
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
26
27
|
spec.add_development_dependency "rspec", "~> 3.0"
|
@@ -1,28 +1,27 @@
|
|
1
1
|
module DebugLogging
|
2
2
|
module ArgumentPrinter
|
3
|
-
def
|
4
|
-
|
5
|
-
if DebugLogging.last_hash_to_s_proc && args[-1].is_a?(Hash)
|
3
|
+
def debug_arguments_to_s(args)
|
4
|
+
if debug_last_hash_to_s_proc && args[-1].is_a?(Hash)
|
6
5
|
if args.length > 1
|
7
6
|
add_args_ellipsis = false
|
8
7
|
add_last_hash_ellipsis = false
|
9
|
-
printed_args = args[0..(-2)].map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length >
|
10
|
-
printed_args <<
|
11
|
-
printed_args << ", " <<
|
12
|
-
printed_args <<
|
8
|
+
printed_args = args[0..(-2)].map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length > debug_args_max_length}[0..(debug_args_max_length)]
|
9
|
+
printed_args << debug_ellipsis if add_args_ellipsis
|
10
|
+
printed_args << ", " << debug_last_hash_to_s_proc.call(args[-1]).tap {|x| add_last_hash_ellipsis = x.length > debug_last_hash_max_length}[0..(debug_last_hash_max_length)]
|
11
|
+
printed_args << debug_ellipsis if add_last_hash_ellipsis
|
13
12
|
else
|
14
|
-
printed_args =
|
15
|
-
printed_args <<
|
13
|
+
printed_args = debug_last_hash_to_s_proc.call(args[0]).tap {|x| add_last_hash_ellipsis = x.length > debug_last_hash_max_length}[0..(debug_last_hash_max_length)]
|
14
|
+
printed_args << debug_ellipsis if add_last_hash_ellipsis
|
16
15
|
end
|
17
16
|
else
|
18
17
|
add_args_ellipsis = false
|
19
18
|
if args.length == 1 && args[0].is_a?(Hash)
|
20
19
|
# handle double splat
|
21
|
-
printed_args = ("**" << args.map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length >
|
20
|
+
printed_args = ("**" << args.map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length > debug_args_max_length})[0..(debug_args_max_length)]
|
22
21
|
else
|
23
|
-
printed_args = args.map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length >
|
22
|
+
printed_args = args.map {|x| x.inspect}.join(", ").tap {|x| add_args_ellipsis = x.length > debug_args_max_length}[0..(debug_args_max_length)]
|
24
23
|
end
|
25
|
-
printed_args <<
|
24
|
+
printed_args << debug_ellipsis if add_args_ellipsis
|
26
25
|
end
|
27
26
|
"(#{printed_args})"
|
28
27
|
end
|
@@ -2,18 +2,19 @@ module DebugLogging
|
|
2
2
|
module ClassLogger
|
3
3
|
def logged(*methods_to_log)
|
4
4
|
methods_to_log.each do |method_to_log|
|
5
|
-
# method name
|
5
|
+
# method name must be a symbol
|
6
|
+
method_to_log = method_to_log.to_sym
|
6
7
|
original_method = method(method_to_log)
|
7
8
|
(class << self; self; end).class_eval do
|
8
9
|
define_method(method_to_log) do |*args|
|
9
10
|
method_return_value = nil
|
10
|
-
invocation_id = " ~#{args.object_id}@#{Time.now.to_i}~" if
|
11
|
-
|
12
|
-
if
|
11
|
+
invocation_id = " ~#{args.object_id}@#{Time.now.to_i}~" if debug_add_invocation_id
|
12
|
+
debug_log "#{self}.#{method_to_log}#{debug_arguments_to_s(args)}#{invocation_id}"
|
13
|
+
if debug_class_benchmarks
|
13
14
|
elapsed = Benchmark.realtime do
|
14
15
|
method_return_value = original_method.call(*args)
|
15
16
|
end
|
16
|
-
|
17
|
+
debug_log "#{self}.#{method_to_log} completed in #{sprintf("%f", elapsed)}s#{invocation_id}"
|
17
18
|
else
|
18
19
|
method_return_value = original_method.call(*args)
|
19
20
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module DebugLogging
|
2
|
+
class Configuration
|
3
|
+
attr_accessor :logger
|
4
|
+
attr_accessor :log_level
|
5
|
+
attr_accessor :last_hash_to_s_proc
|
6
|
+
attr_accessor :last_hash_max_length
|
7
|
+
attr_accessor :args_max_length
|
8
|
+
attr_accessor :instance_benchmarks
|
9
|
+
attr_accessor :class_benchmarks
|
10
|
+
attr_accessor :add_invocation_id
|
11
|
+
attr_accessor :ellipsis
|
12
|
+
def initialize
|
13
|
+
@logger = Logger.new(STDOUT)
|
14
|
+
@log_level = :debug
|
15
|
+
@last_hash_to_s_proc = nil
|
16
|
+
@last_hash_max_length = 1_000
|
17
|
+
@args_max_length = 1_000
|
18
|
+
@instance_benchmarks = false
|
19
|
+
@class_benchmarks = false
|
20
|
+
@add_invocation_id = true
|
21
|
+
@ellipsis = " ✂️ …".freeze
|
22
|
+
end
|
23
|
+
def instance_benchmarks=(instance_benchmarks)
|
24
|
+
require "benchmark" if instance_benchmarks
|
25
|
+
@instance_benchmarks = instance_benchmarks
|
26
|
+
end
|
27
|
+
def class_benchmarks=(class_benchmarks)
|
28
|
+
require "benchmark" if class_benchmarks
|
29
|
+
@class_benchmarks = class_benchmarks
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -3,15 +3,16 @@ module DebugLogging
|
|
3
3
|
def self.to_mod(methods_to_log = [])
|
4
4
|
Module.new do
|
5
5
|
Array(methods_to_log).each do |method_to_log|
|
6
|
+
# method name must be a symbol
|
6
7
|
define_method(method_to_log.to_sym) do |*args, &block|
|
7
8
|
method_return_value = nil
|
8
|
-
invocation_id = " ~#{args.object_id}@#{Time.now.to_i}~" if
|
9
|
-
|
10
|
-
if
|
9
|
+
invocation_id = " ~#{args.object_id}@#{Time.now.to_i}~" if self.class.debug_add_invocation_id && args
|
10
|
+
self.class.debug_log "#{self.class}##{method_to_log}#{self.class.debug_arguments_to_s(args)}#{invocation_id}"
|
11
|
+
if self.class.debug_instance_benchmarks
|
11
12
|
elapsed = Benchmark.realtime do
|
12
13
|
method_return_value = super(*args, &block)
|
13
14
|
end
|
14
|
-
|
15
|
+
self.class.debug_log "#{self.class}##{method_to_log} completed in #{sprintf("%f", elapsed)}s#{invocation_id}"
|
15
16
|
else
|
16
17
|
method_return_value = super(*args, &block)
|
17
18
|
end
|
data/lib/debug_logging.rb
CHANGED
@@ -1,16 +1,11 @@
|
|
1
1
|
require "logger"
|
2
2
|
require "debug_logging/version"
|
3
|
+
require "debug_logging/configuration"
|
3
4
|
require "debug_logging/argument_printer"
|
4
5
|
require "debug_logging/instance_logger_modulizer"
|
5
6
|
require "debug_logging/instance_logger"
|
6
7
|
require "debug_logging/class_logger"
|
7
8
|
|
8
|
-
####################
|
9
|
-
# #
|
10
|
-
# Next Level Magic #
|
11
|
-
# Classes inheriting from Module.
|
12
|
-
# Cats and dogs sleeping together.
|
13
|
-
# #
|
14
9
|
####################
|
15
10
|
# #
|
16
11
|
# NOTE: The manner this is made to work for class methods is totally different
|
@@ -24,15 +19,23 @@ require "debug_logging/class_logger"
|
|
24
19
|
# #
|
25
20
|
# class Car
|
26
21
|
#
|
22
|
+
# # adds the helper methods to the class, all are prefixed with debug_*,
|
23
|
+
# # except for the logged class method, which comes from extending DebugLogging::ClassLogger
|
24
|
+
# extend DebugLogging
|
25
|
+
#
|
26
|
+
# # per class configuration overrides!
|
27
|
+
# self.debug_class_benchmarks = true
|
28
|
+
# self.debug_instance_benchmarks = true
|
29
|
+
#
|
27
30
|
# # For instance methods:
|
28
31
|
# # Option 1: specify the exact method(s) to add logging to
|
29
32
|
# include DebugLogging::InstanceLogger.new(i_methods: [:drive, :stop])
|
30
33
|
#
|
31
34
|
# extend DebugLogging::ClassLogger
|
32
35
|
#
|
33
|
-
# logged def
|
34
|
-
# def
|
35
|
-
# def
|
36
|
+
# logged def debug_make; new; end
|
37
|
+
# def design(*args); new; end
|
38
|
+
# def safety(*args); new; end
|
36
39
|
# logged :design, :safety
|
37
40
|
#
|
38
41
|
# def drive(speed); speed; end
|
@@ -40,7 +43,7 @@ require "debug_logging/class_logger"
|
|
40
43
|
#
|
41
44
|
# # For instance methods:
|
42
45
|
# # Option 2: add logging to all instance methods defined above (but *not* defined below)
|
43
|
-
# include DebugLogging::InstanceLogger.new(i_methods:
|
46
|
+
# include DebugLogging::InstanceLogger.new(i_methods: debug_instance_methods(false))
|
44
47
|
#
|
45
48
|
# def will_not_be_logged; false; end
|
46
49
|
#
|
@@ -49,75 +52,93 @@ require "debug_logging/class_logger"
|
|
49
52
|
####################
|
50
53
|
|
51
54
|
module DebugLogging
|
52
|
-
def self.
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
55
|
+
def self.extended(base)
|
56
|
+
base.send(:extend, ArgumentPrinter)
|
57
|
+
base.debug_config_reset(debug_logging_configuration.dup)
|
58
|
+
end
|
59
|
+
|
60
|
+
#### API ####
|
61
|
+
def debug_log(message)
|
62
|
+
debug_logger.send(debug_log_level, message)
|
63
|
+
end
|
64
|
+
|
65
|
+
# For single statement global config in an initializer
|
66
|
+
# e.g. DebugLogging.configuration.ellipsis = "..."
|
67
|
+
def self.configuration
|
68
|
+
self.debug_logging_configuration ||= Configuration.new
|
69
|
+
end
|
70
|
+
|
71
|
+
# For global config in an initializer with a block
|
72
|
+
def self.configure
|
73
|
+
yield(configuration)
|
74
|
+
end
|
75
|
+
|
76
|
+
# For per-class config with a block
|
77
|
+
def debug_logging_configure
|
78
|
+
@debug_logging_configuration ||= Configuration.new
|
79
|
+
yield(@debug_logging_configuration)
|
80
|
+
end
|
81
|
+
|
82
|
+
#### CONFIG ####
|
83
|
+
class << self
|
84
|
+
attr_accessor :debug_logging_configuration
|
62
85
|
end
|
63
|
-
def
|
64
|
-
|
86
|
+
def debug_config_reset(config = Configuration.new)
|
87
|
+
@debug_logging_configuration = config
|
65
88
|
end
|
66
|
-
def
|
67
|
-
|
89
|
+
def debug_logger
|
90
|
+
@debug_logging_configuration.logger
|
68
91
|
end
|
69
|
-
def
|
70
|
-
|
92
|
+
def debug_logger=(logger)
|
93
|
+
@debug_logging_configuration.logger = logger
|
71
94
|
end
|
72
|
-
def
|
73
|
-
|
95
|
+
def debug_log_level
|
96
|
+
@debug_logging_configuration.log_level
|
74
97
|
end
|
75
|
-
def
|
76
|
-
|
98
|
+
def debug_log_level=(log_level)
|
99
|
+
@debug_logging_configuration.log_level = log_level
|
77
100
|
end
|
78
|
-
def
|
79
|
-
|
101
|
+
def debug_last_hash_to_s_proc
|
102
|
+
@debug_logging_configuration.last_hash_to_s_proc
|
80
103
|
end
|
81
|
-
def
|
82
|
-
|
104
|
+
def debug_last_hash_to_s_proc=(last_hash_to_s_proc)
|
105
|
+
@debug_logging_configuration.last_hash_to_s_proc = last_hash_to_s_proc
|
83
106
|
end
|
84
|
-
def
|
85
|
-
|
107
|
+
def debug_last_hash_max_length
|
108
|
+
@debug_logging_configuration.last_hash_max_length
|
86
109
|
end
|
87
|
-
def
|
88
|
-
|
110
|
+
def debug_last_hash_max_length=(last_hash_max_length)
|
111
|
+
@debug_logging_configuration.last_hash_max_length = last_hash_max_length
|
89
112
|
end
|
90
|
-
def
|
91
|
-
|
113
|
+
def debug_args_max_length
|
114
|
+
@debug_logging_configuration.args_max_length
|
92
115
|
end
|
93
|
-
def
|
94
|
-
|
116
|
+
def debug_args_max_length=(args_max_length)
|
117
|
+
@debug_logging_configuration.args_max_length = args_max_length
|
95
118
|
end
|
96
|
-
def
|
97
|
-
|
98
|
-
@@instance_benchmarks = instance_benchmarks
|
119
|
+
def debug_instance_benchmarks
|
120
|
+
@debug_logging_configuration.instance_benchmarks
|
99
121
|
end
|
100
|
-
def
|
101
|
-
|
122
|
+
def debug_instance_benchmarks=(instance_benchmarks)
|
123
|
+
@debug_logging_configuration.instance_benchmarks = instance_benchmarks
|
102
124
|
end
|
103
|
-
def
|
104
|
-
|
105
|
-
@@class_benchmarks = class_benchmarks
|
125
|
+
def debug_class_benchmarks
|
126
|
+
@debug_logging_configuration.class_benchmarks
|
106
127
|
end
|
107
|
-
def
|
108
|
-
|
128
|
+
def debug_class_benchmarks=(class_benchmarks)
|
129
|
+
@debug_logging_configuration.class_benchmarks = class_benchmarks
|
109
130
|
end
|
110
|
-
def
|
111
|
-
|
131
|
+
def debug_add_invocation_id
|
132
|
+
@debug_logging_configuration.add_invocation_id
|
112
133
|
end
|
113
|
-
def
|
114
|
-
|
134
|
+
def debug_add_invocation_id=(add_invocation_id)
|
135
|
+
@debug_logging_configuration.add_invocation_id = add_invocation_id
|
115
136
|
end
|
116
|
-
def
|
117
|
-
|
137
|
+
def debug_ellipsis
|
138
|
+
@debug_logging_configuration.ellipsis
|
118
139
|
end
|
119
|
-
def
|
120
|
-
|
140
|
+
def debug_ellipsis=(ellipsis)
|
141
|
+
@debug_logging_configuration.ellipsis = ellipsis
|
121
142
|
end
|
122
|
-
|
143
|
+
self.debug_logging_configuration = Configuration.new # setup defaults
|
123
144
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: debug_logging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Boling
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec-pending_for
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: byebug
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '9.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '9.0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: bundler
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -73,6 +87,7 @@ executables: []
|
|
73
87
|
extensions: []
|
74
88
|
extra_rdoc_files: []
|
75
89
|
files:
|
90
|
+
- ".byebug_history"
|
76
91
|
- ".gitignore"
|
77
92
|
- ".rspec"
|
78
93
|
- ".travis.yml"
|
@@ -85,6 +100,7 @@ files:
|
|
85
100
|
- lib/debug_logging.rb
|
86
101
|
- lib/debug_logging/argument_printer.rb
|
87
102
|
- lib/debug_logging/class_logger.rb
|
103
|
+
- lib/debug_logging/configuration.rb
|
88
104
|
- lib/debug_logging/instance_logger.rb
|
89
105
|
- lib/debug_logging/instance_logger_modulizer.rb
|
90
106
|
- lib/debug_logging/version.rb
|