On Mon, Jan 3, 2011 at 7:47 PM, Guido van Rossum <gu...@python.org> wrote:
> Given the rule garbage in -> garbage out, I'd do the most useful
> thing, which would be to produce a longer output string (and update
> the docs). This would match the behavior of e.g. '%04d' % y when y >
> 9999. If that means the platform libc asctime/ctime can't be used, too
> bad.

I've committed code that does not use platform libc asctime/ctime
anymore.  Now it seems odd that we support years > 9999 but not years
< 1900.  A commonly given explanation for rejecting years < 1900 is
that Python has to support POSIX standard for 2-digit years.  However,
this support is conditional on the value of time.accept2dyear and
several people argued that when it is set to false, full range of
years should be supported.  Furthermore, in order to support 2-digit
years, there is no need to reject years < 1900.  It may be confusing
to map 99 to 1999 while accepting 100 as is, but I don't see much of
the problem in accepting 4-digit years from 1000 through 1899 while
mapping [0 - 99] to present times according to POSIX standard.

See http://bugs.python.org/issue10827 for more.
_______________________________________________
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

Reply via email to