![](https://secure.gravatar.com/avatar/29170e89dcec8b4117107e00af892e52.jpg?s=120&d=mm&r=g)
5 Jun
2020
5 Jun
'20
2:19 a.m.
Having read my own email about goals, I realise my previous suggestion was all wrong.
The backwards compatibility header file should be Python.h! The new AP is in python_api.h or whatever. Existing code doesn't change and still works fine, code updated to the new API is clearly marked as such.
Python.h goes through two or three stages over the next few releases.
- Compiling with Python.h generates a single warning, the initial reminder that you should update your code sometime. That might be the only change.
- Python.h is implemented largely or entirely using the new API. Warning(s) are louder and more visible.
- Python.h becomes one line #error "UPDATE YOUR CODE"
And a good first step for the new python_api.h will be the backwards compatibility library, so developers can test that the new thing really does provide the capabilities of the old.
--
cheers,
Hugh Fisher