-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Python's "Limited API"; Test cibuildwheel and py >=3.5 using TestPythonSML.py
#461
Add support for Python's "Limited API"; Test cibuildwheel and py >=3.5 using TestPythonSML.py
#461
Conversation
Reduced from 24 files to 5 :)
|
Note to self for later: there appears to be non-determinism in this test that randomly failed on Windows: testSpreadingActivation_AlphabetAgentAllOn: ✅ 😈 Ha! Assert: testSpreadingActivation_AlphabetAgentAllOn halted too early. Letters were likely skipped. DC = 1583 |
TestPythonSML.py
I've added extra changes which now addresses #460, per the review comment. |
Just had one last tiny comment. Very excited to merge this! Thank you for all your work! |
Actually I can take care of that comment. I'll go ahead and merge it! |
Resolves #458
Resolves #460
This pivots scons to build for a single "limited API" that stays future-proof for all python 3 versions, following a single one it is built for.
This also tests all those versions that it is then supporting. This is done in parallel, so that it impacts CI times minimally. (and adds 30 seconds max)
This'll only build the
abi3
wheels ifSOAR_PYTHON_ABI3
is defined at the time of building. The output wheels are appropriately tagged, so that version mixing does not happen.(This environment variable makes the building of
abi3
wheels completely optional, python-version-specific wheels will be created without it (like before), which should be alright for development installs and the likes)This PR also has cibuildwheel call and run
TestPytonSML.py
to more thoroughly test its wheels.This change is also added to the above OS+PyVersion testing matrix.