| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | bpo-31179: Make dict.copy() up to 5.5 times faster. (#3067) | Yury Selivanov | 2018-01-22 | 1 | -0/+73 | |
| | | ||||||
| * | bpo-31572: Get rid of _PyObject_HasAttrId() in dict and OrderedDict. (#3728) | Serhiy Storchaka | 2017-11-11 | 1 | -4/+13 | |
| | | | | | | Silence only AttributeError when get "key" and "items" attributes in the constructor and the update() method of dict and OrderedDict . | |||||
| * | Fix miscellaneous typos (#4275) | luzpaz | 2017-11-05 | 1 | -1/+1 | |
| | | ||||||
| * | bpo-31338 (#3374) | Barry Warsaw | 2017-09-15 | 1 | -12/+6 | |
| | | | | | | | | * Add Py_UNREACHABLE() as an alias to abort(). * Use Py_UNREACHABLE() instead of assert(0) * Convert more unreachable code to use Py_UNREACHABLE() * Document Py_UNREACHABLE() and a few other macros. | |||||
| * | bpo-30860: Consolidate stateful runtime globals. (#3397) | Eric Snow | 2017-09-08 | 1 | -0/+1 | |
| | | | | | | | | * group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py). | |||||
| * | bpo-31095: fix potential crash during GC (GH-2974) | INADA Naoki | 2017-08-24 | 1 | -0/+6 | |
| | | ||||||
| * | bpo-29304: Simplify dict lookup functions (GH-2407) | INADA Naoki | 2017-08-03 | 1 | -267/+130 | |
| | | | | | * remove hashpos parameter from lookdict functions. * remove many duplicated code from lookdict functions. | |||||
| * | bpo-29464: Rename METH_FASTCALL to METH_FASTCALL|METH_KEYWORDS and make (#1955) | Serhiy Storchaka | 2017-07-03 | 1 | -2/+2 | |
| | | | | | | the bare METH_FASTCALL be used for functions with positional-only parameters. | |||||
| * | bp-29304: Simplify dictobject.c (GH-2347) | INADA Naoki | 2017-06-24 | 1 | -6/+6 | |
| | | | | replace `(i << 2) + 1` with `i*5` | |||||
| * | bpo-29304: simplify lookdict_index() function. (GH-2273) | INADA Naoki | 2017-06-23 | 1 | -15/+6 | |
| | | ||||||
| * | bpo-27945: Fixed various segfaults with dict. (#1657) | Serhiy Storchaka | 2017-05-20 | 1 | -25/+43 | |
| | | | | | Based on patches by Duane Griffin and Tim Mitchell. | |||||
| * | bpo-29941: Assert fixes (#886) | T. Wouters | 2017-03-31 | 1 | -1/+1 | |
| | | | | | | | | | Make a non-Py_DEBUG, asserts-enabled build of CPython possible. This means making sure helper functions are defined when NDEBUG is not defined, not just when Py_DEBUG is defined. Also fix a division-by-zero in obmalloc.c that went unnoticed because in Py_DEBUG mode, elsize is never zero. | |||||
| * | Don't use Py_SIZE for dict object. (#747) | Serhiy Storchaka | 2017-03-21 | 1 | -1/+1 | |
| | | ||||||
| * | bpo-24274: fix erroneous comment in dictobject.c (GH-196) | INADA Naoki | 2017-02-20 | 1 | -1/+2 | |
| | | | | | lookdict_unicode() and lookdict_unicode_nodummy() may raise exception when key is not unicode. | |||||
| * | bpo-29438: fixed use-after-free in key sharing dict (#17) | INADA Naoki | 2017-02-12 | 1 | -3/+7 | |
| | | ||||||
| * | Issue #29311: Regenerate Argument Clinic. | Serhiy Storchaka | 2017-02-04 | 1 | -1/+1 | |
| | | ||||||
| * | Issues #29311, #29289: Fixed and improved docstrings for dict and OrderedDict | Serhiy Storchaka | 2017-01-24 | 1 | -8/+10 | |
| | | | | | methods. | |||||
| * | Issue #29311: Argument Clinic generates reasonable name for the parameter ↵ | Serhiy Storchaka | 2017-01-19 | 1 | -8/+9 | |
| | | | | | "default". | |||||
| * | Add a note explaining why dict_update() doesn't use METH_FASTCALL | Victor Stinner | 2017-01-19 | 1 | -0/+3 | |
| | | | | | Issue #29312. | |||||
| * | dict.get() and dict.setdefault() now use AC | Victor Stinner | 2017-01-19 | 1 | -24/+29 | |
| | | | | | | | | | | | | Issue #29311: dict.get() and dict.setdefault() methods now use Argument Clinic to parse arguments. Their calling convention changes from METH_VARARGS to METH_FASTCALL which avoids the creation of a temporary tuple. The signature of docstrings is also enhanced. For example, get(...) becomes: get(self, key, default=None, /) | |||||
| * | Issue #28969: Fixed race condition in C implementation of functools.lru_cache. | Serhiy Storchaka | 2017-01-12 | 1 | -8/+23 | |
| |\ | | | | | | | | | KeyError could be raised when cached function with full cache was simultaneously called from differen threads with the same uncached arguments. | |||||
| | * | Issue #28969: Fixed race condition in C implementation of functools.lru_cache. | Serhiy Storchaka | 2017-01-12 | 1 | -8/+23 | |
| | |\ | | | | | | | | | | | | | KeyError could be raised when cached function with full cache was simultaneously called from differen threads with the same uncached arguments. | |||||
| | | * | Issue #28969: Fixed race condition in C implementation of functools.lru_cache. | Serhiy Storchaka | 2017-01-12 | 1 | -8/+23 | |
| | | | | | | | | | | | | | | | | KeyError could be raised when cached function with full cache was simultaneously called from differen threads with the same uncached arguments. | |||||
| * | | | Issue #28427: old keys should not remove new values from | Antoine Pitrou | 2016-12-27 | 1 | -16/+74 | |
| |\ \ \ | |/ / | | | | | | | WeakValueDictionary when collecting from another thread. | |||||
| | * | | Issue #28427: old keys should not remove new values from | Antoine Pitrou | 2016-12-27 | 1 | -17/+74 | |
| | |\ \ | | |/ | | | | | | | WeakValueDictionary when collecting from another thread. | |||||
| | | * | Issue #28427: old keys should not remove new values from | Antoine Pitrou | 2016-12-27 | 1 | -25/+56 | |
| | | | | | | | | | | | | | WeakValueDictionary when collecting from another thread. | |||||
| | | * | Issue #28147: Fix a memory leak in split-table dictionaries | INADA Naoki | 2016-12-20 | 1 | -6/+15 | |
| | | | | | | | | | | | | | setattr() must not convert combined table into split table. | |||||
| | | * | Issue #28189: dictitems_contains no longer swallows compare errors. | Raymond Hettinger | 2016-09-19 | 1 | -1/+1 | |
| | | | | | | | | | | | | | (Patch by Xiang Zhang) | |||||
| * | | | Merge 3.6 | Victor Stinner | 2016-12-15 | 1 | -5/+22 | |
| |\ \ \ | |/ / | ||||||
| | * | | Fix a memory leak in split-table dictionaries | Victor Stinner | 2016-12-15 | 1 | -5/+22 | |
| | | | | | | | | | | | | | | | | | | | | | | Issue #28147: Fix a memory leak in split-table dictionaries: setattr() must not convert combined table into split table. Patch written by INADA Naoki. | |||||
| | * | | Issue #28731: Optimize _PyDict_NewPresized() to create correct size dict. | INADA Naoki | 2016-12-07 | 1 | -5/+19 | |
| | | | | | | | | | | | | | Improve speed of dict literal with constant keys up to 30%. | |||||
| * | | | Issue #28818: Simplify lookdict functions | INADA Naoki | 2016-12-07 | 1 | -122/+94 | |
| | | | | ||||||
| * | | | Use _PyObject_CallNoArg() | Victor Stinner | 2016-12-06 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | Replace: PyObject_CallObject(callable, NULL) with: _PyObject_CallNoArg(callable) | |||||
| * | | | Backed out changeset b9c9691c72c5 | Victor Stinner | 2016-12-04 | 1 | -1/+2 | |
| | | | | | | | | | | | | | | | | | | | Issue #28858: The change b9c9691c72c5 introduced a regression. It seems like _PyObject_CallArg1() uses more stack memory than PyObject_CallFunctionObjArgs(). | |||||
| * | | | Replace PyObject_CallFunctionObjArgs() with fastcall | Victor Stinner | 2016-12-01 | 1 | -2/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func) * PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg) PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires extra work to "parse" C arguments to build a C array of PyObject*. _PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate memory on the C stack. This change is part of the fastcall project. The change on listsort() is related to the issue #23507. | |||||
| * | | | Issue #28731: Optimize _PyDict_NewPresized() to create correct size dict | INADA Naoki | 2016-11-21 | 1 | -5/+19 | |
| | | | | | | | | | | | | | Improve speed of dict literal with constant keys up to 30%. | |||||
| * | | | Issue #28618: Mark dict lookup functions as hot | Victor Stinner | 2016-11-15 | 1 | -4/+4 | |
| | | | | | | | | | | | | | It's common to see these functions in the top 3 of "perf report". | |||||
| * | | | Use PyThreadState_GET() in performance critical code | Victor Stinner | 2016-11-11 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | It seems like _PyThreadState_UncheckedGet() is not inlined as expected, even when using gcc -O3. | |||||
| * | | | Issue #28199: Microoptimized dict resizing. Based on patch by Naoki Inada. | Serhiy Storchaka | 2016-10-29 | 1 | -60/+63 | |
| | | | | ||||||
| * | | | Issue #28123: _PyDict_GetItem_KnownHash() now can raise an exception as | Serhiy Storchaka | 2016-11-06 | 1 | -26/+22 | |
| |\ \ \ | |/ / | | | | | | | PyDict_GetItemWithError(). Patch by Xiang Zhang. | |||||
| | * | | Issue #28123: _PyDict_GetItem_KnownHash() now can raise an exception as | Serhiy Storchaka | 2016-11-06 | 1 | -26/+22 | |
| | | | | | | | | | | | | | PyDict_GetItemWithError(). Patch by Xiang Zhang. | |||||
| * | | | Issue #28580: Optimize iterating split table values. | INADA Naoki | 2016-11-04 | 1 | -37/+25 | |
| | | | | | | | | | | | | | Patch by Xiang Zhang. | |||||
| * | | | Issue #28583: PyDict_SetDefault didn't combine split table when needed. | INADA Naoki | 2016-11-02 | 1 | -15/+45 | |
| |\ \ \ | |/ / | | | | | | | Patch by Xiang Zhang. | |||||
| | * | | Issue #28583: PyDict_SetDefault didn't combine split table when needed. | INADA Naoki | 2016-11-02 | 1 | -15/+45 | |
| | | | | | | | | | | | | | Patch by Xiang Zhang. | |||||
| * | | | Merge from 3.6. | Serhiy Storchaka | 2016-10-31 | 1 | -63/+60 | |
| |\ \ \ | |/ / | ||||||
| | * | | Backed out changeset 6b88dfc7b25d | Serhiy Storchaka | 2016-10-31 | 1 | -63/+60 | |
| | | | | ||||||
| * | | | Issue #28199: Microoptimized dict resizing. Based on patch by Naoki Inada. | Serhiy Storchaka | 2016-10-29 | 1 | -60/+63 | |
| |\ \ \ | |/ / | ||||||
| | * | | Issue #28199: Microoptimized dict resizing. Based on patch by Naoki Inada. | Serhiy Storchaka | 2016-10-29 | 1 | -60/+63 | |
| | | | | ||||||
| * | | | Merge 3.6 (issue #28544) | Yury Selivanov | 2016-10-28 | 1 | -2/+6 | |
| |\ \ \ | |/ / | ||||||
| | * | | Issue #28544: Pass `PyObject*` to _PyDict_Pop, not `PyDictObject*` | Yury Selivanov | 2016-10-28 | 1 | -2/+6 | |
| | | | | ||||||
