Add support to _ensure_default_encoding() for the same ascii and utf_8
authorZac Medico <zmedico@gentoo.org>
Wed, 11 Mar 2009 06:29:33 +0000 (06:29 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 11 Mar 2009 06:29:33 +0000 (06:29 -0000)
aliases that encodings.aliases has. (trunk r12731)

svn path=/main/branches/2.1.6/; revision=12980

pym/portage/__init__.py

index be54d3325f32283eb56a0c9bb569a127f605e7c6..5e3e70c1a8c165062368afae0afa0c9681763ff9 100644 (file)
@@ -7536,7 +7536,7 @@ def _gen_missing_encodings(missing_encodings):
                class AsciiStreamReader(codecs.StreamReader):
                        decode = codecs.ascii_decode
 
-               encodings['ascii'] =  codecs.CodecInfo(
+               codec_info =  codecs.CodecInfo(
                        name='ascii',
                        encode=codecs.ascii_encode,
                        decode=codecs.ascii_decode,
@@ -7546,6 +7546,11 @@ def _gen_missing_encodings(missing_encodings):
                        streamreader=AsciiStreamReader,
                )
 
+               for alias in ('ascii', '646', 'ansi_x3.4_1968', 'ansi_x3_4_1968',
+                       'ansi_x3.4_1986', 'cp367', 'csascii', 'ibm367', 'iso646_us',
+                       'iso_646.irv_1991', 'iso_ir_6', 'us', 'us_ascii'):
+                       encodings[alias] = codec_info
+
        if 'utf_8' in missing_encodings:
 
                def utf8decode(input, errors='strict'):
@@ -7564,7 +7569,7 @@ def _gen_missing_encodings(missing_encodings):
                class Utf8StreamReader(codecs.StreamReader):
                        decode = codecs.utf_8_decode
 
-               encodings['utf_8'] = codecs.CodecInfo(
+               codec_info = codecs.CodecInfo(
                        name='utf-8',
                        encode=codecs.utf_8_encode,
                        decode=utf8decode,
@@ -7574,6 +7579,9 @@ def _gen_missing_encodings(missing_encodings):
                        streamwriter=Utf8StreamReader,
                )
 
+               for alias in ('utf_8', 'u8', 'utf', 'utf8', 'utf8_ucs2', 'utf8_ucs4'):
+                       encodings[alias] = codec_info
+
        return encodings
 
 def _ensure_default_encoding():
@@ -7617,6 +7625,8 @@ def _ensure_default_encoding():
                        encodings[default_encoding] = encodings[default_fallback]
 
        def search_function(name):
+               name = name.lower()
+               name = name.replace('-', '_')
                codec_info = encodings.get(name)
                if codec_info is not None:
                        return codecs.CodecInfo(