summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* bpo-30592: Fixed error messages for some builtins. (#1996)Serhiy Storchaka2017-06-081-3/+3
| | | | | Error messages when pass keyword arguments to some builtins that don't support keyword arguments contained double parenthesis: "()()". The regression was introduced by bpo-30534.
* bpo-30598: _PySys_EndInit() now duplicates warnoptions (#1998)Victor Stinner2017-06-081-4/+4
| | | | | | | | | | | | | Fix a reference in subinterpreters, like test_callbacks_leak() of test_atexit. warnoptions is a list used to pass options from the command line to the sys module constructor. Before this change, the list was shared by multiple interpreter which is not the expected behaviour. Each interpreter should have their own independent mutable world. This change duplicates the list in each interpreter. So each interpreter owns its own list, so each interpreter can clear its own list.
* bpo-30547: Fix multiple reference leaks (#1995)Stéphane Wirtel2017-06-081-1/+4
| | | | | | | | Fix regressions introduced by: - bpo-22257: commits 1abcf6700b4da6207fe859de40c6c1bada6b4fec and 6b4be195cd8868b76eb6fbe166acc39beee8ce36 Co-Authored-By: Victor Stinner <victor.stinner@gmail.com> Co-Authored-By: Louie Lu <git@louie.lu>
* bpo-30534: Fixed error messages when pass keyword arguments (#1901)Serhiy Storchaka2017-06-061-16/+32
| | | | | | | to functions implemented in C that don't support this. Also unified error messages for functions that don't take positional or keyword arguments.
* bpo-30567: Fix refleak in sys.getwindowsversion (#1940)Segev Finer2017-06-041-4/+4
|
* Add reference to help('FORMATTING') in format() builtin (GH-166)Amit Kumar2017-05-292-4/+8
|
* bpo-16500: Use register_at_fork() in the threading module (#1843)Antoine Pitrou2017-05-281-18/+0
| | | | | | * bpo-16500: Use register_at_fork() in the threading module * Update comment at top of _after_fork()
* Doc nits for bpo-16500 (#1841)Antoine Pitrou2017-05-284-7/+7
| | | | | | * Doc nits for bpo-16500 * Fix more references
* bpo-16500: Allow registering at-fork handlers (#1715)Antoine Pitrou2017-05-271-0/+10
| | | | | | | | | | | | * bpo-16500: Allow registering at-fork handlers * Address Serhiy's comments * Add doc for new C API * Add doc for new Python-facing function * Add NEWS entry + doc nit
* Drop a duplicate line. (#1809)Eric Snow2017-05-251-2/+1
|
* Delete sigcheck.c since it appears unused (#1723)Segev Finer2017-05-251-19/+0
|
* bpo-29104: Fixed parsing backslashes in f-strings. (#490)Serhiy Storchaka2017-05-251-21/+32
|
* bpo-22257: Private C-API for main interpreter initialization (PEP 432). (#1729)Eric Snow2017-05-242-15/+75
| | | (patch by Nick Coghlan)
* bpo-22257: Private C-API for core runtime initialization (PEP 432). (#1772)Eric Snow2017-05-242-45/+185
| | | (patch by Nick Coghlan)
* Improves test_underpth_nosite_file to reveal why it fails. (#1763)Steve Dower2017-05-231-1/+6
| | | | | | | | | | | | | | * Improves test_underpth_nosite_file to reveal why it fails. * Enable building with Windows 10 SDK. * Fix WinSDK detection * Fix initialization on Windows when a ._pth file exists. * Fix tabs * Adds comment about Py_GetPath call.
* Update importlib.h (GH-1762)Zachary Ware2017-05-231-2/+2
|
* bpo-22257: Small changes for PEP 432. (#1728)Eric Snow2017-05-235-1850/+1960
| | | PEP 432 specifies a number of large changes to interpreter startup code, including exposing a cleaner C-API. The major changes depend on a number of smaller changes. This patch includes all those smaller changes.
* bpo-29102: Add a unique ID to PyInterpreterState. (#1639)Eric Snow2017-05-232-0/+38
|
* bpo-30395 _PyGILState_Reinit deadlock fix (#1734)Jason Fried2017-05-221-0/+4
| | | | head_lock could be held by another thread when fork happened. We should reset it to avoid deadlock.
* bpo-30039: Don't run signal handlers while resuming a yield from stack (#1081)Nathaniel J. Smith2017-05-171-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we have a chain of generators/coroutines that are 'yield from'ing each other, then resuming the stack works like: - call send() on the outermost generator - this enters _PyEval_EvalFrameDefault, which re-executes the YIELD_FROM opcode - which calls send() on the next generator - which enters _PyEval_EvalFrameDefault, which re-executes the YIELD_FROM opcode - ...etc. However, every time we enter _PyEval_EvalFrameDefault, the first thing we do is to check for pending signals, and if there are any then we run the signal handler. And if it raises an exception, then we immediately propagate that exception *instead* of starting to execute bytecode. This means that e.g. a SIGINT at the wrong moment can "break the chain" – it can be raised in the middle of our yield from chain, with the bottom part of the stack abandoned for the garbage collector. The fix is pretty simple: there's already a special case in _PyEval_EvalFrameEx where it skips running signal handlers if the next opcode is SETUP_FINALLY. (I don't see how this accomplishes anything useful, but that's another story.) If we extend this check to also skip running signal handlers when the next opcode is YIELD_FROM, then that closes the hole – now the exception can only be raised at the innermost stack frame. This shouldn't have any performance implications, because the opcode check happens inside the "slow path" after we've already determined that there's a pending signal or something similar for us to process; the vast majority of the time this isn't true and the new check doesn't run at all.
* bpo-30281: Fix the default value for stop in PySlice_Unpack() (#1480)Xiang Zhang2017-05-101-1/+1
|
* bpo-30024: Circular imports involving absolute imports with binding (#1264)Serhiy Storchaka2017-05-091-2/+2
| | | a submodule to a name are now supported.
* bpo-30279: Remove unused Python/thread_foobar.h (#1473)Masayuki Yamamoto2017-05-052-138/+0
| | | | | | Python/thread_foobar.h is the template code that is threading adaptation for new platforms, also hasn't been used on actual platforms. Python/thread_*.h give concrete examples of adaptation instead of the template code.
* bpo-30225: Fix is_valid_fd() on macOS Tiger (#1443)Victor Stinner2017-05-031-0/+9
| | | | | is_valid_fd() now uses fstat() instead of dup() on macOS to return 0 on a pipe when the other side of the pipe is closed. fstat() fails with EBADF in that case, whereas dup() succeed.
* bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() (#1096)Serhiy Storchaka2017-04-191-1/+2
| | | | | | raised an error. Replace them with using concrete types API that never fails if appropriate.
* bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051)Serhiy Storchaka2017-04-161-1406/+1406
|
* bpo-29838: Add asserts for checking results of sq_length and mq_length ↵Serhiy Storchaka2017-04-161-1/+3
| | | | | | slots. (#700) Negative result should be returned only when an error is set.
* bpo-29951: Include function name for some error messages in ↵Michael Seifert2017-04-091-22/+42
| | | | | | | `PyArg_ParseTuple*` (#916) Also changed format specifier for function name from "%s" to "%.200s" and exception messages should start with lowercase letter.
* bpo-29935: Fixed error messages in the index() method of tuple, list and ↵Serhiy Storchaka2017-03-301-7/+16
| | | | | deque (#887) when pass indices of wrong type.
* bpo-29852: Argument Clinic Py_ssize_t converter now supports None (#716)Serhiy Storchaka2017-03-301-0/+25
| | | if pass `accept={int, NoneType}`.
* bpo-29878: Add global instances of int for 0 and 1. (#852)Serhiy Storchaka2017-03-302-31/+7
|
* bpo-6532: Make the thread id an unsigned integer. (#781)Serhiy Storchaka2017-03-238-45/+47
| | | | | | | | | | | * bpo-6532: Make the thread id an unsigned integer. From C API side the type of results of PyThread_start_new_thread() and PyThread_get_thread_ident(), the id parameter of PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState changed from "long" to "unsigned long". * Restore a check in thread_get_ident().
* bpo-29859: Fix error messages from return codes for pthread_* calls (GH-741)Daniel Birnstiel2017-03-211-11/+13
|
* bpo-29865: Use PyXXX_GET_SIZE macros rather than Py_SIZE for concrete types. ↵Serhiy Storchaka2017-03-211-1/+1
| | | | (#748)
* bpo-29849: fix a memory leak in import_from (GH-712)Xiang Zhang2017-03-211-10/+17
|
* bpo-29748: Added the slice index converter in Argument Clinic. (#549)Serhiy Storchaka2017-03-191-0/+7
|
* bpo-8256: Fixed possible failing or crashing input() (#517)Serhiy Storchaka2017-03-121-5/+16
| | | | | if attributes "encoding" or "errors" of sys.stdin or sys.stdout are not set or are not strings.
* bpo-24037: Add Argument Clinic converter `bool(accept={int})`. (#485)Serhiy Storchaka2017-03-121-2/+2
|
* bpo-20185: Convert the marshal module to Argument Clinic. (#541)Serhiy Storchaka2017-03-122-67/+229
| | | Based on patch by Vajrasky Kok.
* bpo-29746: Update marshal docs to Python 3. (#547)Serhiy Storchaka2017-03-121-14/+12
|
* bpo-29770: remove outdated PYO related info (GH-590)Xiang Zhang2017-03-111-1/+1
|
* bpo-29619: Convert st_ino using unsigned integer (#557)Victor Stinner2017-03-091-2/+2
| | | | bpo-29619: os.stat() and os.DirEntry.inodeo() now convert inode (st_ino) using unsigned integers.
* Use Py_RETURN_FALSE/Py_RETURN_TRUE rather than ↵Serhiy Storchaka2017-03-081-1/+1
| | | | PyBool_FromLong(0)/PyBool_FromLong(1). (#567)
* bpo-29676: fix lsprof can't profile C method call. (GH523)INADA Naoki2017-03-071-1/+14
| | | | | | | | | | When LOAD_METHOD is used for calling C mehtod, PyMethodDescrObject was passed to profilefunc from 5566bbb. But lsprof traces only PyCFunctionObject. Additionally, there can be some third party extension which assumes passed arg is PyCFunctionObject without calling PyCFunction_Check(). So make PyCFunctionObject from PyMethodDescrObject when tstate->c_profilefunc is set.
* bpo-27593: Get SCM build info from git instead of hg. (#446)Ned Deily2017-03-041-3/+3
| | | | | | | sys.version and the platform module python_build(), python_branch(), and python_revision() functions now use git information rather than hg when building from a repo. Based on original patches by Brett Cannon and Steve Dower.
* bpo-28893: Set __cause__ for errors in async iteration protocol (#407)Yury Selivanov2017-03-031-3/+3
|
* bpo-29655: Fixed possible reference leaks in `import *`. (#301)Matthias Bussonnier2017-02-261-1/+4
| | | Patch by Matthias Bussonnier.
* bpo-29622: Make AST constructor to accept less than enough number of ↵INADA Naoki2017-02-231-19/+17
| | | | | | | | | | | positional arguments (GH-249) bpo-29463 added optional "docstring" field to 4 AST types. While it is optional, it breaks backward compatibility because AST constructor requires number of positional argument is same to number of fields. AST types accepts empty arguments, and incomplete keyword arguments. But it's not big problem because field can be filled after creation, and checked when compiling. So stop requiring complete set of fields for positional arguments too.
* bpo-28598: Support __rmod__ for RHS subclasses of str in % string formatting ↵Martijn Pieters2017-02-231-3/+9
| | | | | | | | operations (#51) When you use `'%s' % SubClassOfStr()`, where `SubClassOfStr.__rmod__` exists, the reverse operation is ignored as normally such string formatting operations use the `PyUnicode_Format()` fast path. This patch tests for subclasses of `str` first and picks the slow path in that case. Patch by Martijn Pieters.
* bpo-29463: Add docstring field to some AST nodes. (#46)INADA Naoki2017-02-226-2945/+3012
| | | | | | | | | | | * bpo-29463: Add docstring field to some AST nodes. ClassDef, ModuleDef, FunctionDef, and AsyncFunctionDef has docstring field for now. It was first statement of there body. * fix document. thanks travis! * doc fixes