[yum-git] 4 commits - cli.py output.py yum/__init__.py yummain.py

James Antill james at linux.duke.edu
Sat Apr 12 05:38:57 UTC 2008


 cli.py          |    4 ++--
 output.py       |    4 +++-
 yum/__init__.py |    9 ++++-----
 yummain.py      |    3 ++-
 4 files changed, 11 insertions(+), 9 deletions(-)

New commits:
commit 6be6a24522980e865dcc164e5b2a394448742e05
Merge: 9bf430e... fad7673...
Author: James Antill <james at and.org>
Date:   Sat Apr 12 01:38:49 2008 -0400

    Merge branch 'i18n'
    
    * i18n:
      Move gaftonmode to the startupconf
      Convert str(e) to unicode(e) for translated exceptions
       Fix for optparse tries to convert from unicode to ascii

commit fad76732c0520f63de9ae4baf7f17190816cceb3
Author: James Antill <james at and.org>
Date:   Sat Apr 12 01:15:52 2008 -0400

    Move gaftonmode to the startupconf

diff --git a/yum/__init__.py b/yum/__init__.py
index 95683af..7bf6ff3 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -162,7 +162,9 @@ class YumBase(depsolve.Depsolve):
             fn = '/etc/yum.conf'
 
         startupconf = config.readStartupConfig(fn, root)
-
+        if startupconf.gaftonmode:
+            import __builtin__
+            __builtin__.__dict__['_'] = i18n.dummy_wrapper
         
         if debuglevel != None:
             startupconf.debuglevel = debuglevel
@@ -176,9 +178,6 @@ class YumBase(depsolve.Depsolve):
                     startupconf.pluginconfpath,disabled_plugins)
 
         self._conf = config.readMainConfig(startupconf)
-        if self._conf.gaftonmode:
-            import __builtin__
-            __builtin__.__dict__['_'] = i18n.dummy_wrapper
 
         # run the postconfig plugin hook
         self.plugins.run('postconfig')
commit 15cdf456bdcbf8cdaf257d84b69db425c24cc0ba
Author: James Antill <james at and.org>
Date:   Sat Apr 12 01:13:33 2008 -0400

    Convert str(e) to unicode(e) for translated exceptions

diff --git a/yum/__init__.py b/yum/__init__.py
index bef88cb..95683af 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2630,7 +2630,7 @@ class YumBase(depsolve.Depsolve):
                 rawkey = urlgrabber.urlread(keyurl, limit=9999)
             except urlgrabber.grabber.URLGrabError, e:
                 raise Errors.YumBaseError(_('GPG key retrieval failed: ') +
-                                          str(e))
+                                          unicode(e))
 
             # Parse the key
             try:
diff --git a/yummain.py b/yummain.py
index 932525e..3e17b29 100755
--- a/yummain.py
+++ b/yummain.py
@@ -61,7 +61,7 @@ def main(args):
         return 1
 
     def exFatal(e):
-        logger.critical('\n\n%s', str(e))
+        logger.critical('\n\n%s', unicode(e))
         if unlock(): return 200
         return 1
 
@@ -114,7 +114,7 @@ def main(args):
         return exPluginExit(e)
     except Errors.YumBaseError, e:
         result = 1
-        resultmsgs = [str(e)]
+        resultmsgs = [unicode(e)]
     except KeyboardInterrupt:
         return exUserCancel()
     except IOError, e:
commit a3a53f16b45e06aeaa3666b47705dc879b182724
Author: James Antill <james at and.org>
Date:   Sat Apr 12 00:53:49 2008 -0400

     Fix for optparse tries to convert from unicode to ascii
     Re-fix 436361 and fix part of 438580, probably due to the string being
    translated now.
     Tell stdout's encoder that it should replace bad chars instead of
    splatting tracebacks.

diff --git a/cli.py b/cli.py
index ae66555..d10e50c 100644
--- a/cli.py
+++ b/cli.py
@@ -899,11 +899,11 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
 
     def usage(self):
         ''' Print out command line usage '''
-        self.optparser.print_help()
+        sys.stdout.write(self.optparser.format_help())
 
     def shellUsage(self):
         ''' Print out the shell usage '''
-        self.optparser.print_usage()
+        sys.stdout.write(self.optparser.format_usage())
     
     def _installable(self, pkg, ematch=False):
 
diff --git a/output.py b/output.py
index 1e3483f..3ef850d 100644
--- a/output.py
+++ b/output.py
@@ -349,9 +349,11 @@ class YumOutput:
 
         while True:
             try:
-                choice = raw_input(_('Is this ok [y/N]: ').encode("utf-8"))
+                choice = raw_input(_('Is this ok [y/N]: '))
             except UnicodeEncodeError:
                 raise
+            except UnicodeDecodeError:
+                raise
             except:
                 choice = ''
             choice = choice.lower()
diff --git a/yummain.py b/yummain.py
index 281fc91..932525e 100755
--- a/yummain.py
+++ b/yummain.py
@@ -36,6 +36,7 @@ def main(args):
     if True: # not sys.stdout.isatty():
         import codecs
         sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
+        sys.stdout.errors = 'replace'
 
     def exUserCancel():
         logger.critical(_('\n\nExiting on user cancel'))



More information about the Yum-cvs-commits mailing list