GH Actions/tests: run tests against multiple libxml versions #849
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Background/Context
As @asispts hasn't been responding to the open feedback on PR #798 anymore AND the change proposed in #798 should go into the same release as PR #797 was merged in (to safeguard the changes from that PR) AND I haven't got permission to update the PR branch, I'm opening a new PR which supersedes PR #798.
Commits
GH Actions/tests: run tests against libxml >= 2.12
I've cherrypicked and squashed the pertinent changes from #798. Props @asispts.
GH Actions/test: iterate on libxml installation steps
This commit updates the initial implementation for updating
libxml2on the fly for select PHP versions.Compared to the original implementation, the following changes were made:
libxml_minorflag in the matrix to indicate whetherlibxmlshould be updated for a particular job or not.This
libxml_minorflag also allows for specifying a specific minor to use for the update.This flag is now set on the linux PHP 8.0 and PHP 8.3 builds.
Take note: PHP 8.4 is explicitly not used, as the tests are not run in this job for that version (they are run in the
coveragejob instead).In effect that meant that installing
libxmlon PHP 8.4 in the workflow, as per the original PR, wasn't safeguarding anything as without tests running, the tests couldn't fail.libxml_minorflag, update the job name to make it clear when a particular job uses a non-defaultlibxmlversion.libxmlminor.This makes the workflow more flexible by:
sudo apt-get updatecommand off to its own step as it is prone to intermittent failures.libxmlversion.Doing this allows for caching the result of the compile step, diminishing the impact on the actions run time of compiling
libxml.libxmlversion is being used in each job.Suggested changelog entry
N/A
Related issues/external references
Follow up on #797 which fixed #767
Closes #798