Skip to content

GH Actions: test against libxml 2.14 #910

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

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jrfnl
Copy link
Member

@jrfnl jrfnl commented Mar 30, 2025

Description

Libxml 2.14 has been released a few days ago. Considering the issues we've previously seen with different libxml versions, let's have at least one build which runs against libxml 2.14.

Ref: https://gitlab.gnome.org/GNOME/libxml2/-/blob/2.14/NEWS

Suggested changelog entry

N/A

Related issues/external references

Related to #849

@jrfnl jrfnl added this to the 3.12.1 milestone Mar 30, 2025
@jrfnl
Copy link
Member Author

jrfnl commented Mar 30, 2025

Hmm... looks like this isn't working as expected. In contrast to the builds with libxml 2.11 and 2.13, the libxml 2.14 library does not seem to get picked up automatically:
image

Might need a more recent PHP version ? @asispts @remicollet Got any insights into why this isn't working ?

@jrfnl jrfnl marked this pull request as draft March 30, 2025 20:38
@jrfnl jrfnl removed this from the 3.12.1 milestone Apr 3, 2025
@jrfnl jrfnl force-pushed the feature/ghactions-test-against-libxml-2.14 branch from 959fe4b to 66067bb Compare April 13, 2025 02:14
@jrfnl
Copy link
Member Author

jrfnl commented Apr 13, 2025

Rebased without changes to trigger a new build as new PHP releases have come out which may incidentally (or intentionally) have fixed the problem with the PR. Let's see....

@jrfnl
Copy link
Member Author

jrfnl commented Apr 13, 2025

Unfortunately, no such luck...

Libxml 2.14 has been released a few days ago. Considering the issues we've previously seen with different libxml versions, let's have at least one build which runs against libxml 2.14.

Ref: https://gitlab.gnome.org/GNOME/libxml2/-/blob/2.14/NEWS
@jrfnl jrfnl force-pushed the feature/ghactions-test-against-libxml-2.14 branch from 66067bb to 2060192 Compare May 18, 2025 13:57
@jrfnl
Copy link
Member Author

jrfnl commented May 18, 2025

Trying again... Rebased without changes to trigger a new build as new PHP releases have come out which may incidentally (or intentionally) have fixed the problem with the PR. Let's see....

@jrfnl
Copy link
Member Author

jrfnl commented May 18, 2025

@fredden
Copy link
Member

fredden commented May 23, 2025

I've looked into this. I have found that since version 2.14.0, the library has changed the its soname. After learning this, I found it is listed in their NEWS file: https://gitlab.gnome.org/GNOME/libxml2/-/blob/v2.14.0/NEWS#L11-12
Because PHP is compiled with the old soname, it's not finding the new library that we're compiling here.

I think this means that PHP needs to be compiled to support the new soname / ABI for this library version. I don't love the idea of doing that within a pipeline here. Are there any other PHP images which already have libxml2 version 2.14.0 or later available?

@jrfnl
Copy link
Member Author

jrfnl commented May 23, 2025

I've looked into this. I have found that since version 2.14.0, the library has changed the its soname. After learning this, I found it is listed in their NEWS file: https://gitlab.gnome.org/GNOME/libxml2/-/blob/v2.14.0/NEWS#L11-12 Because PHP is compiled with the old soname, it's not finding the new library that we're compiling here.

Thank you for looking into this @fredden ! Sounds like you've identified the cause why this build isn't working.

I think this means that PHP needs to be compiled to support the new soname / ABI for this library version. I don't love the idea of doing that within a pipeline here.

Nor me. It might be worth checking if this is already on the radar of the PHP project itself ? My knowledge of the way the compiling works is limited, but I wonder if there is something which can be updated in the PHP build pipeline and/or in how the external extension is recognized.
I have no qualms about waiting with adding this to our pipeline until the PHP project itself officially supports libxml 2.14.

Are there any other PHP images which already have libxml2 version 2.14.0 or later available?

@remicollet I have a feeling you are better positioned to answer this ?

@jrfnl
Copy link
Member Author

jrfnl commented May 23, 2025

Some very loosely related tickets I found about libxml 2.14 support in the PHP project:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants