]> granicus.if.org Git - python/commitdiff
Use basestring instead of type.StringType for checking whether a input
authorWalter Dörwald <walter@livinglogic.de>
Mon, 21 Nov 2005 19:10:07 +0000 (19:10 +0000)
committerWalter Dörwald <walter@livinglogic.de>
Mon, 21 Nov 2005 19:10:07 +0000 (19:10 +0000)
or output file is a file name instead of a file object. This enables
unicode file names as arguments to uu.encode() and uu.decode().

Lib/uu.py
Misc/NEWS

index f5917983f6b9230e336795a945e5b512a8277191..d986b0d121250496763f3fa6aac144278f9a5588 100755 (executable)
--- a/Lib/uu.py
+++ b/Lib/uu.py
@@ -33,7 +33,6 @@ decode(in_file [, out_file, mode])
 import binascii
 import os
 import sys
-from types import StringType
 
 __all__ = ["Error", "encode", "decode"]
 
@@ -47,7 +46,7 @@ def encode(in_file, out_file, name=None, mode=None):
     #
     if in_file == '-':
         in_file = sys.stdin
-    elif isinstance(in_file, StringType):
+    elif isinstance(in_file, basestring):
         if name is None:
             name = os.path.basename(in_file)
         if mode is None:
@@ -61,7 +60,7 @@ def encode(in_file, out_file, name=None, mode=None):
     #
     if out_file == '-':
         out_file = sys.stdout
-    elif isinstance(out_file, StringType):
+    elif isinstance(out_file, basestring):
         out_file = open(out_file, 'w')
     #
     # Set defaults for name and mode
@@ -88,7 +87,7 @@ def decode(in_file, out_file=None, mode=None, quiet=0):
     #
     if in_file == '-':
         in_file = sys.stdin
-    elif isinstance(in_file, StringType):
+    elif isinstance(in_file, basestring):
         in_file = open(in_file)
     #
     # Read until a begin is encountered or we've exhausted the file
@@ -117,7 +116,7 @@ def decode(in_file, out_file=None, mode=None, quiet=0):
     #
     if out_file == '-':
         out_file = sys.stdout
-    elif isinstance(out_file, StringType):
+    elif isinstance(out_file, basestring):
         fp = open(out_file, 'wb')
         try:
             os.path.chmod(out_file, mode)
@@ -172,7 +171,7 @@ def test():
 
     if dopt:
         if topt:
-            if isinstance(output, StringType):
+            if isinstance(output, basestring):
                 output = open(output, 'w')
             else:
                 print sys.argv[0], ': cannot do -t to stdout'
@@ -180,7 +179,7 @@ def test():
         decode(input, output)
     else:
         if topt:
-            if isinstance(input, StringType):
+            if isinstance(input, basestring):
                 input = open(input, 'r')
             else:
                 print sys.argv[0], ': cannot do -t from stdin'
index b257e0ee43bda1c2a2906ee3196dbeb3fd1c11ce..40be84ce2f511ef16ccc1b925f89351e6e5ae51d 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -551,6 +551,8 @@ Library
 - Bug #1245379: Add "unicode-1-1-utf-7" as an alias for "utf-7" to
   ``encodings.aliases``.
 
+- ` uu.encode()`` and ``uu.decode()`` now support unicode filenames.
+
 Build
 -----