Victor Stinner
6aa446cf03
PEP 475: on EINTR, retry the function even if the timeout is equals to zero
...
Retry:
* signal.sigtimedwait()
* threading.Lock.acquire()
* threading.RLock.acquire()
* time.sleep()
2015-03-30 21:33:51 +02:00
Victor Stinner
f70e1ca0fc
Issue #23485 : select.select() is now retried automatically with the recomputed
...
timeout when interrupted by a signal, except if the signal handler raises an
exception. This change is part of the PEP 475.
The asyncore and selectors module doesn't catch the InterruptedError exception
anymore when calling select.select(), since this function should not raise
InterruptedError anymore.
2015-03-30 21:16:11 +02:00
Serhiy Storchaka
3f5d48bead
Partially revert 3603bae63c13 (issue23326) for asyncio.
2015-03-30 22:25:16 +03:00
R David Murray
ba6ea9b237
#2211 : Fix typo, address missed review comment.
2015-03-30 11:48:50 -04:00
R David Murray
c156e51668
Merge: #23792 : also catch interrupt around pipe.write.
2015-03-30 10:15:22 -04:00
R David Murray
e7f5e147cd
#23792 : also catch interrupt around pipe.write.
...
The previous patch only dealt with KeyboardInterrupt when all of the
data had been consumed by the pager. This deals with the interrupt
when some data is still pending.
2015-03-30 10:14:47 -04:00
Victor Stinner
93692bba3e
What's New in Python 3.5: add pep 461 (bytes%args) and 465 (a@b)
2015-03-30 15:04:45 +02:00
Victor Stinner
5fdde71cce
Issue #23605 : Fix typo in an os.walk() comment
...
Thanks Ben Hoyt for the report.
2015-03-30 11:54:05 +02:00
Victor Stinner
81c6df5c0f
(Merge 3.4) Issue #22585 : os.urandom() now releases the GIL when the
...
getentropy() is used (OpenBSD 5.6+).
2015-03-30 11:19:07 +02:00
Victor Stinner
9aa1331c6f
Issue #22585 : os.urandom() now releases the GIL when the getentropy() is used
...
(OpenBSD 5.6+).
2015-03-30 11:18:30 +02:00
Victor Stinner
79b74aeb20
Issue #22181 : os.urandom() now releases the GIL when the getrandom()
...
implementation is used.
2015-03-30 11:16:40 +02:00
Larry Hastings
a52f31dfe2
Fix PY_VERSION in Include/patchlevel.h to reflect our post-3.5.0a3 state.
2015-03-30 01:56:27 -07:00
Larry Hastings
09dab7a87e
Merge 3.5.0a3 release engineering changes back into trunk.
2015-03-30 01:50:00 -07:00
Victor Stinner
45cff0c0e6
Issue #22117 : Try to fix rounding in conversion from Python double to _PyTime_t
...
using the C volatile keyword.
2015-03-30 10:22:16 +02:00
Victor Stinner
e134a7fe36
Issue #23752 : _Py_fstat() is now responsible to raise the Python exception
...
Add _Py_fstat_noraise() function when a Python exception is not welcome.
2015-03-30 10:09:31 +02:00
Serhiy Storchaka
2e1c4e5db2
Issue #23785 : Fixed memory leak in TextIOWrapper.tell() in rare circumstances.
2015-03-30 10:00:40 +03:00
Serhiy Storchaka
04d09ebd39
Issue #23785 : Fixed memory leak in TextIOWrapper.tell() in rare circumstances.
2015-03-30 09:58:41 +03:00
Serhiy Storchaka
be1c60c3f6
Issue #23783 : Fixed memory leak in PyObject_ClearWeakRefs() in case of
...
MemoryError.
2015-03-30 09:52:53 +03:00
Serhiy Storchaka
4aa867959f
Issue #23783 : Fixed memory leak in PyObject_ClearWeakRefs() in case of
...
MemoryError.
2015-03-30 09:52:29 +03:00
Serhiy Storchaka
2c7b5a9d0d
Issue #23466 : %c, %o, %x, and %X in bytes formatting now raise TypeError on
...
non-integer input.
2015-03-30 09:19:08 +03:00
Serhiy Storchaka
7901b48a1f
Issue #23171 : csv.Writer.writerow() now supports arbitrary iterables.
2015-03-30 09:09:54 +03:00
Victor Stinner
a695f83f0d
Issue #22117 : Remove _PyTime_ROUND_DOWN and _PyTime_ROUND_UP rounding methods
...
Use _PyTime_ROUND_FLOOR and _PyTime_ROUND_CEILING instead.
2015-03-30 03:57:14 +02:00
R David Murray
7d0325d6c8
#23745 : handle duplicate MIME parameter names in new parser.
...
This mimics get_param's error handling for the most part. It is slightly
better in some regards as get_param can produce some really weird results for
duplicate *0* parts. It departs from get_param slightly in that if we have a
mix of non-extended and extended pieces for the same parameter name, the new
parser assumes they were all supposed to be extended and concatenates all the
values, whereas get_param always picks the non-extended parameter value. All
of this error recovery is pretty much arbitrary decisions...
2015-03-29 21:53:05 -04:00
Victor Stinner
869e1778c0
Issue #22117 : Replace usage of _PyTime_ROUND_UP with _PyTime_ROUND_CEILING
...
All these functions only accept positive timeouts, so this change has no effect
in practice.
2015-03-30 03:49:14 +02:00
Victor Stinner
bcdd777d3c
Issue #22117 : Add _PyTime_ROUND_CEILING rounding method for timestamps
...
Add also more tests for ROUNd_FLOOR.
2015-03-30 03:52:49 +02:00
R David Murray
c4bb599be0
Merge: #23745 : handle duplicate MIME parameter names in new parser.
2015-03-29 21:54:27 -04:00
Victor Stinner
520bddf79a
Issue #23752 : When built from an existing file descriptor, io.FileIO() now only
...
calls fstat() once. Before fstat() was called twice, which was not necessary.
2015-03-30 03:21:06 +02:00
Victor Stinner
edddf991d9
Issue #22117 : Add assertions to _PyTime_AsTimeval() and _PyTime_AsTimespec() to
...
check that microseconds and nanoseconds fits into the specified range.
2015-03-30 02:54:57 +02:00
Victor Stinner
ea9c0dd2c2
Issue #22117 : Fix usage of _PyTime_AsTimeval()
...
Add _PyTime_AsTimeval_noraise() function. Call it when it's not possible (or
not useful) to raise a Python exception on overflow.
2015-03-30 02:51:13 +02:00
Victor Stinner
160e819a1d
Issue #23694 : Fix usage of _Py_open() in the _posixsubprocess module
...
Don't call _Py_open() from _close_open_fds_safe() because it is call just after
fork(). It's not good to play with locks (the GIL) between fork() and exec().
Use instead _Py_open_noraise() which doesn't touch to the GIL.
2015-03-30 02:18:31 +02:00
Victor Stinner
e4a994d617
Issue #22117 : Fix rounding of fromtimestamp() methods of datetime.datetime and
...
datetime.time: round towards minus infinity ("floor") instead of rounding
towards zero ("down").
2015-03-30 01:10:14 +02:00
Victor Stinner
dca028b86a
Issue #22117 : Fix os.utime(), it now rounds the timestamp towards minus
...
infinity (-inf) instead of rounding towards zero.
Replace _PyTime_ROUND_DOWN with _PyTime_ROUND_FLOOR.
2015-03-30 01:02:57 +02:00
Victor Stinner
f81f0f9c63
Issue #22117 : Fix rounding and implement _PyTime_ROUND_FLOOR in:
...
- _PyTime_ObjectToTime_t()
- _PyTime_ObjectToTimespec()
- _PyTime_ObjectToTimeval()
2015-03-30 00:44:06 +02:00
Larry Hastings
736240399e
Added tag v3.5.0a3 for changeset 82656e28b5e5
2015-03-29 15:34:44 -07:00
Larry Hastings
02d1db9f46
Release bump for Python 3.5.0a3.
2015-03-29 15:34:26 -07:00
Larry Hastings
b2c2dc3643
Regenerated pydoc topics and minor doc fixes for 3.5.0a3.
2015-03-29 15:32:55 -07:00
Serhiy Storchaka
a3a100b594
Issue #22390 : test.regrtest now emits a warning if temporary files or
...
directories are left after running a test.
2015-03-30 01:28:02 +03:00
Victor Stinner
1bd18ba9a7
Issue #22117 : Cleanup pytime.c/.h
2015-03-30 00:25:38 +02:00
Victor Stinner
09e5cf28ae
Issue #22117 : Use the _PyTime_t API in _datetime.datetime() constructor
...
* Remove _PyTime_gettimeofday()
* Add _PyTime_GetSystemClock()
2015-03-30 00:09:18 +02:00
Serhiy Storchaka
10915aa85c
Issue #22390 : test.regrtest now emits a warning if temporary files or
...
directories are left after running a test.
2015-03-30 01:30:22 +03:00
Serhiy Storchaka
07360df481
Issue #14260 : The groupindex attribute of regular expression pattern object
...
now is non-modifiable mapping.
2015-03-30 01:01:48 +03:00
R David Murray
1813c1701f
#2211 : properly document the Morsel behavior changes.
...
Also deprecate the undocumented set argument instead of removing
it already in 3.5.
Initial patch by Demian Brecht.
2015-03-29 17:09:21 -04:00
Benjamin Peterson
0deefd5a94
merge 3.4 ( #23801 )
2015-03-29 16:45:19 -04:00
Donald Stufft
d90f8d10e0
Closes #23801 - Ignore entire preamble to multipart in cgi.FieldStorage
2015-03-29 16:43:23 -04:00
R David Murray
f375b0a4d5
Merge: #23792 : Ignore KeyboardInterrupt when the pydoc pager is active.
2015-03-29 15:19:13 -04:00
R David Murray
1058cda38f
#23792 : Ignore KeyboardInterrupt when the pydoc pager is active.
...
Previously, if you hit ctl-c while the pager was active, the python that
launched the subprocess for the pager would see the KeyboardInterrupt in the
__exit__ method of the subprocess context manager where it was waiting for the
subprocess to complete, ending the wait. This would leave the pager running,
while the interactive interpreter, after handling the exception by printing
it, would go back to trying to post a prompt...but the pager would generally
have the terminal in raw mode, and in any case would be still trying to read
from stdin. On some systems, even exiting python at that point would not
restore the terminal mode. The problem with raw mode could also happen if
ctl-C was hit when pydoc was called from the shell command line and the pager
was active.
Instead, we now wait on the subprocess in a loop, ignoring KeyboardInterrupt
just like the pager does, until the pager actually exits.
(Note: this was a regression relative to python2...in python2 the pager
is called via system, and system does not return until the pager exits.)
2015-03-29 15:15:40 -04:00
Serhiy Storchaka
1b74d630da
Added explicit tests for issue #23803 .
2015-03-29 19:23:27 +03:00
Serhiy Storchaka
48070c1248
Issue #23803 : Fixed str.partition() and str.rpartition() when a separator
...
is wider then partitioned string.
2015-03-29 19:21:02 +03:00
Serhiy Storchaka
bfbfc8deb2
Removed unintentional trailing spaces in text files.
2015-03-29 19:12:58 +03:00
Serhiy Storchaka
1770fde94c
Make some tests more frienly to MemoryError.
...
Free memory, unlock hanging threads.
2015-03-28 20:39:51 +02:00