Repository navigation
v0.08
The amigaos4-ppc and haiku-amd64 release builds compile and link again
- v0.07 was published without these two files.
- amigaos4-ppc: the PowerPC GCC stopped on
-Werror=maybe-uninitialized
in the JPEG decoder: it could not see that the component values are set
for each of the image's 1 or 3 components before they are read. They
start at zero now. Every source was rechecked with GCC at -O1, -O2, -O3,
-Os and -Og. - haiku-amd64: the link stopped on
std::__throw_length_error. SDL's
Haiku video is C++ (BWindow,std::vector), and gcc links C only. The
Haiku release now links-lstdc++after SDL's static archive.
libstdc++ ships with Haiku, as its ownlibbedoes. - Tests:
release-link-flagschecks that Haiku links the C++ runtime after
SDL and that no other system does.
Thanks to xet7.
Each release file is attached as soon as its own build passes, and Release all missing adds what a release lacks
release-all.ymlattached nothing until every build had finished, so one
slow or failed job held back all the others' files. Now each build job
attaches its own file the moment it has been built and checked
(scripts/attach_release_files.sh, three tries, replacing a file of the
same name). Windows files are attached after their smoke test on Windows.
The last job no longer uploads binaries: it downloads what the release has,
writesSHA256SUMSover all of it, and names anything still missing.- A cancelled run used to attach nothing. Now each attach step runs even
after a cancel, whenever its own build step succeeded, and the
SHA256SUMSjob runs after a cancel too (always()). So every file that
finished building is on the release, with its checksum. release-all.ymlbuilds only the giventargetswhen asked, and can be
called by another workflow.- The new
release-all-missing.yml("Release all missing") compares the
newest release's files (or a named release's) with the ready targets
(package_desktop_release.py missing-from). It runsrelease-all.ymlfor
just the missing ones, from the current branch, so a build fixed after the
release is built with its fix. It never makes a new version, and starts
nothing when nothing is missing. Menu option 3's "Build missing files for
the newest release" now starts it. - Tests:
release-workflowchecks that every step is limited to the asked-for
targets, that each job's last step attaches its file even after a cancel,
that no job or step is skipped by a cancel, the Windows order,
the checksums job and the missing workflow;attach-release-fileschecks
the script with a fakegh;build-entrypointschecks the menu's
workflow. Both workflows pass actionlint.
Thanks to xet7.