yell 0.4.3 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -22,9 +22,8 @@ gem "yell"
22
22
 
23
23
  ## Usage
24
24
 
25
- On the basics, Yell works just like any other logging library. However, it
26
- tries to make your log mesages more readable. By default, it will format the given
27
- message as follows:
25
+ On the basics, you can use Yell just like any other logging library with a more
26
+ sophisticated message formatter.
28
27
 
29
28
  ```ruby
30
29
  logger = Yell.new STDOUT
@@ -35,56 +34,10 @@ logger.info "Hello World"
35
34
  # ISO8601 Timestamp Level Pid Message
36
35
  ```
37
36
 
38
- When no arguments are given, Yell will check for `ENV['RACK_ENV']` and
39
- determine the filename from that.
40
-
41
- Alternatively, you may define `ENV['YELL_ENV']` to set the filename. If neither
42
- `YELL_ENV` or `RACK_ENV` is defined, *'development'* will be the default. Also, if a
43
- `log` directory exists, Yell will place the file there (only if you have not passed
44
- a filename explicitly.
45
-
46
- Naturally, you can pass a `:filename` to Yell:
47
-
48
- ```ruby
49
- logger = Yell.new "yell.log"
50
- ```
51
-
52
- ### Levels
53
-
54
- Just like any other logging library, Yell allows you to define from which level
55
- onwarns you want to write your log message. here are some examples to show how
56
- you can combine those.
57
-
58
- ##### Example: Write from `:info` onwards
59
-
60
- ```ruby
61
- logger = Yell.new STDOUT, :level => :info # write on :info, :warn, :error, :fatal
62
- ```
63
-
64
- ##### Example: Write on `:info` and `:error` only
65
-
66
- ```ruby
67
- logger - Yell.new STDOUT, :level => [:info, :error] # write on :info and :error only
68
- ```
69
-
70
- ##### Example: Write between :info and :error
71
-
72
- ```ruby
73
- logger = Yell.new STDOUT, :level => (:info..:error)
74
-
75
- # NOTE: The Range might only work with 1.9 compatible rubies!
76
- ```
77
-
78
- There are more ways to set your logging level, please consult the
79
- [wiki](https://github.com/rudionrails/yell/wiki) on that.
80
-
81
-
82
- ### Adapters
83
-
84
- Yell comes with various adapters already build-in. Those are the mainly IO-based
85
- adapters for every day use. There are additional ones available as separate gems. Please
86
- consult the [wiki](https://github.com/rudionrails/yell/wiki) on that - they are listed
87
- there.
37
+ The strength of Yell, however, comes when using multiple adapters. The already built-in
38
+ ones are IO-based and require no further configuration. Also, there are additional ones
39
+ available as separate gems. Please consult the [wiki](https://github.com/rudionrails/yell/wiki)
40
+ on that - they are listed there.
88
41
 
89
42
  The standard adapters are:
90
43
 
@@ -99,33 +52,28 @@ Here are some short examples on how to combine them:
99
52
  ##### Example: Notice messages go into `STDOUT` and error messages into `STDERR`
100
53
 
101
54
  ```ruby
102
- logger = Yell.new do
103
- adapter STDOUT, :level => [:debug, :info, :warn]
104
- adapter STDERR, :level => [:error, :fatal]
55
+ logger = Yell.new do |l|
56
+ l.adapter STDOUT, :level => [:debug, :info, :warn]
57
+ l.adapter STDERR, :level => [:error, :fatal]
105
58
  end
106
59
  ```
107
60
 
108
- ##### Example: Notice messages to into `application.log` and error messages into `error.log`
61
+ ##### Example: Typical production Logger
109
62
 
110
- ```ruby
111
- logger = Yell.new do
112
- adapter :file, 'application.log', :level => [:debug, :info, :warn]
113
- adapter :file, 'error.log', :level => [:error, :fatal]
114
- end
115
- ```
116
-
117
- ##### Example: Every log severity is handled by a separate adapter and we ignore `:debug` and `:info` levels
63
+ We setup a logger that starts passing messages at the `:info` level. Severities
64
+ below `:error` go into the 'production.log', whereas anything higher is written
65
+ into the 'error.log'.
118
66
 
119
67
  ```ruby
120
- logger = Yell.new do
121
- level :warn # only start logging from :warn upwards
68
+ logger = Yell.new do |l|
69
+ l.level = :info # will only pass :info and above to the adapters
122
70
 
123
- adapter :stdout, :level => [:warn]
124
- adapter :datefile, 'error.log', :level => [:error]
125
- adapter :datefile, 'fatal.log', :level => [:fatal]
71
+ l.adapter :datefile, 'production.log', :level => Yell.level.lte(:warn)
72
+ l.adapter :datefile, 'error.log', :level => Yell.level.gte(:error)
126
73
  end
127
74
  ```
128
75
 
76
+
129
77
  ## Further Readings
130
78
 
131
79
  [How To: Setting The Log Level](https://github.com/rudionrails/yell/wiki/101-setting-the-log-level)
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require File.dirname(__FILE__) + '/../lib/yell'
3
+ require_relative '../lib/yell'
4
4
 
5
5
  puts <<-EOS
6
6
 
data/lib/yell.rb CHANGED
@@ -24,17 +24,11 @@
24
24
  require 'time'
25
25
  require 'socket'
26
26
 
27
- begin
28
- require 'yell/event'
29
- rescue LoadError
30
- $: << File.dirname(__FILE__)
31
- require 'yell/event'
32
- end
33
-
34
- require 'yell/level'
35
- require 'yell/formatter'
36
- require 'yell/adapters'
37
- require 'yell/logger'
27
+ require File.dirname(__FILE__) + '/yell/event'
28
+ require File.dirname(__FILE__) + '/yell/level'
29
+ require File.dirname(__FILE__) + '/yell/formatter'
30
+ require File.dirname(__FILE__) + '/yell/adapters'
31
+ require File.dirname(__FILE__) + '/yell/logger'
38
32
 
39
33
  module Yell #:nodoc:
40
34
  Severities = [ 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL', 'UNKNOWN' ]
@@ -49,18 +43,32 @@ module Yell #:nodoc:
49
43
  Yell::Logger.new( *args, &block )
50
44
  end
51
45
 
46
+ # Shortcut to Yell::Level.new
47
+ #
48
+ # @return [Yell::Level] A Yell::Level instance
52
49
  def level( val = nil )
53
50
  Yell::Level.new( val )
54
51
  end
55
52
 
53
+ # Shortcut to Yell::Fomatter.new
54
+ #
55
+ # @return [Yell::Formatter] A Yell::Formatter instance
56
56
  def format( pattern, date_pattern = nil )
57
57
  Yell::Formatter.new( pattern, date_pattern )
58
58
  end
59
59
 
60
-
61
60
  def env #:nodoc:
62
61
  ENV['YELL_ENV'] || ENV['RACK_ENV'] || 'development'
63
62
  end
63
+
64
+ def _deprecate( version, message, options = {} )
65
+ warning = ["Deprecation Warning (since v#{version}): #{message}" ]
66
+ warning << " before: #{options[:before]}" if options[:before]
67
+ warning << " after: #{options[:after]}" if options[:after]
68
+
69
+ $stderr.puts warning.join( "\n" )
70
+ end
71
+
64
72
  end
65
73
 
66
74
  end
data/lib/yell/adapters.rb CHANGED
@@ -46,11 +46,11 @@ module Yell #:nodoc:
46
46
  end
47
47
 
48
48
  # Base for all adapters
49
- require 'yell/adapters/base'
49
+ require File.dirname(__FILE__) + '/adapters/base'
50
50
 
51
51
  # IO based adapters
52
- require 'yell/adapters/io'
53
- require 'yell/adapters/streams'
54
- require 'yell/adapters/file'
55
- require 'yell/adapters/datefile'
52
+ require File.dirname(__FILE__) + '/adapters/io'
53
+ require File.dirname(__FILE__) + '/adapters/streams'
54
+ require File.dirname(__FILE__) + '/adapters/file'
55
+ require File.dirname(__FILE__) + '/adapters/datefile'
56
56
 
@@ -10,15 +10,18 @@ module Yell #:nodoc:
10
10
  # by the {Yell::Logger}.
11
11
  class Base
12
12
 
13
+ # Accessor to the level
14
+ attr_reader :level
15
+
13
16
  # Accessor to the options
14
17
  attr_reader :options
15
18
 
16
19
  def initialize( options = {}, &block )
17
20
  @options = options
18
21
 
19
- level options[:level]
22
+ self.level = options[:level]
20
23
 
21
- instance_eval( &block ) if block
24
+ block.call(self) if block
22
25
  end
23
26
 
24
27
  # The main method for calling the adapter.
@@ -43,7 +46,7 @@ module Yell #:nodoc:
43
46
  # level :info
44
47
  #
45
48
  # For more examples, refer to {Yell::Level}.
46
- def level( severity = nil )
49
+ def level=( severity )
47
50
  @level = Yell::Level.new( severity )
48
51
  end
49
52
 
@@ -16,12 +16,15 @@ module Yell #:nodoc:
16
16
  'DEFAULT' => "\e[0m" # NONE
17
17
  }
18
18
 
19
+ # Accessor to the formatter
20
+ attr_reader :format
19
21
 
20
22
  def initialize( options = {}, &block )
21
- format options[:format]
22
23
  colorize options.fetch(:colorize, false)
23
24
 
24
- super
25
+ self.format = options[:format]
26
+
27
+ super( options, &block )
25
28
  end
26
29
 
27
30
  # The IO stream
@@ -40,11 +43,11 @@ module Yell #:nodoc:
40
43
  end
41
44
 
42
45
  # Set the format for your message.
43
- def format( pattern, date_pattern = nil )
44
- @formatter = case pattern
46
+ def format=( pattern )
47
+ @format = case pattern
45
48
  when Yell::Formatter then pattern
46
49
  when false then Yell::Formatter.new( "%m" )
47
- else Yell::Formatter.new( pattern, date_pattern )
50
+ else Yell::Formatter.new( *pattern )
48
51
  end
49
52
  end
50
53
 
@@ -52,6 +55,7 @@ module Yell #:nodoc:
52
55
  def colorize( color = true )
53
56
  @colorize = color
54
57
  end
58
+ alias :colorize! :colorize
55
59
 
56
60
 
57
61
  private
data/lib/yell/level.rb CHANGED
@@ -63,6 +63,12 @@ module Yell #:nodoc:
63
63
  index.nil? ? false : @severities[index]
64
64
  end
65
65
 
66
+ # to_i implements backwards compatibility
67
+ def to_i
68
+ @severities.each_with_index { |s,i| return i if s == true }
69
+ end
70
+ alias :to_int :to_i
71
+
66
72
  def at( *severities ) #:nodoc:
67
73
  severities.each { |severity| calculate! :==, severity }
68
74
  self
data/lib/yell/logger.rb CHANGED
@@ -18,37 +18,41 @@ module Yell #:nodoc:
18
18
  # @example Setting the log level
19
19
  # Yell::Logger.new :level => :warn
20
20
  #
21
- # Yell::Logger.new do
22
- # level :warn
21
+ # Yell::Logger.new do |l|
22
+ # l.level = :warn
23
23
  # end
24
24
  #
25
25
  # @example Combined settings
26
26
  # Yell::Logger.new 'development.log', :level => :warn
27
27
  #
28
- # Yell::Logger.new :datefile, 'development.log' do
29
- # level :info
28
+ # Yell::Logger.new :datefile, 'development.log' do |l|
29
+ # l.level = :info
30
30
  # end
31
31
  class Logger
32
32
 
33
+ # Accessor to the log level
34
+ attr_reader :level
35
+
33
36
  def initialize( *args, &block )
34
37
  @adapters = []
35
38
 
36
39
  # extract options
37
40
  @options = args.last.is_a?(Hash) ? args.pop : {}
38
41
 
39
- # set the log level when given
40
- level @options[:level]
41
-
42
42
  # check if filename was given as argument and put it into the @options
43
43
  if args.last.is_a?( String )
44
44
  @options[:filename] = args.pop unless @options[:filename]
45
45
  end
46
46
 
47
+ # set the log level when given
48
+ self.level = @options[:level]
49
+
47
50
  # extract adapter
48
- adapter args.pop if args.any?
51
+ self.adapter args.pop if args.any?
49
52
 
50
53
  # eval the given block
51
- instance_eval( &block ) if block
54
+ # block.call(self) if block
55
+ _call( &block ) if block
52
56
 
53
57
  define!
54
58
  end
@@ -86,23 +90,52 @@ module Yell #:nodoc:
86
90
  # Set the minimum log level.
87
91
  #
88
92
  # @example Set the level to :warn
89
- # level :warn
93
+ # level = :warn
90
94
  #
91
95
  # @param [String, Symbol, Integer] val The minimum log level
96
+ def level=( severity )
97
+ @level = Yell::Level.new( severity )
98
+ end
99
+
100
+ # Deprecated: Use attr_reader in future
92
101
  def level( val = nil )
93
- @level = Yell::Level.new( val )
102
+ if val.nil?
103
+ @level
104
+ else
105
+ # deprecated, but should still work
106
+ Yell._deprecate( "0.5.0", "Use :level= for setting the log level",
107
+ :before => "Yell::Logger.new { level :info }",
108
+ :after => "Yell::Logger.new { |l| l.level = :info }"
109
+ )
110
+
111
+ @level = Yell::Level.new( val )
112
+ end
94
113
  end
95
114
 
96
115
  # Convenience method for resetting all adapters of the Logger.
97
116
  #
98
117
  # @param [Boolean] now Perform the reset immediately (default false)
99
- def close( now = false )
118
+ def close
100
119
  @adapters.each(&:close)
101
120
  end
102
121
 
103
122
 
104
123
  private
105
124
 
125
+ def _call( &block )
126
+ if block.arity == 0
127
+ Yell._deprecate( "0.5.0", "Yell::Logger.new with block expects argument now",
128
+ :before => "Yell::Logger.new { adapter STDOUT }",
129
+ :after => "Yell::Logger.new { |l| l.adapter STDOUT }"
130
+ )
131
+
132
+ # deprecated, but should still work
133
+ instance_eval( &block )
134
+ else
135
+ block.call(self)
136
+ end
137
+ end
138
+
106
139
  # Sets a default adapter if none was given explicitly and defines the log methods on
107
140
  # the logger instance.
108
141
  def define!
@@ -114,11 +147,11 @@ module Yell #:nodoc:
114
147
  # Creates instance methods for every defined log level (debug, info, ...) depending
115
148
  # on whether anything should be logged upon, for instance, #info.
116
149
  def define_log_methods!
117
- Yell::Severities.each do |s|
150
+ Yell::Severities.each_with_index do |s, index|
118
151
  name = s.downcase
119
152
 
120
153
  instance_eval %-
121
- def #{name}?; #{@level.at?(name)}; end # def info?; true; end
154
+ def #{name}?; @level.at?(#{index}); end # def info?; @level.at?(1); end
122
155
  #
123
156
  def #{name}( m = nil, &b ) # def info( m = nil, &b )
124
157
  return unless #{name}? # return unless info?
data/lib/yell/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  module Yell #:nodoc:
4
- VERSION = "0.4.3"
4
+ VERSION = "0.5.0"
5
5
 
6
6
  end
7
7
 
@@ -5,7 +5,7 @@ describe Yell::Adapters::Base do
5
5
  context "initialize with :level" do
6
6
  before do
7
7
  any_instance_of( Yell::Adapters::Base ) do |base|
8
- mock( base ).level( :info )
8
+ mock( base ).level= :info
9
9
  end
10
10
  end
11
11
 
@@ -18,7 +18,7 @@ describe Yell::Adapters::Base do
18
18
  context :level do
19
19
  before do
20
20
  any_instance_of( Yell::Adapters::Base ) do |base|
21
- mock( base ).level( :info )
21
+ mock( base ).level= :info
22
22
  end
23
23
  end
24
24
 
@@ -0,0 +1,50 @@
1
+ require 'spec_helper'
2
+
3
+ describe Yell::Adapters do
4
+
5
+ context :new do
6
+ context "given a Yell::Adapters::Base ancestor" do
7
+ let( :stdout ) { Yell::Adapters::Stdout.new }
8
+
9
+ it "should return the instance" do
10
+ Yell::Adapters.new( stdout ).should == stdout
11
+ end
12
+ end
13
+
14
+ context "given STDOUT" do
15
+ it "should initialize Stdout adapter" do
16
+ mock.proxy( Yell::Adapters::Stdout ).new( anything )
17
+
18
+ Yell::Adapters.new STDOUT
19
+ end
20
+ end
21
+
22
+ context "given STDERR" do
23
+ it "should initialize Stderr adapter" do
24
+ mock.proxy( Yell::Adapters::Stderr ).new( anything )
25
+
26
+ Yell::Adapters.new STDERR
27
+ end
28
+ end
29
+
30
+ context "given an unregistered adapter" do
31
+ it "should raise NoSuchAdapter" do
32
+ lambda { Yell::Adapters.new :unknown }.should raise_error Yell::NoSuchAdapter
33
+ end
34
+ end
35
+ end
36
+
37
+ context :register do
38
+ let( :name ) { :test }
39
+ let( :klass ) { mock }
40
+
41
+ before { Yell::Adapters.register( name, klass ) }
42
+
43
+ it "should allow to being called from :new" do
44
+ mock( klass ).new( anything )
45
+
46
+ Yell::Adapters.new(name)
47
+ end
48
+ end
49
+
50
+ end
@@ -95,4 +95,17 @@ describe Yell::Level do
95
95
  it { level.at?(:error).should be_true }
96
96
  it { level.at?(:fatal).should be_true }
97
97
  end
98
+
99
+ context "backwards compatibility" do
100
+ let( :level ) { Yell::Level.new :warn }
101
+
102
+ it { level.to_i.should == 2 }
103
+ it { Integer(level).should == 2 }
104
+
105
+ it "should be compatible when passing to array (https://github.com/rudionrails/yell/issues/1)" do
106
+ severities = %w(FINE INFO WARNING SEVERE SEVERE INFO)
107
+
108
+ severities[level].should == "WARNING"
109
+ end
110
+ end
98
111
  end
@@ -37,9 +37,9 @@ describe Yell::Logger do
37
37
 
38
38
  context "a Logger instance with a given :filename" do
39
39
  it "should call adapter with :file" do
40
- mock.proxy( Yell::Adapters::File ).new( anything )
40
+ mock.proxy( Yell::Adapters::File ).new( :filename => 'test.log' )
41
41
 
42
- Yell::Logger.new
42
+ Yell::Logger.new 'test.log'
43
43
  end
44
44
  end
45
45
 
@@ -71,5 +71,28 @@ describe Yell::Logger do
71
71
  end
72
72
  end
73
73
 
74
+ context "a Logger instance with a given block" do
75
+ let( :level ) { Yell::Level.new :error }
76
+ let( :adapter ) { Yell::Adapters::Stdout.new }
77
+
78
+ let( :logger ) do
79
+ Yell::Logger.new do |l|
80
+ l.level = level
81
+ l.adapter adapter
82
+ end
83
+ end
84
+
85
+ it "should set the level" do
86
+ logger.level.severities.should == level.severities
87
+ end
88
+
89
+ it "should define adapter" do
90
+ adapters = logger.instance_variable_get :@adapters
91
+
92
+ adapters.size.should == 1
93
+ adapters.first.should == adapter
94
+ end
95
+ end
96
+
74
97
  end
75
98
 
data/yell.gemspec CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Rudolf Schmidt"]
10
10
 
11
- s.homepage = "http://rubygems.org/gems/yell"
11
+ s.homepage = "http://rudionrails.github.com/yell"
12
12
  s.summary = %q{Yell - Your Extensible Logging Library }
13
13
  s.description = %q{Yell - Your Extensible Logging Library. Define multiple adapters, various log level combinations or message formatting options like you've never done before}
14
14
 
@@ -19,5 +19,6 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
 
22
+ s.add_development_dependency "rspec"
22
23
  s.add_development_dependency "rr"
23
24
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.5.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-31 00:00:00.000000000 Z
12
+ date: 2012-04-03 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: &70281944125180 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70281944125180
14
25
  - !ruby/object:Gem::Dependency
15
26
  name: rr
16
- requirement: &70326139575900 !ruby/object:Gem::Requirement
27
+ requirement: &70281944124740 !ruby/object:Gem::Requirement
17
28
  none: false
18
29
  requirements:
19
30
  - - ! '>='
@@ -21,7 +32,7 @@ dependencies:
21
32
  version: '0'
22
33
  type: :development
23
34
  prerelease: false
24
- version_requirements: *70326139575900
35
+ version_requirements: *70281944124740
25
36
  description: Yell - Your Extensible Logging Library. Define multiple adapters, various
26
37
  log level combinations or message formatting options like you've never done before
27
38
  email:
@@ -57,13 +68,14 @@ files:
57
68
  - lib/yell/version.rb
58
69
  - spec/spec_helper.rb
59
70
  - spec/yell/adapters/base_spec.rb
71
+ - spec/yell/adapters_spec.rb
60
72
  - spec/yell/event_spec.rb
61
73
  - spec/yell/formatter_spec.rb
62
74
  - spec/yell/level_spec.rb
63
75
  - spec/yell/logger_spec.rb
64
76
  - spec/yell_spec.rb
65
77
  - yell.gemspec
66
- homepage: http://rubygems.org/gems/yell
78
+ homepage: http://rudionrails.github.com/yell
67
79
  licenses: []
68
80
  post_install_message:
69
81
  rdoc_options: []
@@ -90,6 +102,7 @@ summary: Yell - Your Extensible Logging Library
90
102
  test_files:
91
103
  - spec/spec_helper.rb
92
104
  - spec/yell/adapters/base_spec.rb
105
+ - spec/yell/adapters_spec.rb
93
106
  - spec/yell/event_spec.rb
94
107
  - spec/yell/formatter_spec.rb
95
108
  - spec/yell/level_spec.rb