Bug 2139546 - libxml2 update to 2.10..3 breaks ABI by removing 111 symbols
Summary: libxml2 update to 2.10..3 breaks ABI by removing 111 symbols
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libxml2
Version: 36
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: David King
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 2139849 (view as bug list)
Depends On:
Blocks: 2138022
TreeView+ depends on / blocked
 
Reported: 2022-11-02 22:58 UTC by Dominik 'Rathann' Mierzejewski
Modified: 2022-11-09 11:21 UTC (History)
13 users (show)

Fixed In Version: libxml2-2.10.3-2.fc36
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-11-09 11:21:32 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
abipkgdiff report (72.34 KB, text/plain)
2022-11-02 22:58 UTC, Dominik 'Rathann' Mierzejewski
no flags Details


Links
System ID Private Priority Status Summary Last Updated
GNOME Gitlab GNOME libxml2 issues 433 0 None opened 2.10 changes ABI without warning 2022-11-03 17:18:19 UTC

Description Dominik 'Rathann' Mierzejewski 2022-11-02 22:58:18 UTC
Created attachment 1921871 [details]
abipkgdiff report

Description of problem:
The latest libxml2 update to 2.10.3 breaks ABI by removing 111 symbols. This has already broken xmlsec1 (and, transitively, openconnect) and GraphicsMagic.

Version-Release number of selected component (if applicable):
2.10.3-1.fc36

How reproducible:
Always

Steps to Reproduce:
1. koji download-build --arch=x86_64 libxml2-2.9.14-1.fc36
2. koji download-build --arch=x86_64 libxml2-2.10.3-1.fc36
3. rpmsodiff libxml2-2.9.14-1.fc36.x86_64.rpm libxml2-2.10.3-1.fc36.x86_64.rpm 

Actual results:
	common sonames:
libxml2.so.2	/usr/lib64/libxml2.so.2.9.14	/usr/lib64/libxml2.so.2.10.3

--- libxml2-2.9.14-1.fc36/libxml2.so.2	2022-11-02 23:45:52.255501082 +0100
+++ libxml2-2.10.3-1.fc36/libxml2.so.2	2022-11-02 23:46:25.111715153 +0100
@@ -45,3 +45,2 @@
 UTF8Toisolat1@@LIBXML2_2.4.30	T
-__docbDefaultSAXHandler	T
 __htmlDefaultSAXHandler	T
@@ -92,25 +91,2 @@
 __xmlTreeIndentString	T
-attribute@@LIBXML2_2.4.30	T
-attributeDecl@@LIBXML2_2.4.30	T
-cdataBlock@@LIBXML2_2.4.30	T
-characters@@LIBXML2_2.4.30	T
-checkNamespace@@LIBXML2_2.4.30	T
-comment@@LIBXML2_2.4.30	T
-docbDefaultSAXHandler@@LIBXML2_2.4.30	D
-docbDefaultSAXHandlerInit@@LIBXML2_2.4.30	T
-elementDecl@@LIBXML2_2.4.30	T
-endDocument@@LIBXML2_2.4.30	T
-endElement@@LIBXML2_2.4.30	T
-entityDecl@@LIBXML2_2.4.30	T
-externalSubset@@LIBXML2_2.4.30	T
-getColumnNumber@@LIBXML2_2.4.30	T
-getEntity@@LIBXML2_2.4.30	T
-getLineNumber@@LIBXML2_2.4.30	T
-getNamespace@@LIBXML2_2.4.30	T
-getParameterEntity@@LIBXML2_2.4.30	T
-getPublicId@@LIBXML2_2.4.30	T
-getSystemId@@LIBXML2_2.4.30	T
-globalNamespace@@LIBXML2_2.4.30	T
-hasExternalSubset@@LIBXML2_2.4.30	T
-hasInternalSubset@@LIBXML2_2.4.30	T
 htmlAttrAllowed@@LIBXML2_2.5.2	T
@@ -127,3 +103,2 @@
 htmlCtxtUseOptions@@LIBXML2_2.6.0	T
