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 — bpo-42171: Add PEP573-related items to the limited API by encukou · Pull Request #23009 · python/cpython

Conversation

@encukou

@encukou encukou commented Oct 27, 2020 •
edited by miss-islington
Loading

Uh oh!

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

Copy link
Copy Markdown
Member

https://bugs.python.org/issue42171

Automerge-Triggered-By: GH:encukou

Sorry, something went wrong.

Uh oh!

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

All reactions
encukou added 3 commits October 27, 2020 16:19
@encukou
Add PEP 573 functions and PyModule_AddType to Windows stable ABI
36ac916
@encukou
Add METH_METHOD_ARGS_KWD for the limited API
aabe38c
@encukou
Add a blurb
e667015
@encukou
encukou requested a review from a team as a code owner October 27, 2020 22:08
@the-knights-who-say-ni the-knights-who-say-ni added the CLA signed label Oct 27, 2020
@bedevere-bot bedevere-bot added the awaiting core review label Oct 27, 2020
vstinner
vstinner reviewed Oct 29, 2020
View reviewed changes

@vstinner vstinner left a comment

Copy link
Copy Markdown
Member

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.

Since PEP 590 has been approved, is there still a reason to exclude METH_FASTCALL from the limited C API? The limited C API is supposed to hide implementation details. Do we still consider that "fastcall" and "vectorcall" are implementation details?

Why not adding METH_FASTCALL to the limited C API, rather than adding a new METH_METHOD_ARGS_KWD macro?

Sorry, something went wrong.

Uh oh!

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

All reactions
Comment thread Include/methodobject.h Resolved

Uh oh!

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

vstinner
vstinner reviewed Oct 29, 2020
View reviewed changes
Comment thread PC/python3dll.c Resolved

Uh oh!

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

encukou added 2 commits November 3, 2020 23:54
@encukou
Revert "Add METH_METHOD_ARGS_KWD for the limited API"
ba43828
This reverts commit aabe38c.
@encukou
Add METH_FASTCALL to the limited API
1b1ca47
@encukou

encukou commented Nov 4, 2020

Copy link
Copy Markdown
Member Author

OK! If you're fine adding METH_FASTCALL, I have nothing against it :)

All reactions

Sorry, something went wrong.

Uh oh!

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

vstinner
vstinner approved these changes Nov 4, 2020
View reviewed changes

@vstinner vstinner left a comment

Copy link
Copy Markdown
Member

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.

LGTM, thanks.

@markshannon wrote that "FASTCALL" is a bad name, since there will be faster calling conventions tomorow, but the ship has sailed. Cython uses METH_FASTCALL. It's too late to change it.

When I added METH_FASTCALL, I tried to keep it secret, but Cython started to use the private C API, and here we are :-)

Sorry, something went wrong.

Uh oh!

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

All reactions
@bedevere-bot bedevere-bot added awaiting merge and removed awaiting core review labels Nov 4, 2020
@encukou

encukou commented Nov 4, 2020

Copy link
Copy Markdown
Member Author

I wouldn't worry that we can't come up with faster-sounding names. Like VictorCall, but that's already taken :)

All reactions

Sorry, something went wrong.

Uh oh!

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

@vstinner

vstinner commented Nov 4, 2020

Copy link
Copy Markdown
Member

METH_VICTORCALL sounds like a good name :-D

All reactions

Sorry, something went wrong.

Uh oh!

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

@encukou encukou added the 🤖 automerge label Nov 10, 2020
@miss-islington
miss-islington merged commit 0b9c4c6 into python:master Nov 10, 2020
@bedevere-bot bedevere-bot removed the awaiting merge label Nov 10, 2020
@encukou
encukou deleted the pep573-stableabi branch November 10, 2020 14:03
@bedevere-bot

bedevere-bot commented Nov 10, 2020

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot x86 Gentoo Non-Debug with X 3.x has failed when building commit 0b9c4c6.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/58/builds/340) and take a look at the build logs.
  4. Check if the failure is related to this commit (0b9c4c6) or if it is a false positive.
  5. 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/58/builds/340

Failed tests:

  • test_peg_generator

Summary of the results of the build (if available):

==

Click to see traceback logs
remote: Enumerating objects: 1        
remote: Enumerating objects: 14, done.        
remote: Counting objects:   7% (1/14)        
remote: Counting objects:  14% (2/14)        
remote: Counting objects:  21% (3/14)        
remote: Counting objects:  28% (4/14)        
remote: Counting objects:  35% (5/14)        
remote: Counting objects:  42% (6/14)        
remote: Counting objects:  50% (7/14)        
remote: Counting objects:  57% (8/14)        
remote: Counting objects:  64% (9/14)        
remote: Counting objects:  71% (10/14)        
remote: Counting objects:  78% (11/14)        
remote: Counting objects:  85% (12/14)        
remote: Counting objects:  92% (13/14)        
remote: Counting objects: 100% (14/14)        
remote: Counting objects: 100% (14/14), done.        
remote: Compressing objects:   9% (1/11)        
remote: Compressing objects:  18% (2/11)        
remote: Compressing objects:  27% (3/11)        
remote: Compressing objects:  36% (4/11)        
remote: Compressing objects:  45% (5/11)        
remote: Compressing objects:  54% (6/11)        
remote: Compressing objects:  63% (7/11)        
remote: Compressing objects:  72% (8/11)        
remote: Compressing objects:  81% (9/11)        
remote: Compressing objects:  90% (10/11)        
remote: Compressing objects: 100% (11/11)        
remote: Compressing objects: 100% (11/11), done.        
remote: Total 14 (delta 3), reused 3 (delta 3), pack-reused 0        
From https://github.com/python/cpython
 * branch                  master     -> FETCH_HEAD
Reset branch 'master'

	not a dynamic executable
/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Modules/_ctypes/callbacks.c: In function ‘_ctypes_alloc_callback’:
/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Modules/_ctypes/callbacks.c:434:9: warning: ‘ffi_prep_closure’ is deprecated: use ffi_prep_closure_loc instead [-Wdeprecated-declarations]
  434 |         result = ffi_prep_closure(p->pcl_write, &p->cif, closure_fcn, p);
      |         ^~~~~~
In file included from /buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Modules/_ctypes/callbacks.c:6:
/usr/lib/libffi/include/ffi.h:334:1: note: declared here
  334 | ffi_prep_closure (ffi_closure*,
      | ^~~~~~~~~~~~~~~~

	not a dynamic executable

Cannot open file '/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/test-results.xml' for upload
All reactions

Sorry, something went wrong.

Uh oh!

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

@encukou

encukou commented Nov 10, 2020

Copy link
Copy Markdown
Member Author

The Timeout in test_peg_generator doesn't look related. Will check the next build, https://buildbot.python.org/all/#/builders/58/builds/341

All reactions

Sorry, something went wrong.

Uh oh!

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

@encukou

encukou commented Nov 10, 2020

Copy link
Copy Markdown
Member Author

That build first failed (Timeout after 35 minutes), then passed.

All reactions

Sorry, something went wrong.

Uh oh!

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

adorilson pushed a commit to adorilson/cpython that referenced this pull request Mar 13, 2021
@encukou @adorilson
bpo-42171: Add PEP573-related items to the limited API (pythonGH-23009)
b94aa0c
@vstinner vstinner mentioned this pull request Aug 25, 2023
Add support for the limited C API to Argument Clinic #108494
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@vstinner vstinner vstinner approved these changes

Uh oh!

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

Assignees

No one assigned

Labels

None yet

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.

5 participants

@encukou @vstinner @bedevere-bot @the-knights-who-say-ni @miss-islington
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 01402503 — 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.