Raymond Hettinger
9af740b99a
merge
2016-11-21 17:24:58 -08:00
Raymond Hettinger
a3fec1543d
Issue #27100 : With statement reports missing __enter__ before __exit__. (Contributed by Jonathan Ellington.)
2016-11-21 17:24:23 -08:00
Serhiy Storchaka
b57d9eac41
Issue #28748 : Private variable _Py_PackageContext is now of type "const char *"
...
rather of "char *".
2016-11-21 10:25:54 +02:00
Serhiy Storchaka
460bd0d284
Issue #19569 : Compiler warnings are now emitted if use most of deprecated
...
functions.
2016-11-20 12:16:46 +02:00
Serhiy Storchaka
85b0f5beb1
Added the const qualifier to char* variables that refer to readonly internal
...
UTF-8 represenatation of Unicode objects.
2016-11-20 10:16:47 +02:00
Serhiy Storchaka
a98c4a984b
Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize
...
with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
2016-11-20 09:13:40 +02:00
Serhiy Storchaka
06515833fe
Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize
...
with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
2016-11-20 09:13:07 +02:00
Serhiy Storchaka
f6f1591808
Issue #28715 : Added error checks for PyUnicode_AsUTF8().
2016-11-20 08:48:30 +02:00
Serhiy Storchaka
e20973926a
Issue #28715 : Added error checks for PyUnicode_AsUTF8().
2016-11-20 08:48:07 +02:00
Serhiy Storchaka
144f77a981
Issue #28715 : Added error checks for PyUnicode_AsUTF8().
2016-11-20 08:47:21 +02:00
Xavier de Gaye
002d61fea7
Issue #28746 : Merge 3.6
2016-11-19 16:20:31 +01:00
Xavier de Gaye
ec5d3cd533
Issue #28746 : Fix the set_inheritable() file descriptor method on platforms
...
that do not have the ioctl FIOCLEX and FIONCLEX commands
2016-11-19 16:19:29 +01:00
Serhiy Storchaka
29a5447360
Issue #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.
...
The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang.
2016-11-16 15:41:31 +02:00
Serhiy Storchaka
fab6acd9f5
Issue #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.
...
The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang.
2016-11-16 15:41:11 +02:00
Serhiy Storchaka
f5894dd646
Issue #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.
...
The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang.
2016-11-16 15:40:39 +02:00
Serhiy Storchaka
1a73bf365e
Issue #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.
...
The latter function is more readable, faster and doesn't raise exceptions.
2016-11-16 10:19:57 +02:00
Serhiy Storchaka
3b73ea1278
Issue #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.
...
The latter function is more readable, faster and doesn't raise exceptions.
2016-11-16 10:19:20 +02:00
Serhiy Storchaka
f4934ea77d
Issue #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.
...
The latter function is more readable, faster and doesn't raise exceptions.
2016-11-16 10:17:58 +02:00
Xavier de Gaye
afa94a5a3e
Issue #26920 : Merge 3.6
2016-11-16 07:26:10 +01:00
Xavier de Gaye
b445ad7b04
Issue #26920 : Fix not getting the locale's charset upon initializing the interpreter,
...
on platforms that do not have langinfo
2016-11-16 07:24:20 +01:00
Victor Stinner
d5f599a392
Merge 3.6
2016-11-15 09:12:36 +01:00
Victor Stinner
f9cca365c7
Fix warn_invalid_escape_sequence()
...
Issue #28691 : Fix warn_invalid_escape_sequence(): handle correctly
DeprecationWarning raised as an exception. First clear the current exception to
replace the DeprecationWarning exception with a SyntaxError exception.
Unit test written by Serhiy Storchaka.
2016-11-15 09:12:10 +01:00
Ned Deily
cf767ab4da
Issue #28676 : merge from 3.6
2016-11-12 16:39:52 -05:00
Ned Deily
7d895d3c37
Issue #28676 : merge from 3.5
2016-11-12 16:38:03 -05:00
Ned Deily
7ae4112649
Issue #28676 : Prevent missing 'getentropy' declaration warning on macOS.
...
Patch by Gareth Rees.
2016-11-12 16:35:48 -05:00
Raymond Hettinger
c32f9db846
Issue #28665 : Use macro form of PyCell_GET/SET
2016-11-12 04:10:35 -05:00
Raymond Hettinger
b2b154374d
merge
2016-11-11 04:32:11 -08:00
Raymond Hettinger
13527123a1
Issue #28665 : Harmonize STORE_DEREF with STORE_FAST and LOAD_DEREF giving a 40% speedup.
2016-11-11 04:31:18 -08:00
Victor Stinner
c6944e7edc
Issue #28618 : Make hot functions using __attribute__((hot))
...
When Python is not compiled with PGO, the performance of Python on call_simple
and call_method microbenchmarks depend highly on the code placement. In the
worst case, the performance slowdown can be up to 70%.
The GCC __attribute__((hot)) attribute helps to keep hot code close to reduce
the risk of such major slowdown. This attribute is ignored when Python is
compiled with PGO.
The following functions are considered as hot according to statistics collected
by perf record/perf report:
* _PyEval_EvalFrameDefault()
* call_function()
* _PyFunction_FastCall()
* PyFrame_New()
* frame_dealloc()
* PyErr_Occurred()
2016-11-11 02:13:35 +01:00
Victor Stinner
0cae609847
Use PyThreadState_GET() in performance critical code
...
It seems like _PyThreadState_UncheckedGet() is not inlined as expected, even
when using gcc -O3.
2016-11-11 01:43:56 +01:00
Yury Selivanov
228722ad20
Merge 3.6 (issue #26182 )
2016-11-08 16:54:39 -05:00
Yury Selivanov
1a9d687a49
Issue #26182 : Fix ia refleak in code that raises DeprecationWarning.
2016-11-08 16:54:18 -05:00
Serhiy Storchaka
818b5cc6db
Fixed possible abort in ceval loop if _PyUnicode_FromId() fails.
...
Every opcode should end with DISPATCH() or goto error.
2016-11-08 23:14:00 +02:00
Serhiy Storchaka
4678b2f448
Fixed possible abort in ceval loop if _PyUnicode_FromId() fails.
...
Every opcode should end with DISPATCH() or goto error.
2016-11-08 23:13:36 +02:00
Serhiy Storchaka
70b72f0f96
Fixed possible abort in ceval loop if _PyUnicode_FromId() fails.
...
Every opcode should end with DISPATCH() or goto error.
2016-11-08 23:12:46 +02:00
Yury Selivanov
0ee446c894
Merge 3.6 (issue #27243 )
2016-11-08 15:15:42 -05:00
Yury Selivanov
2edd8a1e2c
Issue #27243 : Change PendingDeprecationWarning -> DeprecationWarning.
...
As it was agreed in the issue, __aiter__ returning an awaitable
should result in PendingDeprecationWarning in 3.5 and in
DeprecationWarning in 3.6.
2016-11-08 15:13:07 -05:00
Eric V. Smith
9a8e569865
Merge from 3.6.
2016-11-07 17:57:48 -05:00
Eric V. Smith
9b88fdf4f0
Fixed issue #28633 : segfault when concatenating bytes literal and f-string.
2016-11-07 17:54:01 -05:00
Ned Deily
7d76c906f7
Issue #28616 : merge from 3.5
2016-11-04 17:07:06 -04:00
Ned Deily
da4887a88d
Issue #28616 : Correct help for sys.version_info releaselevel component.
...
Patch by Anish Tambe.
2016-11-04 17:03:34 -04:00
Eric V. Smith
5646648678
Issue 28128: Print out better error/warning messages for invalid string escapes. Backport to 3.6.
2016-10-31 14:46:26 -04:00
Ned Deily
e37c1cbf66
Issue #28616 : merge from 3.6
2016-11-04 17:07:47 -04:00
Eric V. Smith
42454af094
Issue 28128: Print out better error/warning messages for invalid string escapes.
2016-10-31 09:22:08 -04:00
Serhiy Storchaka
42bcbf76f7
Issue #28517 : Fixed of-by-one error in the peephole optimizer that caused
...
keeping unreachable code.
2016-10-25 09:32:04 +03:00
Serhiy Storchaka
7db3c48833
Issue #28517 : Fixed of-by-one error in the peephole optimizer that caused
...
keeping unreachable code.
2016-10-25 09:30:43 +03:00
Serhiy Storchaka
cb33a01bbc
Issue #28510 : Clean up decoding error handlers.
...
Since PyUnicodeDecodeError_GetObject() always returns bytes, following
PyBytes_AsString() can be replaced with PyBytes_AS_STRING().
2016-10-23 09:44:50 +03:00
Serhiy Storchaka
14ab277632
Issue #28410 : Added _PyErr_FormatFromCause() -- the helper for raising
...
new exception with setting current exception as __cause__.
_PyErr_FormatFromCause(exception, format, args...) is equivalent to Python
raise exception(format % args) from sys.exc_info()[1]
2016-10-21 17:10:42 +03:00
Serhiy Storchaka
467ab194fc
Issue #28410 : Added _PyErr_FormatFromCause() -- the helper for raising
...
new exception with setting current exception as __cause__.
_PyErr_FormatFromCause(exception, format, args...) is equivalent to Python
raise exception(format % args) from sys.exc_info()[1]
2016-10-21 17:09:17 +03:00
Serhiy Storchaka
c4189a04a8
Issue #28410 : Keep the traceback of original exception in _PyErr_ChainExceptions().
2016-10-21 16:21:02 +03:00