-htmlDecodeEntities	T
 htmlDefaultSAXHandler@@LIBXML2_2.4.30	D
@@ -175,11 +150,5 @@
 htmlTagLookup@@LIBXML2_2.4.30	T
-ignorableWhitespace@@LIBXML2_2.4.30	T
 initGenericErrorDefaultFunc@@LIBXML2_2.4.30	T
-initdocbDefaultSAXHandler@@LIBXML2_2.4.30	T
-inithtmlDefaultSAXHandler@@LIBXML2_2.4.30	T
-initxmlDefaultSAXHandler@@LIBXML2_2.4.30	T
 inputPop@@LIBXML2_2.4.30	T
 inputPush@@LIBXML2_2.4.30	T
-internalSubset@@LIBXML2_2.4.30	T
-isStandalone@@LIBXML2_2.4.30	T
 isolat1ToUTF8@@LIBXML2_2.4.30	T
@@ -189,15 +158,5 @@
 namePush@@LIBXML2_2.4.30	T
-namespaceDecl@@LIBXML2_2.4.30	T
 nodePop@@LIBXML2_2.4.30	T
 nodePush@@LIBXML2_2.4.30	T
-notationDecl@@LIBXML2_2.4.30	T
 oldXMLWDcompatibility@@LIBXML2_2.4.30	B
-processingInstruction@@LIBXML2_2.4.30	T
-reference@@LIBXML2_2.4.30	T
-resolveEntity@@LIBXML2_2.4.30	T
-setDocumentLocator@@LIBXML2_2.4.30	T
-setNamespace@@LIBXML2_2.4.30	T
-startDocument@@LIBXML2_2.4.30	T
-startElement@@LIBXML2_2.4.30	T
-unparsedEntityDecl@@LIBXML2_2.4.30	T
 valuePop@@LIBXML2_2.4.30	T
@@ -253,3 +212,2 @@
 xmlBufAdd	T
-xmlBufAddHead	T
 xmlBufAddLen	T
@@ -272,3 +230,2 @@
 xmlBufEnd@@LIBXML2_2.9.0	T
-xmlBufErase	T
 xmlBufFree	T
@@ -279,3 +236,2 @@
 xmlBufGrow	T
-xmlBufInflate	T
 xmlBufIsEmpty	T
@@ -290,4 +246,2 @@
 xmlBufUse@@LIBXML2_2.9.0	T
-xmlBufWriteCHAR	T
-xmlBufWriteChar	T
 xmlBufWriteQuotedString	T
@@ -367,3 +321,2 @@
 xmlCleanupParser@@LIBXML2_2.4.30	T
-xmlCleanupPredefinedEntities@@LIBXML2_2.4.30	T
 xmlCleanupThreads@@LIBXML2_2.4.30	T
@@ -429,3 +382,2 @@
 xmlDebugDumpString@@LIBXML2_2.4.30	T
-xmlDecodeEntities@@LIBXML2_2.4.30	T
 xmlDefaultBufferSize@@LIBXML2_2.4.30	D
@@ -471,3 +423,2 @@
 xmlEncodeAttributeEntities	T
-xmlEncodeEntities@@LIBXML2_2.4.30	T
 xmlEncodeEntitiesReentrant@@LIBXML2_2.4.30	T
@@ -533,4 +484,2 @@
 xmlGetExternalEntityLoader@@LIBXML2_2.4.30	T
-xmlGetFeature@@LIBXML2_2.4.30	T
-xmlGetFeaturesList@@LIBXML2_2.4.30	T
 xmlGetGlobalState@@LIBXML2_2.4.30	T
@@ -552,3 +501,2 @@
 xmlGetWarningsDefaultValue@@LIBXML2_2.4.30	D
-xmlHandleEntity@@LIBXML2_2.4.30	T
 xmlHasFeature@@LIBXML2_2.6.21	T
@@ -581,6 +529,2 @@
 xmlHashUpdateEntry@@LIBXML2_2.4.30	T
