Commit graph

8912 commits

Author SHA1 Message Date
Benjamin Peterson
a18bd0e0f0 merge 3.4 2015-09-27 02:14:23 -07:00
Benjamin Peterson
3c0769d478 fix spacing 2015-09-27 02:13:40 -07:00
Benjamin Peterson
bdb93c3e63 merge 3.4 (#25245) 2015-09-27 01:16:12 -07:00
Benjamin Peterson
6aa1564e9c initialize return value to NULL to avoid compiler compliants (closes #25245) 2015-09-27 01:16:03 -07:00
Benjamin Peterson
d330822c12 detect alpn by feature flag not openssl version (closes #23329) 2015-09-27 00:09:02 -07:00
Raymond Hettinger
bf49fee125 Issue #25135: Avoid possible reentrancy issues in deque_clear. 2015-09-26 00:14:59 -07:00
Benjamin Peterson
03c59b9bef merge 3.4 2015-09-26 00:09:32 -07:00
Benjamin Peterson
e48cf7e729 prevent overflow in _Unpickler_Read 2015-09-26 00:08:34 -07:00
Steve Dower
57ab1cdb15 Issue #25092: Fix datetime.strftime() failure when errno was already set to EINVAL. 2015-09-22 14:51:42 -07:00
Victor Stinner
84ff4abd79 Merge 3.4 (datetime rounding) 2015-09-18 14:50:18 +02: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
Victor Stinner
9a8b177e60 Issue #25155: Add _PyTime_AsTimevalTime_t() function
On Windows, the tv_sec field of the timeval structure has the type C long,
whereas it has the type C time_t on all other platforms. A C long has a size of
32 bits (signed inter, 1 bit for the sign, 31 bits for the value) which is not
enough to store an Epoch timestamp after the year 2038.

Add the _PyTime_AsTimevalTime_t() function written for datetime.datetime.now():
convert a _PyTime_t timestamp to a (secs, us) tuple where secs type is time_t.
It allows to support dates after the year 2038 on Windows.

Enhance also _PyTime_AsTimeval_impl() to detect overflow on the number of
seconds when rounding the number of microseconds.
2015-09-18 13:36:17 +02:00
Victor Stinner
d3ffd32767 Issue #25118: Fix a regression of Python 3.5.0 in os.waitpid() on Windows.
Add an unit test on os.waitpid()
2015-09-15 10:11:03 +02:00
Kristján Valur Jónsson
d7f65e5763 Issue #25021: Merge 3.4 to 3.5 2015-09-12 16:34:33 +00:00
Kristján Valur Jónsson
95c3e6cb22 Issue #25021: Merge from 3.3 to 3.4 2015-09-12 15:30:23 +00:00
Kristján Valur Jónsson
102764a1f6 Issue #25021: Correctly make sure that product.__setstate__ does not access
invalid memory.
2015-09-12 15:20:54 +00:00
Victor Stinner
f9fdfa7c4e Merge 3.4 2015-09-11 12:38:17 +02:00
Victor Stinner
ec1a498a01 Issue #24684: socket.socket.getaddrinfo() now calls
PyUnicode_AsEncodedString() instead of calling the encode() method of the
host, to handle correctly custom string with an encode() method which doesn't
return a byte string. The encoder of the IDNA codec is now called directly
instead of calling the encode() method of the string.
2015-09-11 12:37:30 +02:00
Martin Panter
db4220ea09 Issue #25030: Do not document seek() as if it accepts keyword arguments
Patch from Shiyao Ma.
2015-09-11 03:58:30 +00:00
Larry Hastings
ded28e3863 Merge Python 3.5.0rc4 back to hg.python.org. 2015-09-09 06:52:38 -07:00
Martin Panter
6088b7bd49 Merge 3.4 into 3.5 2015-09-09 06:27:43 +00:00
Martin Panter
9499413508 os.sendfile(headers=None, trailers=None) arguments are not actually accepted
Needs to be tested on a BSD.
2015-09-09 05:29:24 +00:00
Steve Dower
97cded934f Issue #25029: MemoryError in test_strptime 2015-09-08 19:12:51 -07:00
Martin Panter
0ff89099c7 Issue #23738: Merge 3.4 into 3.5 2015-09-09 01:56:53 +00:00
Martin Panter
bf19d16950 Issue #23738: Document and test actual keyword parameter names
Also fix signature because os.utime(..., ns=None) is not allowed.
2015-09-09 01:01:13 +00:00
Serhiy Storchaka
6c8b66cd26 Raise more correct exception on overflow in setting buffer_size attribute of
expat parser.
2015-09-07 22:54:08 +03:00
Serhiy Storchaka
de5f9f4f70 Raise more correct exception on overflow in setting buffer_size attribute of
expat parser.
2015-09-07 22:51:56 +03:00
Serhiy Storchaka
3b1bc7828d Issue #25019: Fixed a crash caused by setting non-string key of expat parser.
Added additional tests for expat parser attributes.
Based on patch by John Leitch.
2015-09-07 22:38:34 +03:00
Serhiy Storchaka
931331a328 Issue #25019: Fixed a crash caused by setting non-string key of expat parser.
Added additional tests for expat parser attributes.
Based on patch by John Leitch.
2015-09-07 22:37:02 +03:00
Steve Dower
f35bd306ff Merge from 3.5.0 branch. 2015-09-06 22:27:42 -07:00
Steve Dower
aa2fcc6b35 Issue #24917: time_strftime() buffer over-read. 2015-09-06 22:18:36 -07:00
Steve Dower
e5b5895b5b Issue #24917: time_strftime() buffer over-read. 2015-09-06 19:20:51 -07:00
Larry Hastings
62b24624dd Backing out 09b62202d9b7; the tests fail on Linux, and it needs a re-think. 2015-09-06 00:31:02 -07:00
Steve Dower
dcaf4ccf3f Issue #24917: Backed out changeset 09b62202d9b7 2015-09-05 23:11:53 -07:00
Steve Dower
ef920d6d5e Backed out changeset: a29b49d57769 2015-09-05 23:09:00 -07:00
Steve Dower
237060abb4 Merge from 3.5.0 release branch 2015-09-05 20:59:20 -07:00
Steve Dower
0fba9b324f Issue #24917: time_strftime() Buffer Over-read. Patch by John Leitch. 2015-09-05 20:55:34 -07:00
Larry Hastings
055a9e0bc8 Merged in ncoghlan/cpython350 (pull request #17) 2015-09-05 20:53:04 -07:00
Raymond Hettinger
2b2b75374e Prevent reentrant badness by deferring the decrefs as long as possible. 2015-09-05 17:05:52 -07:00
Steve Dower
373602fa3f Issue #24917: time_strftime() Buffer Over-read. Patch by John Leitch. 2015-09-05 12:16:06 -07:00
Nick Coghlan
9d3c61c86a Close #24748: Restore imp.load_dynamic compatibility
To resolve a compatibility problem found with py2exe and
pywin32, imp.load_dynamic() once again ignores previously loaded modules
to support Python modules replacing themselves with extension modules.

Patch by Petr Viktorin.
2015-09-05 21:05:05 +10:00
Serhiy Storchaka
4e63f7a2b4 Issue #24989: Fixed buffer overread in BytesIO.readline() if a position is
set beyond size.  Based on patch by John Leitch.
2015-09-04 07:48:19 +03:00
Serhiy Storchaka
594e54c765 Issue #24989: Fixed buffer overread in BytesIO.readline() if a position is
set beyond size.  Based on patch by John Leitch.
2015-09-04 01:08:03 +03:00
Victor Stinner
5b6917e60d Merge 3.4 (ICC) 2015-09-03 21:32:44 +02:00
Victor Stinner
528a9ab1f0 Don't use defined() in C preprocessor macros
The ICC compiler doesn't seem to support defined() in macro expansion. Example
of warning:

warning #3199: "defined" is always false in a macro expansion in Microsoft mode
2015-09-03 21:30:26 +02:00
Brett Cannon
df6b544ff6 Issue #24913: Fix overrun error in deque.index().
Reported by John Leitch and Bryce Darling, patch by Raymond Hettinger.
2015-09-03 10:15:03 -07:00
Zachary Ware
fda673d59f Issue #24974: Force fp-model precice in mpdecimal.c on Windows
As suggested by Steve Dower and approved by Stefan Krah.
2015-09-03 11:52:15 -05:00
Raymond Hettinger
87674ec7d5 Issue #24913: Fix overrun error in deque.index(). 2015-08-26 08:08:38 -07:00
Serhiy Storchaka
c97a962e08 Issue #24824: Signatures of codecs.encode() and codecs.decode() now are
compatible with pydoc.
2015-08-09 12:23:08 +03:00
Benjamin Peterson
f6b5cad3c3 include fcntl.h on all *nix platforms (closes #24217)
Patch by Jeffrey Armstrong.
2015-08-02 12:15:30 -07:00