From 0ffc8d29b67e68f492d21d6705417a33f6f30574 Mon Sep 17 00:00:00 2001 From: Pablo Hoffman Date: Wed, 22 Sep 2010 01:00:34 -0300 Subject: [PATCH] Don't silence warnings after log is started. Closes #246 --- scrapy/log.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scrapy/log.py b/scrapy/log.py index 385b250a1..6285209ce 100644 --- a/scrapy/log.py +++ b/scrapy/log.py @@ -5,6 +5,7 @@ See documentation in docs/topics/logging.rst """ import sys import logging +import warnings from twisted.python import log @@ -103,13 +104,15 @@ def start(logfile=None, loglevel=None, logstdout=None): if logstdout is None: logstdout = settings.getbool('LOG_STDOUT') sflo = ScrapyFileLogObserver(file, loglevel, settings['LOG_ENCODING']) + _oldshowwarning = warnings.showwarning log.startLoggingWithObserver(sflo.emit, setStdout=logstdout) + # restore warnings, wrongly silenced by Twisted + warnings.showwarning = _oldshowwarning msg("Scrapy %s started (bot: %s)" % (scrapy.__version__, \ settings['BOT_NAME'])) def msg(message, level=INFO, **kw): if 'component' in kw: - import warnings warnings.warn("Argument `component` of scrapy.log.msg() is deprecated", \ DeprecationWarning, stacklevel=2) kw.setdefault('system', 'scrapy')