-xmlIOFTPClose@@LIBXML2_2.4.30	T
-xmlIOFTPMatch@@LIBXML2_2.4.30	T
-xmlIOFTPOpen@@LIBXML2_2.4.30	T
-xmlIOFTPRead@@LIBXML2_2.4.30	T
 xmlIOHTTPClose@@LIBXML2_2.4.30	T
@@ -602,3 +546,2 @@
 xmlInitializeGlobalState@@LIBXML2_2.4.30	T
-xmlInitializePredefinedEntities@@LIBXML2_2.4.30	T
 xmlInputReadCallbackNop	T
@@ -692,27 +635,2 @@
 xmlMutexUnlock@@LIBXML2_2.4.30	T
-xmlNamespaceParseNCName@@LIBXML2_2.4.30	T
-xmlNamespaceParseNSDef@@LIBXML2_2.4.30	T
-xmlNamespaceParseQName@@LIBXML2_2.4.30	T
-xmlNanoFTPCheckResponse@@LIBXML2_2.4.30	T
-xmlNanoFTPCleanup@@LIBXML2_2.4.30	T
-xmlNanoFTPClose@@LIBXML2_2.4.30	T
-xmlNanoFTPCloseConnection@@LIBXML2_2.4.30	T
-xmlNanoFTPConnect@@LIBXML2_2.4.30	T
-xmlNanoFTPConnectTo@@LIBXML2_2.4.30	T
-xmlNanoFTPCwd@@LIBXML2_2.4.30	T
-xmlNanoFTPDele@@LIBXML2_2.5.5	T
-xmlNanoFTPFreeCtxt@@LIBXML2_2.4.30	T
-xmlNanoFTPGet@@LIBXML2_2.4.30	T
-xmlNanoFTPGetConnection@@LIBXML2_2.4.30	T
-xmlNanoFTPGetResponse@@LIBXML2_2.4.30	T
-xmlNanoFTPGetSocket@@LIBXML2_2.4.30	T
-xmlNanoFTPInit@@LIBXML2_2.4.30	T
-xmlNanoFTPList@@LIBXML2_2.4.30	T
-xmlNanoFTPNewCtxt@@LIBXML2_2.4.30	T
-xmlNanoFTPOpen@@LIBXML2_2.4.30	T
-xmlNanoFTPProxy@@LIBXML2_2.4.30	T
-xmlNanoFTPQuit@@LIBXML2_2.4.30	T
-xmlNanoFTPRead@@LIBXML2_2.4.30	T
-xmlNanoFTPScanProxy@@LIBXML2_2.4.30	T
-xmlNanoFTPUpdateURL@@LIBXML2_2.4.30	T
 xmlNanoHTTPAuthHeader@@LIBXML2_2.4.30	T
@@ -756,3 +674,2 @@
 xmlNewEntityInputStream@@LIBXML2_2.4.30	T
-xmlNewGlobalNs@@LIBXML2_2.4.30	T
 xmlNewIOInputStream@@LIBXML2_2.4.30	T
@@ -866,3 +783,2 @@
 xmlParseName@@LIBXML2_2.4.30	T
-xmlParseNamespace@@LIBXML2_2.4.30	T
 xmlParseNmtoken@@LIBXML2_2.4.30	T
@@ -874,3 +790,2 @@
 xmlParsePubidLiteral@@LIBXML2_2.4.30	T
-xmlParseQuotedString@@LIBXML2_2.4.30	T
 xmlParseReference@@LIBXML2_2.4.30	T
@@ -893,3 +808,2 @@
 xmlParserHandlePEReference@@LIBXML2_2.4.30	T
-xmlParserHandleReference@@LIBXML2_2.4.30	T
 xmlParserInputBufferCreateFd@@LIBXML2_2.4.30	T
@@ -1025,3 +939,2 @@
 xmlSAX2InitDefaultSAXHandler@@LIBXML2_2.6.0	T
-xmlSAX2InitDocbDefaultSAXHandler@@LIBXML2_2.6.0	T
 xmlSAX2InitHtmlDefaultSAXHandler@@LIBXML2_2.6.0	T
@@ -1067,3 +980,2 @@
 xmlSaveUri@@LIBXML2_2.4.30	T
