summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2015-09-01 23:57:23 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2015-09-01 23:57:23 (GMT)
commit265e1259e4ad7001ea366d52c56adde8daed7a69 (patch)
tree9cc370130de5b4d50588d33d8a8174e560d162da
parent744742320f259776dab1c8ef86e22225ef569d17 (diff)
downloadcpython-265e1259e4ad7001ea366d52c56adde8daed7a69.zip
cpython-265e1259e4ad7001ea366d52c56adde8daed7a69.tar.gz
cpython-265e1259e4ad7001ea366d52c56adde8daed7a69.tar.bz2
Issue #23517: datetime.datetime.fromtimestamp() and
datetime.datetime.utcfromtimestamp() now rounds to nearest with ties going away from zero, instead of rounding towards minus infinity (-inf), as Python 2 and Python older than 3.3.
-rw-r--r--Misc/NEWS5
-rw-r--r--Modules/_datetimemodule.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 38f31e4..8226f20 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -17,6 +17,11 @@ Core and Builtins
Library
-------
+- Issue #23517: datetime.datetime.fromtimestamp() and
+ datetime.datetime.utcfromtimestamp() now rounds to nearest with ties going
+ away from zero, instead of rounding towards minus infinity (-inf), as Python
+ 2 and Python older than 3.3.
+
- Issue #23552: Timeit now warns when there is substantial (4x) variance
between best and worst times. Patch from Serhiy Storchaka.
diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c
index 5cff3f8..e1cd2b5 100644
--- a/Modules/_datetimemodule.c
+++ b/Modules/_datetimemodule.c
@@ -4098,7 +4098,7 @@ datetime_from_timestamp(PyObject *cls, TM_FUNC f, PyObject *timestamp,
long us;
if (_PyTime_ObjectToTimeval(timestamp,
- &timet, &us, _PyTime_ROUND_FLOOR) == -1)
+ &timet, &us, _PyTime_ROUND_HALF_UP) == -1)
return NULL;
return datetime_from_timet_and_us(cls, f, timet, (int)us, tzinfo);