opensim-org / opensim-core

SimTK OpenSim C++ libraries and command-line applications, and Java/Python wrapping.
https://opensim.stanford.edu
Apache License 2.0
758 stars 307 forks source link

Upgrade Python version in ci #3790

Closed mrrezaie closed 1 month ago

mrrezaie commented 1 month ago

Hi, I always use the API through the artifacts (not the official release) due to the new features and the fixed bugs, but I have to stick with Python 3.8. This version is going to be ended soon: https://devguide.python.org/versions/ Would it be possible to upgrade the Python version in the ci to the latest stable release, e.g. 3.12? Thank you in advance.

nickbianco commented 1 month ago

Hi @mrrezaie, yes, we should get around to this eventually.

Any interest in giving it a go? It would involve updating the Python version in all the jobs in the continuous integration workflow, and then sorting out any build issues that occur.

mrrezaie commented 1 month ago

Hi @nickbianco, thanks for your response. Yes, I will create a PR; that seems to be easy (I hope no error occurs). Should I update the numpy version and this python directory as well? https://github.com/opensim-org/opensim-core/blob/983f69d822649ab9312d2eb202c021dd0a12daf4/.github/workflows/continuous_integration.yml#L80

Update: only the latest version of numpy (1.26) supports python 3.12.

nickbianco commented 1 month ago

Yes, we'll need to update NumPy to a version compatible with whatever Python version we use. Rather than using the latest Python, I think upgrading to 3.10 or 3.11 would be fine and would give us more flexibility in NumPy versions. We currently don't build conda packages with 3.12 anyway.

mrrezaie commented 1 month ago

Thanks @nickbianco, I just pushed a new commit for Python 3.11 and NumPy 1.25.