On Thu, 18 Mar 2021 at 03:33, Eric Snow <ericsnowcurrently@gmail.com> wrote:
Do we want a stand-alone public API that is focused on a minimal set and extra resilient to future changes (but with less strict compatibility guarantees)?
I don't know who the audience for such an API would be.
The stable ABI has a very specific purpose: allowing extension modules to be built once and then used across multiple major versions of Python. The limited API then exists to define what extension modules can do while still building against the stable ABI. There's a concrete benefit to extension module authors in porting: port once, save build and deployment complexity forever.
For porting to multiple Python implementations, an independently updatable abstraction layer like HPy seems like a far more useful approach than a minimal API that only CPython provides. I could see *HPy* some day saying "provide this minimal C API and HPy will work with your Python implementation"
Cheers, Nick.
-- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia