-
Notifications
You must be signed in to change notification settings - Fork 61
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
Use matrix notation in build.yml to reduce clutter and update Ubuntu image #75
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great! I had actually tried to do something like that myself, but didn't come across the "object in array" trick. I think this is a great way to reduce the complexity of the workflow.
I skimmed across the resulting builds, and I think it's the same as before.
Arguably we should just build all combinations with both debug and release, but that should be for another PR to decide. I think it's correct for this PR to be agnostic to it.
Is the Ubuntu image update alright? There is still time till deprecation but I've been getting warnings on my action runs. |
In some situations it would be wiser to just make a tiny additional PR for that, but I think it's fine to address it here since you're touching the file anyway. |
Thank you for explaining the squashing |
I forgot to update the old Ubuntu image on the merge job. Changed that too for completeness. There are a lot of cache missed warnings on the action run for this PR. It that normal? |
I think there's no need to worry :) Cache misses can occur from a number of factors, such as changing runner images or simply not having run a job in a while. |
Everyone at the GDExtension meeting was in favour of having this merged. The Ubuntu update was the core of the discussion. dsnopek brought up a potential issue concerning backwards compatibility. Since the cpp library isn't staticly linked, loading a GDExtension compiled with 24.04 might not work on 20.04.
We agreed to change the Ubuntu version to the oldest, undeprecated LTS which is 22.04. This version will be deprecated in April of 2027. Changing to static linking can be done in another PR. |
The file I changed also has a bug here. That command doesn't actually manage to delete the files. You can check the builds, they are still there.
It should be |
Yeah, that should be a separate PR. |
Feel free to edit; I think reordering makes sense, and nobody's tested this anyway yet I think. On re-push your workflow may actually run automatically too because you now have the |
Yeah you can go ahead and edit it 👍🏻 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still looks good to me!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good👍🏻 thank you
Would you mind squashing everything into one commit? 😅 just noticed that |
Thank you very much! Merged👍🏻 |
Thanks! |
Instead of having a code block for every possible build combination this PR uses the proper matrix notation to reduce the length of the file and improve readability. I made sure to not change the actual configuration of builds that are being produced. Though I'm not sure why its setup to run all the
double
builds since those aren't linked to in the.gdextension
file.becomes
I also updated the version of the Ubuntu runner image since its getting deprecated. actions/runner-images#11101