-xmlScanName@@LIBXML2_2.4.30	T
 xmlSchemaCheckFacet@@LIBXML2_2.5.8	T
@@ -1146,5 +1058,3 @@
 xmlSetDocCompressMode@@LIBXML2_2.4.30	T
-xmlSetEntityReferenceFunc@@LIBXML2_2.4.30	T
 xmlSetExternalEntityLoader@@LIBXML2_2.4.30	T
-xmlSetFeature@@LIBXML2_2.4.30	T
 xmlSetGenericErrorFunc@@LIBXML2_2.4.30	T
@@ -1563,3 +1473,2 @@
 xmlUnsetProp@@LIBXML2_2.4.30	T
-xmlUpgradeOldNs	T
 xmlValidBuildContentModel@@LIBXML2_2.4.30	T
@@ -1762,23 +1671,3 @@
 xmlXPatherror@@LIBXML2_2.4.30	T
-xmlXPtrAdvanceNode	T
-xmlXPtrBuildNodeList@@LIBXML2_2.4.30	T
 xmlXPtrEval@@LIBXML2_2.4.30	T
-xmlXPtrEvalRangePredicate@@LIBXML2_2.4.30	T
-xmlXPtrFreeLocationSet@@LIBXML2_2.4.30	T
-xmlXPtrLocationSetAdd@@LIBXML2_2.4.30	T
-xmlXPtrLocationSetCreate@@LIBXML2_2.4.30	T
-xmlXPtrLocationSetDel@@LIBXML2_2.4.30	T
-xmlXPtrLocationSetMerge@@LIBXML2_2.4.30	T
-xmlXPtrLocationSetRemove@@LIBXML2_2.4.30	T
-xmlXPtrNewCollapsedRange@@LIBXML2_2.4.30	T
 xmlXPtrNewContext@@LIBXML2_2.4.30	T
-xmlXPtrNewLocationSetNodeSet@@LIBXML2_2.4.30	T
-xmlXPtrNewLocationSetNodes@@LIBXML2_2.4.30	T
-xmlXPtrNewRange@@LIBXML2_2.4.30	T
-xmlXPtrNewRangeNodeObject@@LIBXML2_2.4.30	T
-xmlXPtrNewRangeNodePoint@@LIBXML2_2.4.30	T
-xmlXPtrNewRangeNodes@@LIBXML2_2.4.30	T
-xmlXPtrNewRangePointNode@@LIBXML2_2.4.30	T
-xmlXPtrNewRangePoints@@LIBXML2_2.4.30	T
-xmlXPtrRangeToFunction@@LIBXML2_2.4.30	T
-xmlXPtrWrapLocationSet@@LIBXML2_2.4.30	T

	111 symbols removed
D docbDefaultSAXHandler@@LIBXML2_2.4.30
T __docbDefaultSAXHandler
T attribute@@LIBXML2_2.4.30
T attributeDecl@@LIBXML2_2.4.30
T cdataBlock@@LIBXML2_2.4.30
T characters@@LIBXML2_2.4.30
T checkNamespace@@LIBXML2_2.4.30
T comment@@LIBXML2_2.4.30
T docbDefaultSAXHandlerInit@@LIBXML2_2.4.30
T elementDecl@@LIBXML2_2.4.30
T endDocument@@LIBXML2_2.4.30
T endElement@@LIBXML2_2.4.30
T entityDecl@@LIBXML2_2.4.30
T externalSubset@@LIBXML2_2.4.30
T getColumnNumber@@LIBXML2_2.4.30
T getEntity@@LIBXML2_2.4.30
T getLineNumber@@LIBXML2_2.4.30
T getNamespace@@LIBXML2_2.4.30
T getParameterEntity@@LIBXML2_2.4.30
T getPublicId@@LIBXML2_2.4.30
T getSystemId@@LIBXML2_2.4.30
T globalNamespace@@LIBXML2_2.4.30
T hasExternalSubset@@LIBXML2_2.4.30
T hasInternalSubset@@LIBXML2_2.4.30
T htmlDecodeEntities
T ignorableWhitespace@@LIBXML2_2.4.30
T initdocbDefaultSAXHandler@@LIBXML2_2.4.30
T inithtmlDefaultSAXHandler@@LIBXML2_2.4.30
T initxmlDefaultSAXHandler@@LIBXML2_2.4.30
T internalSubset@@LIBXML2_2.4.30
T isStandalone@@LIBXML2_2.4.30
T namespaceDecl@@LIBXML2_2.4.30
T notationDecl@@LIBXML2_2.4.30
T processingInstruction@@LIBXML2_2.4.30
T reference@@LIBXML2_2.4.30
T resolveEntity@@LIBXML2_2.4.30
T setDocumentLocator@@LIBXML2_2.4.30
T setNamespace@@LIBXML2_2.4.30
T startDocument@@LIBXML2_2.4.30
T startElement@@LIBXML2_2.4.30
T unparsedEntityDecl@@LIBXML2_2.4.30
T xmlBufAddHead
T xmlBufErase
T xmlBufInflate
T xmlBufWriteCHAR
T xmlBufWriteChar
T xmlCleanupPredefinedEntities@@LIBXML2_2.4.30
T xmlDecodeEntities@@LIBXML2_2.4.30
T xmlEncodeEntities@@LIBXML2_2.4.30
T xmlGetFeature@@LIBXML2_2.4.30
T xmlGetFeaturesList@@LIBXML2_2.4.30
T xmlHandleEntity@@LIBXML2_2.4.30
T xmlIOFTPClose@@LIBXML2_2.4.30
T xmlIOFTPMatch@@LIBXML2_2.4.30
T xmlIOFTPOpen@@LIBXML2_2.4.30
T xmlIOFTPRead@@LIBXML2_2.4.30
T xmlInitializePredefinedEntities@@LIBXML2_2.4.30
T xmlNamespaceParseNCName@@LIBXML2_2.4.30
T xmlNamespaceParseNSDef@@LIBXML2_2.4.30
T xmlNamespaceParseQName@@LIBXML2_2.4.30
T xmlNanoFTPCheckResponse@@LIBXML2_2.4.30
T xmlNanoFTPCleanup@@LIBXML2_2.4.30
T xmlNanoFTPClose@@LIBXML2_2.4.30
T xmlNanoFTPCloseConnection@@LIBXML2_2.4.30
T xmlNanoFTPConnect@@LIBXML2_2.4.30
T xmlNanoFTPConnectTo@@LIBXML2_2.4.30
T xmlNanoFTPCwd@@LIBXML2_2.4.30
T xmlNanoFTPDele@@LIBXML2_2.5.5
T xmlNanoFTPFreeCtxt@@LIBXML2_2.4.30
T xmlNanoFTPGet@@LIBXML2_2.4.30
T xmlNanoFTPGetConnection@@LIBXML2_2.4.30
T xmlNanoFTPGetResponse@@LIBXML2_2.4.30
T xmlNanoFTPGetSocket@@LIBXML2_2.4.30
T xmlNanoFTPInit@@LIBXML2_2.4.30
T xmlNanoFTPList@@LIBXML2_2.4.30
T xmlNanoFTPNewCtxt@@LIBXML2_2.4.30
T xmlNanoFTPOpen@@LIBXML2_2.4.30
T xmlNanoFTPProxy@@LIBXML2_2.4.30
T xmlNanoFTPQuit@@LIBXML2_2.4.30
T xmlNanoFTPRead@@LIBXML2_2.4.30
T xmlNanoFTPScanProxy@@LIBXML2_2.4.30
T xmlNanoFTPUpdateURL@@LIBXML2_2.4.30
T xmlNewGlobalNs@@LIBXML2_2.4.30
T xmlParseNamespace@@LIBXML2_2.4.30
T xmlParseQuotedString@@LIBXML2_2.4.30
T xmlParserHandleReference@@LIBXML2_2.4.30
T xmlSAX2InitDocbDefaultSAXHandler@@LIBXML2_2.6.0
T xmlScanName@@LIBXML2_2.4.30
T xmlSetEntityReferenceFunc@@LIBXML2_2.4.30
T xmlSetFeature@@LIBXML2_2.4.30
T xmlUpgradeOldNs
T xmlXPtrAdvanceNode
T xmlXPtrBuildNodeList@@LIBXML2_2.4.30
T xmlXPtrEvalRangePredicate@@LIBXML2_2.4.30
T xmlXPtrFreeLocationSet@@LIBXML2_2.4.30
T xmlXPtrLocationSetAdd@@LIBXML2_2.4.30
T xmlXPtrLocationSetCreate@@LIBXML2_2.4.30
T xmlXPtrLocationSetDel@@LIBXML2_2.4.30
T xmlXPtrLocationSetMerge@@LIBXML2_2.4.30
T xmlXPtrLocationSetRemove@@LIBXML2_2.4.30
T xmlXPtrNewCollapsedRange@@LIBXML2_2.4.30
T xmlXPtrNewLocationSetNodeSet@@LIBXML2_2.4.30
T xmlXPtrNewLocationSetNodes@@LIBXML2_2.4.30
T xmlXPtrNewRange@@LIBXML2_2.4.30
T xmlXPtrNewRangeNodeObject@@LIBXML2_2.4.30
T xmlXPtrNewRangeNodePoint@@LIBXML2_2.4.30
T xmlXPtrNewRangeNodes@@LIBXML2_2.4.30
T xmlXPtrNewRangePointNode@@LIBXML2_2.4.30
T xmlXPtrNewRangePoints@@LIBXML2_2.4.30
T xmlXPtrRangeToFunction@@LIBXML2_2.4.30
T xmlXPtrWrapLocationSet@@LIBXML2_2.4.30

vim:ft=diff

Expected results:
No removed symbols.

Additional info:
See also bug 2136800 and bug 2138022.

Comment 1 Dominik 'Rathann' Mierzejewski 2022-11-02 23:02:30 UTC
It looks like the best way to fix this might be to rebuild --with-ftp added to %configure call.

https://gitlab.gnome.org/GNOME/libxml2/-/commit/a0a0f3be93753e387e31e7de95904a24b3c876dd

Comment 2 Mamoru TASAKA 2022-11-03 11:05:32 UTC
ImageMagick (and transitively rubygem-rmagick) is also broken

Comment 3 Mamoru TASAKA 2022-11-03 15:58:12 UTC
So --with-ftp is only for xmlXXXXFTPXXXX series, other removed symbols are still missing.

Then additionally adding     --with-legacy --with-ftp --with-xptr-locs  (after reading include/libxml/xmlversion.h.in, configure.ac and their histories),
the result scratch build is:

https://koji.fedoraproject.org/scratch/mtasaka/task_93748005/

Now:
=============================================================
[tasaka1@localhost x86_64]$ rpmsodiff libxml2-2.9.14-3.fc37.x86_64.rpm libxml2-2.10.3-1.fc37.bz2139546.x86_64.rpm 
	common sonames:
libxml2.so.2	/usr/lib64/libxml2.so.2.9.14	/usr/lib64/libxml2.so.2.10.3

	10 symbols removed
D docbDefaultSAXHandler@@LIBXML2_2.4.30
T __docbDefaultSAXHandler
T docbDefaultSAXHandlerInit@@LIBXML2_2.4.30
T initdocbDefaultSAXHandler@@LIBXML2_2.4.30
T xmlBufAddHead
T xmlBufErase
T xmlBufInflate
T xmlBufWriteCHAR
T xmlBufWriteChar
T xmlSAX2InitDocbDefaultSAXHandler@@LIBXML2_2.6.0
=============================================================

111 -> 10, but still some symbols are missing.

So xmlBufAddHead, xmlBufErase, xmlBufInflate, xmlBufInflate, xmlBufWriteChar are not shown in 2.9.14 headers file, so I guess no user for these symbols (functions) exists, just libxml2 "internal" symbols are exposed.


