Skip to content

gh-106023: Update What's New in 3.13: _PyObject_FastCall() #117633

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 8, 2024

Conversation

vstinner
Copy link
Member

@vstinner vstinner commented Apr 8, 2024

The function _PyObject_FastCall() was restored.
@bedevere-app bedevere-app bot added docs Documentation in the Doc dir awaiting core review labels Apr 8, 2024
@vstinner vstinner changed the title 106023: Update What's New in 3.13: _PyObject_FastCall() gh-106023: Update What's New in 3.13: _PyObject_FastCall() Apr 8, 2024
@vstinner vstinner enabled auto-merge (squash) April 8, 2024 12:15
@vstinner vstinner merged commit 9a12f5d into python:main Apr 8, 2024
29 checks passed
@vstinner vstinner deleted the whatsnew branch April 8, 2024 12:19
@gvanrossum
Copy link
Member

@vstinner Are you sure that function was restored? I don't see it in my repo (I see _PyObject_FastCallDict though).

@vstinner
Copy link
Member Author

vstinner commented Apr 9, 2024

Oh, wait. I was confused between _PyObject_FastCall() and _PyObject_FastCallDict() :-(

I checked each function since I was really confused about these removals and changes.

Removed, private:

  • _PyObject_FastCall()
  • _PY_FASTCALL_SMALL_STACK: moved to the internal C API

Removed, internal:

  • _PyObject_FastCallTstate()
  • _PyObject_FastCallDictTstate(): renamed to _PyObject_VectorcallDictTstate()

Kept:

  • METH_FASTCALL
  • _PyStack_AsDict()

Kept, PEP 590:

  • _PyObject_Vectorcall()
  • _PyObject_VectorcallMethod()
  • _PyVectorcall_Function()
  • _PyObject_CallOneArg()
  • _PyObject_CallMethodNoArgs()
  • _PyObject_CallMethodOneArg()
  • _PyObject_FastCallDict()
  • _Py_TPFLAGS_HAVE_VECTORCALL

vstinner added a commit to vstinner/cpython that referenced this pull request Apr 9, 2024
…l() (python#117633)"

This reverts commit 9a12f5d.

I was wrong: the _PyObject_FastCall() function was removed. But we
kept the _PyObject_FastCallDict() function.
@vstinner
Copy link
Member Author

vstinner commented Apr 9, 2024

I wrote PR gh-117676 to add again the What's New entry. Even if it's a private function, I prefer to document how to update affected code for this very specific function, since I know that it's used in the wild.

vstinner added a commit that referenced this pull request Apr 9, 2024
…117633)" (#117676)

This reverts commit 9a12f5d.

I was wrong: the _PyObject_FastCall() function was removed. But we
kept the _PyObject_FastCallDict() function.
diegorusso pushed a commit to diegorusso/cpython that referenced this pull request Apr 17, 2024
diegorusso pushed a commit to diegorusso/cpython that referenced this pull request Apr 17, 2024
…l() (python#117633)" (python#117676)

This reverts commit 9a12f5d.

I was wrong: the _PyObject_FastCall() function was removed. But we
kept the _PyObject_FastCallDict() function.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir skip news
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants