Le lun. 30 sept. 2019 à 13:45, Nick Coghlan <ncogh...@gmail.com> a écrit :
> > I understand that your main motivation to use the Python version
> > number rather than sizeof(PyConfig) is the error message.
>
> No, my main motivation is to create an API that can emit a useful
> error message on *ALL* version conflicts between an embedding
> application and the embedded runtime, not just version conflicts
> involving versions that change the size of the config structs.
>
> The latter option is a good one if all we want to version is the
> struct itself, but I don't think that's what we really want here: I
> think we want to version check the entire API/ABI.

IMHO this discussion is going too far away from the PEP 587 goals. The
PEP 587 is unrelated to the stable API or the stable ABI.

I suggest to develop a new use case and a new solution to handle this
case. The solution can be *very different* than "compare two versions
at startup".

For example, we may need a CI to ensure that we don't break the stable ABI:
https://pythoncapi.readthedocs.io/stable_abi.html#check-for-abi-changes

Another solution is to write a completely new C API from scratch. For
example, HPy ("PyHandle") project proposes to write a new API
implemented on top of the existing API:
https://github.com/pyhandle/hpy

This project is even developed outside CPython. So the solution can be
found *outside* CPython as well.

Victor
--
Night gathers, and now my watch begins. It shall not end until my death.
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/UTAGQ3GIP3OZBLE4LWCI2GVDCDAVRPTF/

Reply via email to