[Python-Dev] Issue #23903 - stable API is incomplete
steve.dower at python.org
Wed Dec 21 12:11:13 EST 2016
"maybe the test suite should error out if any unexpected symbols appear in the stable ABI?"
This or on build (personally I prefer this sort of validation at build time, but I know others would prefer to defer it).
We have a script now that can extract all the right functions, though I think it'll only work in the source tree as it relies on clinic. But that should make it fairly straightforward to spit out a list and compare it to a checked in list.
At the same time, we have a problem in the current release, which is the functions I listed earlier. I would really like to fix that without blocking on getting the right long-term fix (since the immediate fix only affects one file in the Windows distribution, though it has implications for supportability).
Top-posted from my Windows Phone
From: "Nathaniel Smith" <njs at pobox.com>
Sent: 12/21/2016 8:22
To: "Steve Dower" <steve.dower at python.org>
Cc: "Serhiy Storchaka" <storchaka at gmail.com>; "Victor Stinner" <victor.stinner at gmail.com>; "Python Dev" <python-dev at python.org>
Subject: Re: [Python-Dev] Issue #23903 - stable API is incomplete
On Dec 21, 2016 7:43 AM, "Steve Dower" <steve.dower at python.org> wrote:
"Ok, now why should _Py_PrintReferences() function be exported?"
It probably shouldn't, but it needs an #ifndef Py_LIMITED_API check so it is excluded from the headers (my list was automatically generated).
It sounds like the opt-out approach isn't working very well, and maybe an opt-in approach should be considered instead? I recognize that the way C headers work makes this difficult, but it seems like something needs to change.
Or maybe the test suite should error out if any unexpected symbols appear in the stable ABI?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Python-Dev