Alexander Belopolsky
edc6885b3f
Closes issue #23600 : Wrong results from tzinfo.fromutc().
2015-09-27 22:31:45 -04:00
Victor Stinner
511491ade0
Issue #23517 : Fix rounding in fromtimestamp() and utcfromtimestamp() methods
...
of datetime.datetime: microseconds are now rounded to nearest with ties going
to nearest even integer (ROUND_HALF_EVEN), instead of being rounding towards
zero (ROUND_DOWN). It's important that these methods use the same rounding
mode than datetime.timedelta to keep the property:
(datetime(1970,1,1) + timedelta(seconds=t)) == datetime.utcfromtimestamp(t)
It also the rounding mode used by round(float) for example.
Add more unit tests on the rounding mode in test_datetime.
2015-09-18 14:42:05 +02:00
Raymond Hettinger
5a2146a2fd
Issue #22044 : Fixed premature DECREF in call_tzinfo_method.
2014-07-25 14:59:48 -07:00
Victor Stinner
3c1b379ebd
Issue #20320 : select.select() and select.kqueue.control() now round the timeout
...
aways from zero, instead of rounding towards zero.
It should make test_asyncio more reliable, especially test_timeout_rounding() test.
2014-02-17 00:02:43 +01:00
Larry Hastings
2623c8c23c
Issue #20530 : Argument Clinic's signature format has been revised again.
...
The new syntax is highly human readable while still preventing false
positives. The syntax also extends Python syntax to denote "self" and
positional-only parameters, allowing inspect.Signature objects to be
totally accurate for all supported builtins in Python 3.4.
2014-02-08 22:15:29 -08:00
Larry Hastings
581ee3618c
Issue #20326 : Argument Clinic now uses a simple, unique signature to
...
annotate text signatures in docstrings, resulting in fewer false
positives. "self" parameters are also explicitly marked, allowing
inspect.Signature() to authoritatively detect (and skip) said parameters.
Issue #20326 : Argument Clinic now generates separate checksums for the
input and output sections of the block, allowing external tools to verify
that the input has not changed (and thus the output is not out-of-date).
2014-01-28 05:00:08 -08:00
Larry Hastings
c20472640c
Issue #20390 : Small fixes and improvements for Argument Clinic.
2014-01-25 20:43:29 -08:00
Larry Hastings
5c66189e88
Issue #20189 : Four additional builtin types (PyTypeObject,
...
PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type)
have been modified to provide introspection information for builtins.
Also: many additional Lib, test suite, and Argument Clinic fixes.
2014-01-24 06:17:25 -08:00
Larry Hastings
61272b77b0
Issue #19273 : The marker comments Argument Clinic uses have been changed
...
to improve readability.
2014-01-07 12:41:53 -08:00
Christian Heimes
ecb4e6a9ab
Silence more PyObject_INIT() unused value warnings.
2013-12-04 09:34:29 +01:00
Larry Hastings
44e2eaab54
Issue #19674 : inspect.signature() now produces a correct signature
...
for some builtins.
2013-11-23 15:37:55 -08:00
Larry Hastings
ebdcb50b8a
Issue #19730 : Argument Clinic now supports all the existing PyArg
...
"format units" as legacy converters, as well as two new features:
"self converters" and the "version" directive.
2013-11-23 14:54:00 -08:00
Larry Hastings
ed4a1c5703
Argument Clinic: rename "self" to "module" for module-level functions.
2013-11-18 09:32:13 -08:00
Victor Stinner
70e11acdbd
Issue #19437 : Fix datetime_subtract(), handle new_delta() failure
2013-11-08 00:50:58 +01:00
Martin v. Löwis
e75fc14813
Issue #19514 : Deduplicate some _Py_IDENTIFIER declarations.
...
Patch by Andrei Dorian Duma.
2013-11-07 18:46:53 +01:00
Larry Hastings
3182680210
Issue #16612 : Add "Argument Clinic", a compile-time preprocessor
...
for C files to generate argument parsing code. (See PEP 436.)
2013-10-19 00:09:25 -07:00
Victor Stinner
36a5a062dc
_datetimemodule.c: fix the compilation warning "conversion from 'double' to
...
'long', possible loss of data" in delta_new(), use an explicit cast from double
to long
2013-08-28 01:53:39 +02:00
Serhiy Storchaka
46e1ce214b
Issue #18783 : Removed existing mentions of Python long type in docstrings,
...
error messages and comments.
2013-08-27 20:17:03 +03:00
Serhiy Storchaka
9594942716
Issue #18783 : Removed existing mentions of Python long type in docstrings,
...
error messages and comments.
2013-08-27 19:40:23 +03:00
Alexander Belopolsky
df7027bb9e
Reuse us_per_second in delta_total_seconds.
2013-08-04 15:18:58 -04:00
Alexander Belopolsky
790d269d39
Fixes #8860 : Round half-microseconds to even in the timedelta constructor.
...
(Original patch by Mark Dickinson.)
2013-08-04 14:51:35 -04:00
Christian Heimes
b91ffaa1d8
Fix NULL ptr dereferencing in local_timezone(). nameo can be NULL
...
CID 1040362 (#1 of 1): Explicit null dereferenced (FORWARD_NULL)
var_deref_op: Dereferencing null pointer _py_decref_tmp.
2013-06-29 20:52:33 +02:00
Victor Stinner
93037498d1
Fix time.mktime() and datetime.datetime.timestamp() on AIX
...
On AIX, the C function mktime() alwaysd sets tm_wday, even on error. So tm_wday
cannot be used as a sentinel to detect an error, we can only check if the
result is (time_t)-1.
2013-06-25 22:54:35 +02:00
Charles-Francois Natali
74ca886788
Issue #17917 : Use PyModule_AddIntMacro() instead of PyModule_AddIntConstant()
...
when applicable.
2013-05-20 19:13:19 +02:00
Ezio Melotti
3f5db3940f
Fix a few typos and a double semicolon. Patch by Eitan Adler.
2013-01-27 06:20:14 +02:00
Mark Dickinson
c04ddff290
Issue #16096 : Fix several occurrences of potential signed integer overflow. Thanks Serhiy Storchaka.
2012-10-06 18:04:49 +01:00
Georg Brandl
0085a24075
Closes #15973 : fix a segmentation fault when comparing timezone objects.
2012-09-22 09:23:12 +02:00
Alexander Belopolsky
93c9cd07b6
Issue #9527 : tm_gmtoff has 'correct' sign.
2012-06-22 16:04:19 -04:00
Alexander Belopolsky
878054e97b
Fixed compiler warnings in datetime_astimezone()
2012-06-22 14:11:58 -04:00
Alexander Belopolsky
31227ca514
Issue #9527 : Fixes for platforms without tm_zone
2012-06-22 13:23:21 -04:00
Alexander Belopolsky
fdc860f310
Issue #9527 : datetime.astimezone() method will now supply a class
...
timezone instance corresponding to the system local timezone when
called with no arguments.
2012-06-22 12:23:23 -04:00
Alexander Belopolsky
0831382d69
Issue #15006 : Allow equality comparison between naive and aware time
...
or datetime objects.
2012-06-15 20:19:47 -04:00
Alexander Belopolsky
a4415141da
Issue #2736 : Added datetime.timestamp() method.
2012-06-08 12:33:09 -04:00
Victor Stinner
21f5893571
Issue #14180 : datetime.date.fromtimestamp(), datetime.datetime.fromtimestamp()
...
and datetime.datetime.utcfromtimestamp() now raise an OSError instead of
ValueError if localtime() or gmtime() failed.
2012-03-14 00:15:40 +01:00
Victor Stinner
5d272cc6a2
Close #14180 : Factorize code to convert a number of seconds to time_t, timeval or timespec
...
time.ctime(), gmtime(), time.localtime(), datetime.date.fromtimestamp(),
datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now
raises an OverflowError, instead of a ValueError, if the timestamp does not fit
in time_t.
datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now
round microseconds towards zero instead of rounding to nearest with ties going
away from zero.
2012-03-13 13:35:55 +01:00
Gregory P. Smith
5831bd2f3b
Remove an unnecessary extra copy of the bytes hash function.
...
This copy also had a bug in it, it fails to incorporate the length
into the hash by using it as the loop variable so it'll always be -1
by the time it is XORed in.
As such: I'm doing this only in Python 3.3 and not backporting as it
would change the existing hash behavior of datetime objects.
2012-01-14 14:31:13 -08:00
Victor Stinner
9e30aa52fd
Fix misuse of PyUnicode_GET_SIZE() => PyUnicode_GET_LENGTH()
...
And PyUnicode_GetSize() => PyUnicode_GetLength()
2011-11-21 02:49:52 +01:00
Martin v. Löwis
bd928fef42
Rename _Py_identifier to _Py_IDENTIFIER.
2011-10-14 10:20:37 +02:00
Martin v. Löwis
1ee1b6fe0d
Use identifier API for PyObject_GetAttrString.
2011-10-10 18:11:30 +02:00
Martin v. Löwis
afe55bba33
Add API for static strings, primarily good for identifiers.
...
Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
2011-10-09 10:38:36 +02:00
Martin v. Löwis
d63a3b8beb
Implement PEP 393.
2011-09-28 07:41:54 +02:00
Mark Dickinson
c7d93b7614
Issue #1621 : Fix undefined behaviour from signed overflow in datetime module hashes, array and list iterations, and get_integer (stringlib/string_format.h)
2011-09-25 15:34:32 +01:00
Brian Curtin
dfc80e3d97
Replace Py_NotImplemented returns with the macro form Py_RETURN_NOTIMPLEMENTED.
...
The macro was introduced in #12724 .
2011-08-10 20:28:54 -05:00
Alexander Belopolsky
89da349b7b
Issue #11930 : Remove year >= 1000 limitation from datetime.strftime.
...
Patch by Victor Stinner.
2011-05-02 13:14:24 -04:00
Alexander Belopolsky
28deea1fa5
Issue #11576 : Fixed timedelta subtraction glitch on big timedelta values
2011-04-05 20:43:15 -04:00
Alexander Belopolsky
b6f5ec7370
Issue #11576 : Fixed timedelta subtraction glitch on big timedelta values
2011-04-05 20:07:38 -04:00
Victor Stinner
6ced7c4333
Issue #10833 : Use PyErr_Format() and PyUnicode_FromFormat() instead of
...
PyOS_snprintf() to avoid temporary buffer allocated on the stack and a
conversion from bytes to Unicode.
2011-03-21 18:15:42 +01:00
Brett Cannon
b94767ff44
Issue #8914 : fix various warnings from the Clang static analyzer v254.
2011-02-22 20:15:44 +00:00
Alexander Belopolsky
b8bb4664fc
Issue #1777412 : extended year range of strftime down to 1000.
2011-01-08 00:13:34 +00:00
Alexander Belopolsky
e239d23e8c
Issue #6697 : Fixed instances of _PyUnicode_AsString() result not checked for NULL
2010-12-08 23:31:48 +00:00