On the other hand, docbDefaultSAXHandlerInit, initdocbDefaultSAXHandler, xmlSAX2InitDocbDefaultSAXHandler are:
https://gitlab.gnome.org/GNOME/libxml2/-/blob/master/libxml2.syms
... so these symbols are __really__ removed. So I think in a strict sense, 2.10.x is ABI incompatible with 2.9.14.

Comment 4 Richard W.M. Jones 2022-11-03 16:07:43 UTC
Broken open-vm-tools: https://bugzilla.redhat.com/show_bug.cgi?id=2139849
Are we going to require that all dependent packages get rebuilt, or will
we enable FTP support again in libxml2?

Comment 5 Mamoru TASAKA 2022-11-03 16:20:47 UTC
(I am not a maintainer for libxml2, and am not familiar with libxml2 upstream policy but anyway speaking)

So if FTP related symbol erasion is the only problem, so perhaps simply adding --with-ftp for libxml2 is the best, I think.
But I am not confident about if that modification is really sufficient...
There are "really" removed symbols on 2.10.0 (as I wrote on comment 3).

Comment 6 Adam Williamson 2022-11-03 16:56:12 UTC
https://gitlab.gnome.org/GNOME/libxml2/-/commit/4a8c71eb7cc1c9001afaeefbd454f06f5fdaa046 removed the docbook stuff. The justification was "Because of a bug in commit 961b535c, DOCBparser.c was never compiled since 2012. I couldn't find a Debian package using any of its symbols, so it seems safe to remove this module."

The xmlBuf* functions were removed in https://gitlab.gnome.org/GNOME/libxml2/-/commit/fe9f76ebb8127e77cbbf25d9235ceb523d3a4a92 , claimed to be "unused".

Comment 7 Mamoru TASAKA 2022-11-03 17:01:59 UTC
Okay, then adding "--with-legacy --with-ftp --with-xptr-locs" in libxml2 2.10.0 spec file is perhaps the safe solution.

Comment 8 Adam Williamson 2022-11-03 17:13:15 UTC
I can do a build that way if we think it's the best idea. Still, this seems like something we should discuss with upstream? It doesn't seem good if the ABI changes without the soname changing if you compile it the same way as before, right?

Comment 9 Adam Williamson 2022-11-03 17:50:48 UTC
*** Bug 2138022 has been marked as a duplicate of this bug. ***

Comment 10 Fedora Update System 2022-11-03 17:56:04 UTC
FEDORA-2022-d7349a124a has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-d7349a124a

Comment 11 Adam Williamson 2022-11-03 17:57:19 UTC
Please try with -2 , I added the options suggested by mtasaka.

Comment 12 Dusty Mabe 2022-11-03 19:32:37 UTC
*** Bug 2139849 has been marked as a duplicate of this bug. ***

Comment 13 Fedora Update System 2022-11-04 11:47:46 UTC
FEDORA-2022-d7349a124a has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-d7349a124a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-d7349a124a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 14 Daniel Berrangé 2022-11-04 12:32:38 UTC
(In reply to Adam Williamson from comment #8)
> I can do a build that way if we think it's the best idea. Still, this seems
> like something we should discuss with upstream? It doesn't seem good if the
> ABI changes without the soname changing if you compile it the same way as
> before, right?

Yes, this certainly needs to be reported upstream. A desire to be able to disable
features at build time is perfectly OK, but that should never be allowed to affect
the actual exported public APIs.  The public API / library ABI should be invariant
for any given release, regardless of build option selection. IOW, if FTP is disabled
at build time, leave the FTP APIs present in the library, but stub the API 
implementation so it reports an error when used at runtime.

Comment 15 Rex Dieter 2022-11-08 13:46:23 UTC
Curious, a GraphicsMagick update was pushed (not me) rebuilt against the libxml2 that removed symbols.  Is that GM rebuild still ok now, or does it need rebuilding again against the "fixed" libxml2?  (I'm guessing it's OK, but asking for clarification)

Comment 16 Adam Williamson 2022-11-08 16:03:54 UTC
As far as I understand things I think it should be okay. Easiest thing would be to test it, though...

Comment 17 Fedora Update System 2022-11-09 11:21:32 UTC
FEDORA-2022-d7349a124a has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.