Skip to content

Conversation

nielsdos
Copy link
Member

@nielsdos nielsdos commented Oct 11, 2024

No description provided.

@nielsdos nielsdos changed the title Backport 0a39890c: Fix libxml2 2.12 build due to API breaks Backport libxml 2.12-2.13 fixes to PHP 8.1 Oct 11, 2024
In master I use ZEND_DIAGNOSTIC_IGNORED_START, but that doesn't exist on
8.2 or 8.3 (8.3 has a similar macro though).
So to unbreak CI I just made a variation of this directly in the
php_libxml.h header.

See php@683e787#commitcomment-134301083
…r change

See https://gitlab.gnome.org/GNOME/libxml2/-/issues/753.
The base directory for the entity is no longer set, follow the upstream
behaviour.
External entity loading got its error level decreased in upstream,
which means they now map to E_NOTICE. Also the error message format has
changed.
@nielsdos
Copy link
Member Author

And it's about to get a bit more finicky as ZEND_DIAGNOSTIC_IGNORED_START doesn't exist on 8.1...

@nielsdos nielsdos force-pushed the backport-lxml branch 2 times, most recently from dce3c10 to 263015a Compare October 12, 2024 08:30
Normally I would backport 3354cc6, but this doesn't apply cleanly due
to observer changes.
@nielsdos
Copy link
Member Author

@cmb69 @bukka @ramsey This fixes the build failures and test failures related to the libxml stuff. This is quite a heavy backport with only a few changes in the C code (some I made specifically for 8.1 because backports weren't possible), and most changes are in creating alterative phpt test files. Most of these changes have been in PHP 8.2+ since early this year or since July, without reported issues.

Copy link
Member

@bukka bukka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The C part seems quite small so I think it's good.

@nielsdos nielsdos merged commit 2c40762 into php:PHP-8.1 Oct 12, 2024
3 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants