[proxy] github.com← back | site home | direct (HTTPS) ↗ | proxy home | ◑ dark◐ light

bpo-29548: Recommend PyObject_Call APIs over PyEval_Call APIs. by methane · Pull Request #75 · python/cpython

methane

methane changed the title bpo-29548: deprecate PyEval_Call APIs. bpo-29548: Stop using PyEval_Call* APIs.

Feb 14, 2017

methane changed the title bpo-29548: Stop using PyEval_Call* APIs. bpo-29548: Recomend PyObject_Call APIs over PyEval_Call* APIs.

Feb 16, 2017

ncoghlan changed the title bpo-29548: Recomend PyObject_Call APIs over PyEval_Call* APIs. bpo-29548: Recommend PyObject_Call APIs over PyEval_Call* APIs.

Feb 19, 2017

Closed

methane changed the title bpo-29548: Recommend PyObject_Call APIs over PyEval_Call* APIs. bpo-29548: Recommend PyObject_Call APIs over PyEval_Call APIs.

Mar 1, 2017

PyEval_Call* APIs are not documented and they doesn't respect PY_SSIZE_T_CLEAN.
So add comment block to recommend PyObject_Call* APIs where they are declared.

This commit also changes PyEval_CallMethod and PyEval_CallFunction
implementation same to PyObject_CallMethod and PyObject_CallFunction
to reduce future maintenance cost.  Optimization to avoid temporary
tuple are copied too.

PyEval_CallFunction(callable, "i", (int)i) now calls callable(i) instead of
raising TypeError.  But accepting this edge case is backward compatible.

methane deleted the deprecate-evalcall branch

March 14, 2017 09:01

Closed

jaraco pushed a commit that referenced this pull request

Dec 2, 2022

oraluben pushed a commit to oraluben/cpython that referenced this pull request

Jul 15, 2023
Co-authored-by: Jules <julia.poo.poo.poo@gmail.com>

Closed

lysnikolaou referenced this pull request in lysnikolaou/cpython

May 1, 2024
Stay at eol when moving up/down

Closed

This was referenced

Feb 11, 2025

Open

Closed

Open