Skip to content
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

Come up with a python version support policy and implement in CI #49

Open
DominicOram opened this issue Oct 4, 2024 · 5 comments
Open

Comments

@DominicOram
Copy link
Contributor

Currently the python 3.7 tests are failing, it looks like potentially because there is no longer an installable version of 3.7 for that OS (https://github.com/DiamondLightSource/aioca/actions/runs/9990760182/job/27612112943). Either way 3.7 is very old now so we should think about when to drop it.

We should write a page in the aioca documentation on what our depreciation policy is then make CI match it. For other DLS projects we follow https://numpy.org/neps/nep-0029-deprecation_policy.html, if we followed that the CI should be updated to run against 3.10+

@AlexanderWells-diamond
Copy link
Contributor

What's happened here is the macos-latest machines upgraded to ARM64, and does not have the same level of backwards compatibility as before. What I did for pythonSoftIOC was to simply use the older runners. The same fix should probably be applied here as a stop-gap.

We've been keeping Python3.7 support as currently it is still DLS's reference python3 version. Once we can get rid of that we could look at dropping 3.7 support.

@DominicOram
Copy link
Contributor Author

We've been keeping Python3.7 support as currently it is still DLS's reference python3 version. Once we can get rid of that we could look at dropping 3.7 support.

Ok, even if we can't drop support for it can we include up to 3.12 on the CI as downstream applications are using it?

@AlexanderWells-diamond
Copy link
Contributor

Sure. I'll add CI support in #50. I leave it up to @coretl to use this issue if we want to define a deprecation policy for this module at this time.

@coretl
Copy link
Contributor

coretl commented Oct 7, 2024

This is a stable module with few changes, so I suggest that we follow the approach of "we guarantee to support NEP29, but will keep old versions of python if it doesn't cause us any pain". Basically as soon as GitHub/numpy/epicscorelibs makes it difficult to support an old python we drop it, but we make sure that we add new pythons inline with the copier template.

@AlexanderWells-diamond
Copy link
Contributor

As of the new 1.8 release, there is now a published version with support up to Python 3.11.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants