Project

General

Profile

Actions

Bug #8567

closed

Logger#add can never return +false+

Added by timpease (Tim Pease) almost 11 years ago. Updated almost 11 years ago.

Status:
Closed
Assignee:
Target version:
-
ruby -v:
ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-darwin12.3.0]
[ruby-core:<unknown>]

Description

The ruby Logger in the stdlib has a discrepancy between the documentation and the source code. The documentation states "=== Return +true+ if successful, +false+ otherwise" (https://github.com/ruby/ruby/blob/trunk/lib/logger.rb#L342-L347). However, there is no code path that allows +false+ to be returned from this method.

The code was originally included in the stdlib by @nahi (Hiroshi Nakamura) back in 2003. The documentation was clarified in 2012 by @drbrain (Eric Hodel) to indicate that the method will return +true+ regardless of the success or failure of the method.

My expectation would be for this method to return +false+ if the message was not logged. This code block (https://github.com/ruby/ruby/blob/trunk/lib/logger.rb#L370-L372) would be the logical place in the code to return +false+; in this case the message was not logged successfully.

This affects all version of Ruby.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0