A metric tonne of RISC OS improvements
Posted by Steve Revill Sun, 22 Sep 2024 21:11:00 GMT
This is one for the all developers out there! We love celebrating significant anniversaries and milestones, so it didn’t escape our notice that the source code to RISC OS has just reached one thousand accepted merge requests since being migrated to be held in Git back in 2019.
Heavy lifting
One thousand changes over five years feed directly into the stable releases, each one adding a new fix or feature to our favourite operating system.
Merge requests are the means by which developers can propose changes to the RISC OS source code. You might also have seen the term pull request which is very similar:
- A developer makes some edits to their copy of the source code
- Once finished, they “commit” those changes using the Git tool
- Then, they “push” the commit into ROOL’s GitLab server for review
Using Git commands can be a little cryptic, so we’ve put together a cheat sheet walking through the most common operations, as well as tips and tricks for wizards. If you’re really stuck, we do still accept submissions by email though processing these can take a while.
Or, why not try out the native Git client? – perfect for looking back at the history of a particular component.
Continuous improvement
ROOL’s GitLab server is much more than just a location to hold a copy of the RISC OS source code, it also has a number of hooks to automatically trigger certain actions when the source code changes. One such hook is Continuous Integration. Our CI system is able to automatically verify and build the changes pushed by developers before they even get as far as a merge request, helping to avoid embarrassment should a change fail to build cleanly.
Currently around 14% of the components in RISC OS have this CI feature enabled (it’s those that have a .gitlab-ci.yml
file present) meaning the automated checks will be performed by GitLab. For example, this developer’s work earned a green tick and a ZIP file with the binaries for you to test produced instantly – just click on the CI rocketship icon in the lefthand menu then look for the job artifacts.
Our CI system uses the exact same Norcroft C compiler and ObjAsm assembler as are shipped with the Desktop Development Environment, so even if you’ve no plans to submit your code to be part of the OS, it’s a handy way to try out some of the DDE tools without even needing to own a RISC OS computer.
Next round number
Budding programmers will no doubt wonder why 10 3 is significant when we’re only 24 short of 2 10 an even more pleasing power-of-two. Help us reach that goal by either submitting your own changes or becoming a reviewer. Accounts are free of charge.