GeezerVison is showing github.com — [3.12] gh-105020: Share tp_bases and tp_mro Between Interpreters For All Static Builtin Types (gh-105115) by miss-islington · Pull Request #105124 · python/cpython
Conversation
miss-islington
commented
May 31, 2023
•
edited by bedevere-bot
Loading
Uh oh!
There was an error while loading. Please reload this page.
In gh-103912 we added tp_bases and tp_mro to each PyInterpreterState.types.builtins entry. However, doing so ignored the fact that both PyTypeObject fields are public API, and not documented as internal (as opposed to tp_subclasses). We address that here by reverting back to shared objects, making them immortal in the process.
(cherry picked from commit 7be667d)
Co-authored-by: Eric Snow [email protected]
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
…ll Static Builtin Types (pythongh-105115)
In pythongh-103912 we added tp_bases and tp_mro to each PyInterpreterState.types.builtins entry. However, doing so ignored the fact that both PyTypeObject fields are public API, and not documented as internal (as opposed to tp_subclasses). We address that here by reverting back to shared objects, making them immortal in the process.
(cherry picked from commit 7be667d)
Co-authored-by: Eric Snow <[email protected]>
This was referenced May 31, 2023
|
@Yhg1s, what do I need to do to fix the ABI check? It's a false positive.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
@Yhg1s, what do I need to do to fix the ABI check? It's a false positive.
As the failed check says:
The up to date ABI file should be attached to this build as an artifact.
To learn more about this check: https://devguide.python.org/setup/#regenerate-the-abi-dump
@zooba recently merged support for the CI check to produce the necessary artifact (#105088) but I don't think the devguide has been updated yet. (You may need to update the branch to get the updated check?)
For the record, the failure is not a false positive, it's just a change in the ABI that is okay (because all direct use of the changed struct is internal-only)
|
ericsnowcurrently reacted with thumbs up emoji
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
zooba
commented
Jun 1, 2023
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
The devguide has a mention now, but not step-by-step instructions (which would probably require screenshots of the GitHub UI that would likely go out of date and are probably too big for the doc page).
When the PR check fails, the associated run will have the updated ABI file attached as an artifact. After release manager approval, you can download and add this file into your PR to pass the check.
(Worth pointing out that "the PR check" has already been mentioned in the section, so it's not being newly introduced in the new text.)
Only trick seems to be that the artifacts are listed on the Summary page, not the specific check that published it. Perhaps we can figure out how to infer the URL to the summary page and add a link in that message? In this case, it'd be https://github.com/python/cpython/actions/runs/5127462177?pr=105124#artifacts.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Changes to _PyRuntime caused the ABI check to fail. We're okay to move forward since the *public* ABI wasn't touched.
|
@zooba I was able to use that artifact, which saved me a bunch of work. Thanks!
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Reviewers
Yhg1s
Awaiting requested review from Yhg1s
Uh oh!
There was an error while loading. Please reload this page.
Assignees
No one assigned
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.
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.
|