On 6/12/06, Georg Brandl <[EMAIL PROTECTED]> wrote: > Guido van Rossum wrote: > > Yup, although it's a change in behavior that would need to be studied > > carefully for backwards incompatibilities. Usually it's given as a > > constant, so there won't be any problems; but there might be code that > > receives a mode string and attempts to test its validity by trying it > > and catching IOError, such code would have to be changed. > > > > --Guido > > > > On 6/12/06, Kristján V. Jónsson <[EMAIL PROTECTED]> wrote: > >> I notice that file() throws an IOError when it detects an invalid mode > >> string. Wouldn't a ValueError be more appropriate? > > > > The situation is even more complex with the current trunk. open() raises > ValueError if it detects an invalid the mode string, such as universal > newline mode and a writable mode combined (the definition of > what is invalid has been made stricter, the mode string now must begin > with r, w, a or U), but it raises IOError if the OS call to fopen() fails > because of an invalid mode string. This might need unification.
That would be hard to fix unless we get rid of the stdio-based implementation (which I intend to do in Py3k). I say we leave it alone for now -- fopen() can fail for any number of platform-dependent reasons and we can't really expect to do look-before-you-leap on this. -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ 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