Use RawConfigParser instead of dict.viewitems
authorJoar Wandborg <git@wandborg.com>
Sun, 30 Sep 2012 12:42:12 +0000 (14:42 +0200)
committerJoar Wandborg <git@wandborg.com>
Sun, 30 Sep 2012 12:42:12 +0000 (14:42 +0200)
dict.viewitems breaks python 2.6 compatibility.

mediagoblin/init/celery/from_celery.py

index 01da6b32cdcdce0cd3cf78f3693e227f5340e0f1..fc6b1e3790322593aba1a22b535b96efa1c7573a 100644 (file)
@@ -18,6 +18,7 @@ import os
 import logging
 
 from configobj import ConfigObj
+from ConfigParser import RawConfigParser
 from celery.signals import setup_logging
 
 from mediagoblin import app, mg_globals
@@ -32,7 +33,7 @@ _log.setLevel(logging.DEBUG)
 _log.warning('Test')
 
 
-def setup_logging_from_paste_ini(*args, **kw):
+def setup_logging_from_paste_ini(loglevel, **kw):
     if os.path.exists(os.path.abspath('paste_local.ini')):
         logging_conf_file = 'paste_local.ini'
     else:
@@ -46,10 +47,13 @@ def setup_logging_from_paste_ini(*args, **kw):
 
     config = logging_conf
 
+    # Read raw config to avoid interpolation of formatting parameters
+    raw_config = RawConfigParser()
+    raw_config.readfp(open(logging_conf_file))
+
     # Set up formatting
     # Get the format string and circumvent configobj interpolation of the value
-    fmt = config['formatter_generic'].viewitems().__iter__()\
-            .next()[1]
+    fmt = raw_config.get('formatter_generic', 'format')
 
     # Create the formatter
     formatter = logging.Formatter(fmt)