
    
                         S r SSKrSSKr\R                  r " S S\R                  5      r\" 5       r\" S5      r\R                  \5        S r	S r
g)a  Logging utilities for Dulwich.

Any module that uses logging needs to do compile-time initialization to set up
the logging environment. Since Dulwich is also used as a library, clients may
not want to see any logging output. In that case, we need to use a special
handler to suppress spurious warnings like "No handlers could be found for
logger dulwich.foo".

For details on the _NullHandler approach, see:
http://docs.python.org/library/logging.html#configuring-logging-for-a-library

For many modules, the only function from the logging module they need is
getLogger; this module exports that function for convenience. If a calling
module needs something else, it can import the standard logging module
directly.
    Nc                       \ rS rSrSrS rSrg)_NullHandler,   z;No-op logging handler to avoid unexpected logging warnings.c                     g )N )selfrecords     $lib/third_party/dulwich/log_utils.pyemit_NullHandler.emit/   s        r   N)__name__
__module____qualname____firstlineno____doc__r   __static_attributes__r   r   r
   r   r   ,   s
    Er   r   dulwichc                  |    [        5         [        R                  " [        R                  [        R
                  SS9  g)z#Set up the default Dulwich loggers.z&%(asctime)s %(levelname)s: %(message)s)levelstreamformatN)remove_null_handlerloggingbasicConfigINFOsysstderrr   r   r
   default_logging_configr   8   s'    llzz7r   c                  6    [         R                  [        5        g)zRemove the null handler from the Dulwich loggers.

If a caller wants to set up logging using something other than
default_logging_config, calling this function first is a minor optimization
to avoid the overhead of using the _NullHandler.
N)_DULWICH_LOGGERremoveHandler_NULL_HANDLERr   r   r
   r   r   B   s     !!-0r   )r   r   r   	getLoggerHandlerr   r#   r!   
addHandlerr   r   r   r   r
   <module>r'      sX   *"  
	7??  I&   = )1r   