GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-106320: Move private _PyGen API to the internal C API by vstinner · Pull Request #107032 · python/cpython

Conversation

@vstinner

@vstinner vstinner commented Jul 22, 2023 •
edited by bedevere-bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Move private _PyGen API to internal C API:

  • _PyAsyncGenAThrow_Type
  • _PyAsyncGenWrappedValue_Type
  • _PyCoroWrapper_Type
  • _PyGen_FetchStopIterationValue()
  • _PyGen_Finalize()
  • _PyGen_SetStopIterationValue()

No longer these symbols, except of the ones by the _asyncio shared extensions.

  • Issue: C API: Remove private C API functions (move them to the internal C API) #106320

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@vstinner
pythongh-106320: Move private _PyGen API to the internal C API
e2f432c
Move private _PyGen API to internal C API:

* _PyAsyncGenAThrow_Type
* _PyAsyncGenWrappedValue_Type
* _PyCoroWrapper_Type
* _PyGen_FetchStopIterationValue()
* _PyGen_Finalize()
* _PyGen_SetStopIterationValue()

No longer these symbols, except of the ones by the _asyncio shared
extensions.
@vstinner vstinner added the skip news label Jul 22, 2023
@vstinner
vstinner requested a review from markshannon as a code owner July 22, 2023 13:54
@bedevere-bot bedevere-bot added the awaiting core review label Jul 22, 2023
@bedevere-bot bedevere-bot mentioned this pull request Jul 22, 2023
C API: Remove private C API functions (move them to the internal C API) #106320
Closed
@vstinner
vstinner enabled auto-merge (squash) July 22, 2023 14:04
@vstinner
vstinner merged commit ae8b114 into python:main Jul 22, 2023
@bedevere-bot bedevere-bot removed the awaiting core review label Jul 22, 2023
@vstinner
vstinner deleted the internal_gen_types branch July 22, 2023 14:47
@rdb

rdb commented Aug 4, 2023

Copy link
Copy Markdown

If _PyGen_FetchStopIterationValue is no longer public, what is the supported replacement we should use in our project?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

rdb added a commit to panda3d/panda3d that referenced this pull request Aug 5, 2023
@rdb
event: Replace _PyGen_FetchStopIterationValue in Python 3.13+
0bc290e
See python/cpython#106320 and python/cpython#107032

Closes #1526
@vstinner

vstinner commented Aug 16, 2023

Copy link
Copy Markdown
Member Author

@rdb:

If _PyGen_FetchStopIterationValue is no longer public, what is the supported replacement we should use in our project?

Would you mind to open a new issue to request a public replacement function? Please explain how you use this function, and how existing API is not enough.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@rdb

rdb commented Aug 26, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

@vstinner We've switched to using PyErr_GetRaisedException() and extracting the value from there (see this commit), so as long as the structure of PyStopIterationObject remains part of the public ABI, I think we're good.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner

vstinner commented Aug 26, 2023

Copy link
Copy Markdown
Member Author

When can add a public function. Just open an issue to ask for it, so we can discuss the issue and decide if it's worth it

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@rdb

rdb commented Aug 26, 2023

Copy link
Copy Markdown

It's not necessary, unless you're telling me that PyStopIterationObject is going to become opaque in the future.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

lachbr pushed a commit to toontownretro/panda that referenced this pull request Feb 17, 2024
@rdb
event: Replace _PyGen_FetchStopIterationValue in Python 3.13+
043417b
See python/cpython#106320 and python/cpython#107032

Closes #1526
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@markshannon markshannon Awaiting requested review from markshannon markshannon is a code owner

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

skip news

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@vstinner @rdb @bedevere-bot
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.