GeezerVison is showing github.com — gh-93274: Expose receiving vectorcall in the Limited API by encukou · Pull Request #95717 · python/cpython
Conversation
encukou
commented
Aug 5, 2022
•
edited by bedevere-bot
Loading
Uh oh!
There was an error while loading. Please reload this page.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
erlend-aasland reacted with rocket emoji
|
This looks great. Leaving tp_call unchanged sounds fine as long as PyVectorcall_Call is available as a stable API-exported symbol.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, with minor nits!
BTW, in Modules/_testcapi/vectorcall_limited.c, everything but _PyTestCapi_Init_VectorcallLimited method can be made static. Not that it matters much for a test module, though.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
|
}
|
|
|
|
|
|
// Export for the stable ABI
|
|
|
#undef PyVectorcall_NARGS(n)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
#undef PyVectorcall_NARGS(n) |
|
#undef PyVectorcall_NARGS |
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️
Hi! The buildbot AMD64 Arch Linux TraceRefs 3.x has failed when building commit 656dad7.
What do you need to do:
- Don't panic.
- Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
- Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/484/builds/1920) and take a look at the build logs.
- Check if the failure is related to this commit (656dad7) or if it is a false positive.
- If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.
You can take a look at the buildbot page here:
https://buildbot.python.org/all/#builders/484/builds/1920
Summary of the results of the build (if available):
Click to see traceback logs
remote: Enumerating objects: 827, done.
remote: Counting objects: 0% (1/504)
remote: Counting objects: 1% (6/504)
remote: Counting objects: 2% (11/504)
remote: Counting objects: 3% (16/504)
remote: Counting objects: 4% (21/504)
remote: Counting objects: 5% (26/504)
remote: Counting objects: 6% (31/504)
remote: Counting objects: 7% (36/504)
remote: Counting objects: 8% (41/504)
remote: Counting objects: 9% (46/504)
remote: Counting objects: 10% (51/504)
remote: Counting objects: 11% (56/504)
remote: Counting objects: 12% (61/504)
remote: Counting objects: 13% (66/504)
remote: Counting objects: 14% (71/504)
remote: Counting objects: 15% (76/504)
remote: Counting objects: 16% (81/504)
remote: Counting objects: 17% (86/504)
remote: Counting objects: 18% (91/504)
remote: Counting objects: 19% (96/504)
remote: Counting objects: 20% (101/504)
remote: Counting objects: 21% (106/504)
remote: Counting objects: 22% (111/504)
remote: Counting objects: 23% (116/504)
remote: Counting objects: 24% (121/504)
remote: Counting objects: 25% (126/504)
remote: Counting objects: 26% (132/504)
remote: Counting objects: 27% (137/504)
remote: Counting objects: 28% (142/504)
remote: Counting objects: 29% (147/504)
remote: Counting objects: 30% (152/504)
remote: Counting objects: 31% (157/504)
remote: Counting objects: 32% (162/504)
remote: Counting objects: 33% (167/504)
remote: Counting objects: 34% (172/504)
remote: Counting objects: 35% (177/504)
remote: Counting objects: 36% (182/504)
remote: Counting objects: 37% (187/504)
remote: Counting objects: 38% (192/504)
remote: Counting objects: 39% (197/504)
remote: Counting objects: 40% (202/504)
remote: Counting objects: 41% (207/504)
remote: Counting objects: 42% (212/504)
remote: Counting objects: 43% (217/504)
remote: Counting objects: 44% (222/504)
remote: Counting objects: 45% (227/504)
remote: Counting objects: 46% (232/504)
remote: Counting objects: 47% (237/504)
remote: Counting objects: 48% (242/504)
remote: Counting objects: 49% (247/504)
remote: Counting objects: 50% (252/504)
remote: Counting objects: 51% (258/504)
remote: Counting objects: 52% (263/504)
remote: Counting objects: 53% (268/504)
remote: Counting objects: 54% (273/504)
remote: Counting objects: 55% (278/504)
remote: Counting objects: 56% (283/504)
remote: Counting objects: 57% (288/504)
remote: Counting objects: 58% (293/504)
remote: Counting objects: 59% (298/504)
remote: Counting objects: 60% (303/504)
remote: Counting objects: 61% (308/504)
remote: Counting objects: 62% (313/504)
remote: Counting objects: 63% (318/504)
remote: Counting objects: 64% (323/504)
remote: Counting objects: 65% (328/504)
remote: Counting objects: 66% (333/504)
remote: Counting objects: 67% (338/504)
remote: Counting objects: 68% (343/504)
remote: Counting objects: 69% (348/504)
remote: Counting objects: 70% (353/504)
remote: Counting objects: 71% (358/504)
remote: Counting objects: 72% (363/504)
remote: Counting objects: 73% (368/504)
remote: Counting objects: 74% (373/504)
remote: Counting objects: 75% (378/504)
remote: Counting objects: 76% (384/504)
remote: Counting objects: 77% (389/504)
remote: Counting objects: 78% (394/504)
remote: Counting objects: 79% (399/504)
remote: Counting objects: 80% (404/504)
remote: Counting objects: 81% (409/504)
remote: Counting objects: 82% (414/504)
remote: Counting objects: 83% (419/504)
remote: Counting objects: 84% (424/504)
remote: Counting objects: 85% (429/504)
remote: Counting objects: 86% (434/504)
remote: Counting objects: 87% (439/504)
remote: Counting objects: 88% (444/504)
remote: Counting objects: 89% (449/504)
remote: Counting objects: 90% (454/504)
remote: Counting objects: 91% (459/504)
remote: Counting objects: 92% (464/504)
remote: Counting objects: 93% (469/504)
remote: Counting objects: 94% (474/504)
remote: Counting objects: 95% (479/504)
remote: Counting objects: 96% (484/504)
remote: Counting objects: 97% (489/504)
remote: Counting objects: 98% (494/504)
remote: Counting objects: 99% (499/504)
remote: Counting objects: 100% (504/504)
remote: Counting objects: 100% (504/504), done.
remote: Compressing objects: 4% (1/24)
remote: Compressing objects: 8% (2/24)
remote: Compressing objects: 12% (3/24)
remote: Compressing objects: 16% (4/24)
remote: Compressing objects: 20% (5/24)
remote: Compressing objects: 25% (6/24)
remote: Compressing objects: 29% (7/24)
remote: Compressing objects: 33% (8/24)
remote: Compressing objects: 37% (9/24)
remote: Compressing objects: 41% (10/24)
remote: Compressing objects: 45% (11/24)
remote: Compressing objects: 50% (12/24)
remote: Compressing objects: 54% (13/24)
remote: Compressing objects: 58% (14/24)
remote: Compressing objects: 62% (15/24)
remote: Compressing objects: 66% (16/24)
remote: Compressing objects: 70% (17/24)
remote: Compressing objects: 75% (18/24)
remote: Compressing objects: 79% (19/24)
remote: Compressing objects: 83% (20/24)
remote: Compressing objects: 87% (21/24)
remote: Compressing objects: 91% (22/24)
remote: Compressing objects: 95% (23/24)
remote: Compressing objects: 100% (24/24)
remote: Compressing objects: 100% (24/24), done.
Receiving objects: 0% (1/827)
Receiving objects: 1% (9/827)
Receiving objects: 2% (17/827)
Receiving objects: 3% (25/827)
Receiving objects: 4% (34/827)
Receiving objects: 5% (42/827)
Receiving objects: 6% (50/827)
Receiving objects: 7% (58/827)
Receiving objects: 8% (67/827)
Receiving objects: 9% (75/827)
Receiving objects: 10% (83/827)
Receiving objects: 11% (91/827)
Receiving objects: 12% (100/827)
Receiving objects: 13% (108/827)
Receiving objects: 14% (116/827)
Receiving objects: 15% (125/827)
Receiving objects: 16% (133/827)
Receiving objects: 17% (141/827)
Receiving objects: 18% (149/827)
Receiving objects: 19% (158/827)
Receiving objects: 20% (166/827)
Receiving objects: 21% (174/827)
Receiving objects: 22% (182/827)
Receiving objects: 23% (191/827)
Receiving objects: 24% (199/827)
Receiving objects: 25% (207/827)
Receiving objects: 26% (216/827)
Receiving objects: 27% (224/827)
Receiving objects: 28% (232/827)
Receiving objects: 29% (240/827)
Receiving objects: 30% (249/827)
Receiving objects: 31% (257/827)
Receiving objects: 32% (265/827)
Receiving objects: 33% (273/827)
Receiving objects: 34% (282/827)
Receiving objects: 35% (290/827)
Receiving objects: 36% (298/827)
Receiving objects: 37% (306/827)
Receiving objects: 38% (315/827)
Receiving objects: 39% (323/827)
Receiving objects: 40% (331/827)
Receiving objects: 41% (340/827)
Receiving objects: 42% (348/827)
Receiving objects: 43% (356/827)
Receiving objects: 44% (364/827)
Receiving objects: 45% (373/827)
Receiving objects: 46% (381/827)
Receiving objects: 47% (389/827)
Receiving objects: 48% (397/827)
Receiving objects: 49% (406/827)
Receiving objects: 50% (414/827)
Receiving objects: 51% (422/827)
Receiving objects: 52% (431/827)
Receiving objects: 53% (439/827)
Receiving objects: 54% (447/827)
Receiving objects: 55% (455/827)
Receiving objects: 56% (464/827)
Receiving objects: 57% (472/827)
Receiving objects: 58% (480/827)
Receiving objects: 59% (488/827)
Receiving objects: 60% (497/827)
Receiving objects: 61% (505/827)
Receiving objects: 62% (513/827)
Receiving objects: 63% (522/827)
Receiving objects: 64% (530/827)
Receiving objects: 65% (538/827)
Receiving objects: 66% (546/827)
Receiving objects: 67% (555/827)
Receiving objects: 68% (563/827)
Receiving objects: 69% (571/827)
Receiving objects: 70% (579/827)
Receiving objects: 71% (588/827)
Receiving objects: 72% (596/827)
Receiving objects: 73% (604/827)
Receiving objects: 74% (612/827)
Receiving objects: 75% (621/827)
Receiving objects: 76% (629/827)
Receiving objects: 77% (637/827)
Receiving objects: 78% (646/827)
Receiving objects: 79% (654/827)
Receiving objects: 80% (662/827)
Receiving objects: 81% (670/827)
Receiving objects: 82% (679/827)
Receiving objects: 83% (687/827)
Receiving objects: 84% (695/827)
Receiving objects: 85% (703/827)
Receiving objects: 86% (712/827)
Receiving objects: 87% (720/827)
Receiving objects: 88% (728/827)
Receiving objects: 89% (737/827)
Receiving objects: 90% (745/827)
Receiving objects: 91% (753/827)
Receiving objects: 92% (761/827)
Receiving objects: 93% (770/827)
Receiving objects: 94% (778/827)
Receiving objects: 95% (786/827)
Receiving objects: 96% (794/827)
Receiving objects: 97% (803/827)
Receiving objects: 98% (811/827)
Receiving objects: 99% (819/827)
remote: Total 827 (delta 482), reused 485 (delta 480), pack-reused 323
Receiving objects: 100% (827/827)
Receiving objects: 100% (827/827), 1.25 MiB | 21.39 MiB/s, done.
Resolving deltas: 0% (0/640)
Resolving deltas: 1% (7/640)
Resolving deltas: 2% (13/640)
Resolving deltas: 3% (20/640)
Resolving deltas: 4% (26/640)
Resolving deltas: 5% (32/640)
Resolving deltas: 6% (39/640)
Resolving deltas: 7% (45/640)
Resolving deltas: 8% (52/640)
Resolving deltas: 9% (58/640)
Resolving deltas: 10% (64/640)
Resolving deltas: 11% (71/640)
Resolving deltas: 12% (77/640)
Resolving deltas: 13% (84/640)
Resolving deltas: 14% (90/640)
Resolving deltas: 15% (96/640)
Resolving deltas: 16% (103/640)
Resolving deltas: 17% (109/640)
Resolving deltas: 18% (116/640)
Resolving deltas: 19% (122/640)
Resolving deltas: 20% (128/640)
Resolving deltas: 21% (135/640)
Resolving deltas: 22% (141/640)
Resolving deltas: 23% (148/640)
Resolving deltas: 24% (154/640)
Resolving deltas: 25% (160/640)
Resolving deltas: 26% (167/640)
Resolving deltas: 27% (173/640)
Resolving deltas: 28% (180/640)
Resolving deltas: 29% (186/640)
Resolving deltas: 30% (192/640)
Resolving deltas: 31% (199/640)
Resolving deltas: 32% (205/640)
Resolving deltas: 33% (212/640)
Resolving deltas: 34% (218/640)
Resolving deltas: 35% (224/640)
Resolving deltas: 36% (231/640)
Resolving deltas: 37% (237/640)
Resolving deltas: 38% (244/640)
Resolving deltas: 39% (250/640)
Resolving deltas: 40% (256/640)
Resolving deltas: 41% (263/640)
Resolving deltas: 42% (269/640)
Resolving deltas: 43% (276/640)
Resolving deltas: 44% (282/640)
Resolving deltas: 45% (288/640)
Resolving deltas: 46% (295/640)
Resolving deltas: 47% (301/640)
Resolving deltas: 48% (308/640)
Resolving deltas: 49% (314/640)
Resolving deltas: 50% (320/640)
Resolving deltas: 51% (327/640)
Resolving deltas: 52% (333/640)
Resolving deltas: 53% (340/640)
Resolving deltas: 54% (346/640)
Resolving deltas: 55% (352/640)
Resolving deltas: 56% (359/640)
Resolving deltas: 57% (365/640)
Resolving deltas: 58% (372/640)
Resolving deltas: 59% (378/640)
Resolving deltas: 60% (384/640)
Resolving deltas: 61% (391/640)
Resolving deltas: 62% (397/640)
Resolving deltas: 63% (404/640)
Resolving deltas: 64% (410/640)
Resolving deltas: 65% (416/640)
Resolving deltas: 66% (423/640)
Resolving deltas: 67% (429/640)
Resolving deltas: 68% (436/640)
Resolving deltas: 69% (442/640)
Resolving deltas: 70% (448/640)
Resolving deltas: 71% (455/640)
Resolving deltas: 72% (461/640)
Resolving deltas: 73% (468/640)
Resolving deltas: 74% (474/640)
Resolving deltas: 75% (480/640)
Resolving deltas: 76% (487/640)
Resolving deltas: 77% (493/640)
Resolving deltas: 78% (500/640)
Resolving deltas: 79% (506/640)
Resolving deltas: 80% (512/640)
Resolving deltas: 81% (519/640)
Resolving deltas: 82% (525/640)
Resolving deltas: 83% (532/640)
Resolving deltas: 84% (538/640)
Resolving deltas: 85% (544/640)
Resolving deltas: 86% (551/640)
Resolving deltas: 87% (557/640)
Resolving deltas: 88% (564/640)
Resolving deltas: 89% (570/640)
Resolving deltas: 90% (576/640)
Resolving deltas: 91% (583/640)
Resolving deltas: 92% (589/640)
Resolving deltas: 93% (596/640)
Resolving deltas: 94% (602/640)
Resolving deltas: 95% (608/640)
Resolving deltas: 96% (615/640)
Resolving deltas: 97% (621/640)
Resolving deltas: 97% (626/640)
Resolving deltas: 98% (628/640)
Resolving deltas: 99% (634/640)
Resolving deltas: 100% (640/640)
Resolving deltas: 100% (640/640), completed with 177 local objects.
From https://github.com/python/cpython
* branch main -> FETCH_HEAD
* [new tag] v3.11.0rc1 -> v3.11.0rc1
Note: switching to '656dad702d3b25bf678ee9bd7109d98876946258'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at 656dad702d gh-93274: Expose receiving vectorcall in the Limited API (GH-95717)
Switched to and reset branch 'main'
In file included from ./Include/Python.h:44,
from ./Modules/_testcapi/parts.h:1,
from ./Modules/_testcapi/vectorcall_limited.c:2:
./Include/object.h:62:4: error: #error Py_LIMITED_API is incompatible with Py_TRACE_REFS
62 | # error Py_LIMITED_API is incompatible with Py_TRACE_REFS
| ^~~~~
make: *** [Makefile:2857: Modules/_testcapi/vectorcall_limited.o] Error 1
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
If anyone needs the TraceRefs buildbot green, please merge the revert. I'm working on a fix, so maybe a revert won't be necessary.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
https://buildbot.python.org/all/#builders/484/builds/1920 failed to build:
In file included from ./Include/Python.h:44,
from ./Modules/_testcapi/parts.h:1,
from ./Modules/_testcapi/vectorcall_limited.c:2:
./Include/object.h:62:4: error: #error Py_LIMITED_API is incompatible with Py_TRACE_REFS
62 | # error Py_LIMITED_API is incompatible with Py_TRACE_REFS
| ^~~~~
make: *** [Makefile:2857: Modules/_testcapi/vectorcall_limited.o] Error 1
If anyone needs the TraceRefs buildbot green, please merge the revert. I'm working on a fix, so maybe a revert won't be necessary.
IMO it's ok if it's broken for a few days, but it would be nice to fix it before next Python (3.12) release.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
This'll hopefully fix it: #95796
|
erlend-aasland reacted with eyes emoji
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Reviewers
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
Milestone
No milestone
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.
|