Guido van Rossum wrote: > On Fri, Dec 5, 2008 at 2:27 AM, Ulrich Eckhardt <[EMAIL PROTECTED]> wrote: >> In 99% of all cases, using the default encoding will work and do what people >> expect, which is why I would make this conversion automatic. In all other >> cases, it will at least not fail silently (which would lead to garbage and >> data loss) and allow more sophisticated applications to handle it. > > I think the "always fail noisily" approach isn't the best approach. > E.g. if I am globbing for *.py, and there's an undecodable .txt file > in a directory, its presence shouldn't cause the glob to fail. > But why should it make glob() fail? This sounds like an implementation detail of glob. Here's some pseudo-code::
def glob(pattern): string = False if isinstance(pattern, str): string = True if platform == 'POSIX': pattern = bytes(pattern, encoding=defaultencoding) rawfiles = os.listdir(os.path.dirname(pattern) or pattern) if string and platform == 'POSIX': return [str(f) for f in rawfiles if match(f, pattern)] else: return rawfiles This way the traceback occurs if anything in the result set is undecodable. What am I missing? -Toshio
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com