Skip to content

v0.08

Choose a tag to compare

@github-actions github-actions released this 04 Oct 14:15
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 own libbe does.
  • Tests: release-link-flags checks 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.yml attached 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,
    writes SHA256SUMS over 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
    SHA256SUMS job runs after a cancel too (always()). So every file that
    finished building is on the release, with its checksum.
  • release-all.yml builds only the given targets when 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 runs release-all.yml for
    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-workflow checks 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-files checks
    the script with a fake gh; build-entrypoints checks the menu's
    workflow. Both workflows pass actionlint.

Thanks to xet7.