[Python-Dev] PEP 383 update: utf8b is now the error handler

M.-A. Lemburg mal at egenix.com
Wed May 6 11:53:12 CEST 2009


Martin v. Löwis wrote:
>> The name "utf8b" suggested in the PEP is not in line with the codec
>> design
> 
> Where is that design documented, and how exactly violates the name
> the design (chapter and verse, please).

Martin, I designed the whole Python codec machinery, so even if
this is not explicitly written down somewhere, you can take my
word for it.

I don't want users to be confused by such an error handler
name, so please change it !

Here's a list of the currently available error handlers (taken from
codecs.py):

        The .encode()/.decode() methods may use different error
        handling schemes by providing the errors argument. These
        string values are predefined:

         'strict' - raise a ValueError error (or a subclass)
         'ignore' - ignore the character and continue with the next
         'replace' - replace with a suitable replacement character;
                    Python will use the official U+FFFD REPLACEMENT
                    CHARACTER for the builtin Unicode codecs on
                    decoding and '?' on encoding.
         'xmlcharrefreplace' - Replace with the appropriate XML
                               character reference (only for encoding).
         'backslashreplace'  - Replace with backslashed escape sequences
                               (only for encoding).

        The set of allowed values can be extended via register_error.

>> Error handlers and codecs are two different things, so the namespaces
>> need to be clearly separate.
> 
> They *are* separate naemspaces; that's guaranteed by the implementation.

In the implementation, yes, but not in the head of a typical user:
the 'utf8b' looks more like a codec name than an error handler
name.

I want to avoid any such confusion with Python codecs and don't
understand why you are making a problem out of this.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, May 06 2009)
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/
________________________________________________________________________
2009-06-29: EuroPython 2009, Birmingham, UK                53 days to go

::: Try our new mxODBC.Connect Python Database Interface for free ! ::::


   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611
               http://www.egenix.com/company/contact/


More information about the Python-Dev mailing list