Commit Graph

4820 Commits

Author SHA1 Message Date
Victor Stinner
5a682c9ca5 Merge 3.5 (monotonic) 2015-09-03 00:15:23 +02:00
Victor Stinner
5ad5821d09 oops, rename pymonotonic_new() to pymonotonic()
I was not supposed to commit the function with the name pymonotonic_new(). I
forgot to rename it.
2015-09-03 00:14:58 +02:00
Victor Stinner
c3c616c3d1 Issue #24707: Remove assertion in monotonic clock
Don't check anymore at runtime that the monotonic clock doesn't go backward.
Yes, it happens. It occurs sometimes each month on a Debian buildbot slave
running in a VM.

The problem is that Python cannot do anything useful if a monotonic clock goes
backward. It was decided in the PEP 418 to not fix the system, but only expose
the clock provided by the OS.
2015-09-03 00:13:46 +02:00
Victor Stinner
2ec558739e Issue #23517: datetime.timedelta constructor now rounds microseconds to nearest
with ties going away from zero (ROUND_HALF_UP), as Python 2 and Python older
than 3.3, instead of rounding to nearest with ties going to nearest even
integer (ROUND_HALF_EVEN).
2015-09-02 19:16:07 +02:00
Yury Selivanov
1fa3652e59 Merge 3.5 (issue #24975) 2015-09-02 15:50:04 -04:00
Victor Stinner
24b822e21e Issue #23517: Try to fix test_time on "x86 Ubuntu Shared 3.x" buildbot 2015-09-02 11:58:56 +02:00
Victor Stinner
67edcc905d Issue #23517: Fix _PyTime_ObjectToDenominator()
* initialize numerator on overflow error ensure that numerator is smaller than
* denominator.
2015-09-02 10:37:46 +02:00
Victor Stinner
744742320f Issue #23517: Add "half up" rounding mode to the _PyTime API 2015-09-02 01:43:56 +02:00
Victor Stinner
bbdda21a7a Move assertion inside _PyTime_ObjectToTimeval()
Change also _PyTime_FromSeconds() assertion to ensure that the _PyTime_t type
is used.
2015-09-02 00:50:43 +02:00
Victor Stinner
53e137c8dd Refactor pytime.c
Move code to convert double timestamp to subfunctions.
2015-09-02 00:49:16 +02:00
Yury Selivanov
b3d531348c Issue #24975: Fix AST compilation for PEP 448 syntax. 2015-09-01 16:10:49 -04:00
Larry Hastings
45d1c00831 Merge from 3.5 (with 3.5.0rc2 changes) into default (3.6). Messy! 2015-08-25 14:21:59 -07:00
Larry Hastings
01b1ff6970 Rebuilt Clinic generated code. 2015-08-24 20:23:27 -07:00
Larry Hastings
1df0b35e3d Issue #24769: Interpreter now starts properly when dynamic loading
is disabled.  Patch by Petr Viktorin.
2015-08-24 19:53:56 -07:00
Eric V. Smith
163b5c668d Fix a trivial typo. 2015-08-21 09:40:38 -04:00
Raymond Hettinger
501b4a7398 Use PyTuple_GET_SIZE like the adjacent code does. 2015-08-18 08:07:16 -07:00
Raymond Hettinger
f109414094 Inline PyIter_Next() matching the other itertools code. 2015-08-18 00:20:20 -07:00
Brett Cannon
d868376288 Merge from 3.5 for issue #24492 2015-08-14 11:09:56 -07:00
Brett Cannon
3008bc0f4a Issue #24492: make sure that `from ... import ... raises an
ImportError if __name__ is not defined on a package.

Thanks to Armin Rigo for the bug report and diagnosing the cause.
2015-08-11 18:01:31 -07:00
Robert Collins
df395991f6 Issue #9232: Support trailing commas in function declarations.
For example, "def f(*, a = 3,): pass" is now legal.

Patch from Mark Dickinson.
2015-08-12 08:00:06 +12:00
Yury Selivanov
dca249b17c Merge 3.5 (issue #24791) 2015-08-05 17:55:12 -04:00
Yury Selivanov
14acf5f41d Issue #24791: Fix grammar regression for call syntax: 'g(*a or b)'. 2015-08-05 17:54:10 -04:00
Victor Stinner
f716e74d5a Merge 3.5 (os.urandom) 2015-07-30 10:14:52 +02:00
Victor Stinner
61d5aab9b9 py_getrandom(): getrandom() *can* return EINTR
See the latest version of getrandom() manual page:
http://man7.org/linux/man-pages/man2/getrandom.2.html#NOTES

    The behavior when a call to getrandom() that is blocked while reading from
    /dev/urandom is interrupted by a signal handler depends on the
    initialization state of the entropy buffer and on the request size, buflen.
    If the entropy is not yet initialized, then the call will fail with the
    EINTR error.  If the entropy pool has been initialized and the request size
    is large (buflen > 256), the call either succeeds, returning a partially
    filled buffer, or fails with the error EINTR.  If the entropy pool has been
    initialized and the request size is small (buflen <= 256), then getrandom()
    will not fail with EINTR.  Instead, it will return all of the bytes that
    have been requested.

Note: py_getrandom() calls getrandom() with flags=0.
2015-07-30 10:13:52 +02:00
Stefan Krah
ff9fe230d0 Fix refleak. 2015-07-27 12:57:21 +02:00