The docs link to a list of valid time zone choices. I think TIME_ZONE = "Etc/GMT-8"
should do what you want.
The change you mention is a bugfix for #3415 introduced at r13722. It reveals the problem, but the root cause is still the fact that your TIME_ZONE
setting is invalid. It isn't a bug in 1.3; the bug really was in 1.2 who should have warned you already.
Historically, Django hasn't sufficiently validated the value of settings.TIME_ZONE
. It must be a timezone your system knows (ie. a file in /usr/share/zoneinfo) for time.tzset()
to work properly. It must also be a timezone PostgreSQL knows if you're using the PostgreSQL backend.
I hope this helps. Thanks for the report!