Skip to content

Conversation

@teutoburg
Copy link
Contributor

@teutoburg teutoburg commented Sep 30, 2024

The Python version corresponding to Donald Duck's license plate will drop tomorrow 🚀

@teutoburg teutoburg self-assigned this Sep 30, 2024
@codecov
Copy link

codecov bot commented Sep 30, 2024

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (f33a352) to head (65d3182).
⚠️ Report is 13 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #35   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            2         2           
  Lines            7         7           
=========================================
  Hits             7         7           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@hugobuddel
Copy link
Contributor

Do we want to also add free-threaded Python to the CI? I believe this 3.13 will by with GIL. E.g. https://github.com/deadsnakes/action seems to be a way that we can already enable GILless right now

@teutoburg
Copy link
Contributor Author

@hugobuddel
Copy link
Contributor

Aaand it's delayed by a week: https://blog.python.org/2024/10/python-3130-release-candidate-3-released.html

They also say

We strongly encourage maintainers of Python projects to prepare their projects for 3.13 compatibilities during this phase, and where necessary publish Python 3.13 wheels on PyPI to be ready for the final release of 3.13.0.

So would be fine with me if we add the prerelease to matrix. Maybe we should have 'the next prerelease' in a test anyway so we don't have to suddenly solve bugs. But well it is also okay to stay behind.

@teutoburg teutoburg changed the title Add Python 3.13 to the test matrix Add Python ~3.13~ 3.13.0-rc.2 to the test matrix Oct 2, 2024
@teutoburg teutoburg changed the title Add Python ~3.13~ 3.13.0-rc.2 to the test matrix Add Python 3.13.0-rc.2 to the test matrix Oct 2, 2024
@teutoburg teutoburg marked this pull request as ready for review October 2, 2024 11:33
@teutoburg
Copy link
Contributor Author

Meh, Windoof no worky 🙄

@teutoburg teutoburg changed the title Add Python 3.13.0-rc.2 to the test matrix Add Python 3.13 to the test matrix Oct 7, 2024
@teutoburg
Copy link
Contributor Author

Hmm, now 3.13 is finally out (and supported by the action) and yet it's still failing on Windows. Not sure what's going on...

@hugobuddel
Copy link
Contributor

AlbedoBase_XL_Windows_fatal_exception_access_violation_3
"Windows fatal exception access violation" according to Leonardo.AI

@teutoburg teutoburg moved this from 🏗 In progress to 🚧 On hold in ScopeSim-development Jul 20, 2025
@teutoburg teutoburg moved this from 🚧 On hold to 🏗 In progress in ScopeSim-development Sep 9, 2025
@teutoburg teutoburg added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Sep 9, 2025
@teutoburg
Copy link
Contributor Author

Bumping numpy seems to have finally solved this. However, I will wait with the merge, because right now this would crash all our packages that are limited to 3.10-3.12. Needs to be done carefully and at once. But at least no we can do it...

@teutoburg teutoburg requested a review from hugobuddel September 9, 2025 12:54
Copy link
Contributor

@hugobuddel hugobuddel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good! Kinda the point of DevOps is that we don't have to make changes to each individual repository to test each new Python release, but that kinda went out of the window. I understand why, but not sure what the best solution is

@teutoburg
Copy link
Contributor Author

To square the circle of including the new Python versions here first, which would make the workflows fail in all projects that don't support that yet, but also be able to test adding the new Python version in those (which relies on that version being included here), I suggest following this: https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#example-preventing-a-specific-failing-matrix-job-from-failing-a-workflow-run

The example shown there is pretty much exactly what we'd need here, i.e. set all the Python 3.13 versions to "experimental", allowing them to fail until we think we caught up with all the packages, then we can remove this again (I'll simultaneously create an issue for that, otherwise we forget, I know us 🙃). If we missed any packages, we'll see it then.

@hugobuddel
Copy link
Contributor

That is a nice feature

@teutoburg
Copy link
Contributor Author

Alright, I ended up putting a "⚠️" in the names of the "experimental" combinations. Did a bunch of testing with simulated unsupported versions, and it seems to work as expected. Only downside is, we now have to actively look into the workflow run to see if one of those failed. Otherwise they would show up red altogether, kinda defeating the purpose. In the future, I'd like to have a comment automatically added to the PR to warn about that. (I have done automatic PR comments from workflows before elsewhere, but this is more complicated because it involves the matrix, don't wanna end up with 10 such comments suddenly. I'll add it to my TODO to eventually look into this when I have time. For now, this is fine I think.)

That is a nice feature

In the interest of progress, I take this as approval. Indeed the PR was approved before I added this now, so I'll merge it.

This fails waaay to often. Need to find a permanent solution.
@teutoburg teutoburg merged commit 006a7df into main Sep 16, 2025
25 checks passed
@teutoburg teutoburg deleted the fh/py313 branch September 16, 2025 22:36
@github-project-automation github-project-automation bot moved this from 🏗 In progress to ✅ Done in ScopeSim-development Sep 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants