Message231597
Here, on Linux, I get:
$ python3 -c "import time; print(time.timezone)"
-14400
… which means I am in UTC+4. However, Russia recently (in October) switched time, and moved from UTC+4 to UTC+3 timezone (my tzdata is up-to-date), so this reported value is wrong.
The relevant code in timemodule.c looks like (simplified):
#define YEAR ((time_t)((365 * 24 + 6) * 3600))
time_t t = (time((time_t *)0) / YEAR) * YEAR;
struct tm *p = localtime(&t);
janzone = -p->tm_gmtoff;
PyModule_AddIntConstant(m, "timezone", janzone);
The value of t is the *January 1st* of current year, i.e. 2014-01-01 currently. But the timezone of a country in the year beginning may be different from its timezone in the year end, which is the case for me.
This bug will be relevant for Russia until the end of 2014, but may be still relevant for other countries that wish to change their timezone. |
|
Date |
User |
Action |
Args |
2014-11-24 10:49:19 | mitya57 | set | recipients:
+ mitya57 |
2014-11-24 10:49:19 | mitya57 | set | messageid: <1416826159.48.0.941875897993.issue22930@psf.upfronthosting.co.za> |
2014-11-24 10:49:19 | mitya57 | link | issue22930 messages |
2014-11-24 10:49:18 | mitya57 | create | |
|