Bug 279705 - textproc/libxml2: Update to 2.13.5
Summary: textproc/libxml2: Update to 2.13.5
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-desktop (Team)
URL: https://gitlab.gnome.org/GNOME/libxml...
Keywords:
Depends on: 279741 279768 279958 279960 279961 279962 279966 279976 280153 280158 280160 281593 281612 279745 279746 279747 279748 279749 279750 279752 279754 279755 279757 279758 279759 279761 279763 279765 279766 279897 279898 279954 279955 279956 279957 279959 279963 279964 279965 279967 279968 280154 280157 280159 280162 281592
Blocks:
  Show dependency treegraph
 
Reported: 2024-06-13 05:06 UTC by Daniel Engberg
Modified: 2024-11-13 21:00 UTC (History)
3 users (show)

See Also:
vishwin: maintainer-feedback+


Attachments
Patch for libxml2 (8.74 KB, patch)
2024-06-13 05:06 UTC, Daniel Engberg
vishwin: maintainer-approval-
Details | Diff
Patch for libxml2 v2 (8.77 KB, patch)
2024-06-15 14:05 UTC, Daniel Engberg
vishwin: maintainer-approval-
Details | Diff
Patch for libxml2 v3 (14.37 KB, patch)
2024-06-16 06:31 UTC, Daniel Engberg
vishwin: maintainer-approval-
Details | Diff
Patch for libxml2 v4 (9.32 KB, patch)
2024-06-21 12:04 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v5 (18.28 KB, patch)
2024-06-23 12:36 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v6 (10.33 KB, patch)
2024-07-05 17:12 UTC, Daniel Engberg
no flags Details | Diff
v7 (17.39 KB, patch)
2024-07-14 04:45 UTC, Charlie Li
no flags Details | Diff
Patch for libxml2 v7 (15.74 KB, patch)
2024-07-14 05:33 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v8 (21.39 KB, patch)
2024-07-20 09:28 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v9 (10.33 KB, patch)
2024-07-24 19:29 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v10 (10.35 KB, patch)
2024-09-20 18:23 UTC, Daniel Engberg
no flags Details | Diff
Patch for libxml2 v11 (10.33 KB, patch)
2024-11-13 21:00 UTC, Daniel Engberg
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Engberg freebsd_committer freebsd_triage 2024-06-13 05:06:09 UTC
Created attachment 251428 [details]
Patch for libxml2

This will be a "Meta" PR, at least libxslt will also be needed to updated at the same time.

Compile tested on FreeBSD 14.0-RELEASE (amd64) (make, make check-plist, make test)
Compile tested on FreeBSD 14.1-RELEASE (aarch64) (make, make check-plist, make test)

Poudriere testport OK 13.2-RELEASE (amd64)
Poudriere testport OK 14.0-RELEASE (amd64)

Tested with all listed consumers (including ones for py-libxml2) on freshports.org on 13.2-RELEASE (amd64) using Poudriere:
https://pdr2.bofh.network/build.html?mastername=132-diizzy&build=2024-06-12_15h36m18s
Comment 1 Daniel Engberg freebsd_committer freebsd_triage 2024-06-13 05:08:08 UTC
I have a patch for libxslt ready which I'll submit soon, for now we can work on the fallout of ports that are already known (see link to pdr2).
Comment 2 Charlie Li freebsd_committer freebsd_triage 2024-06-13 19:14:03 UTC
Comment on attachment 251428 [details]
Patch for libxml2

This needs the legacy option exposed and enabled by default, amongst other things. Will reduce the fallout somewhat. Also note that meson is now available.

Upstream still indirectly recommends autotools for Unix-like systems, especially as evidenced by their CI.
Comment 3 Daniel Engberg freebsd_committer freebsd_triage 2024-06-15 08:56:57 UTC
It would be great if we could do without legacy as we're essentially just pushing work in front of us for a later date by using it.

Ports that have ~dead/inactive upstream and no users in tree

textproc/diffmark - 	Abandonware (should be marked as unfetchable at least)
also removes...		textproc/p5-XML-DifferenceMarkup

textproc/liblingoteach - Abandonware (last activity ~20 years ago)
also removes...		misc/lingoteach

devel/libiqxmlrpc -	~ Abandonware, upstream requests patches

textproc/libcroco -	Needs patch, deprecated/dead and already removed in other repos such as Debian and Fedora

Compatibility:

databases/spatialite -	Probably needs the http functionality in libxml2 enabled to keep if the libxml module is enabled

There are also a few compatibility patches recently added to upstream libxml2 repo:

https://gitlab.gnome.org/GNOME/libxml2/-/commit/599ceaffad97faff9e77a3237d319f18cdc2984a
https://gitlab.gnome.org/GNOME/libxml2/-/commit/bd208d5fe110999b17ef88d45648e2a248dc964e

Even without these (for now) we can try to prepare as much as possible.

General note,
Most of the fallout is from 2.12.X which we didn't import due the amount of work  required to migrate to 2.11.X.
Comment 4 Charlie Li freebsd_committer freebsd_triage 2024-06-15 09:01:36 UTC
No, I've actually had 2.12 in my own WIP tree this entire time, but yes even with legacy exposed and enabled by default some downstream stuff had to give.

This is one of those ports where you cannot only account for ports consumers. Further, it's not so much work for us, but the consumers' upstream projects need time and effort to migrate from the legacy APIs. Legacy stays.
Comment 5 Daniel Engberg freebsd_committer freebsd_triage 2024-06-15 13:37:50 UTC
Updated list regarding http functionality,

databases/spatialite -	Probably needs the http functionality in libxml2 enabled to keep the libxml module is enabled
cad/openvsp - 	Probably depends on the http functionality in libxml2
Comment 6 Daniel Engberg freebsd_committer freebsd_triage 2024-06-15 14:05:45 UTC
Created attachment 251475 [details]
Patch for libxml2 v2

Enable http module as some ports requires this functionality such as databases/spatialite and cad/openvsp
Comment 7 Daniel Engberg freebsd_committer freebsd_triage 2024-06-16 06:31:00 UTC
Created attachment 251491 [details]
Patch for libxml2 v3

Backport upstream commits:
95939d6ea3718c458620eeda850add549cd07e99
7c3151903da31efb7a42f3e27857f9f7df6f88e1
b61a960bf6dba639b310646300a1fc21ef473afc

References:
https://gitlab.gnome.org/GNOME/libxml2/-/commit/95939d6ea3718c458620eeda850add549cd07e99
https://gitlab.gnome.org/GNOME/libxml2/-/commit/7c3151903da31efb7a42f3e27857f9f7df6f88e1
https://gitlab.gnome.org/GNOME/libxml2/-/commit/b61a960bf6dba639b310646300a1fc21ef473afc
Comment 8 commit-hook freebsd_committer freebsd_triage 2024-06-16 16:38:11 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=14ef9b0ef00043e34cd1f0f9611667503ebe1006

commit 14ef9b0ef00043e34cd1f0f9611667503ebe1006
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-06-16 16:16:18 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-06-16 16:35:52 +0000

    textproc/p5-XML-DifferenceMarkup: Deprecate and set expiration date to 2024-07-16

    Depends on deprecated port textproc/diffmark

    PR:             279705
    Approved by:    portmgr (blanket)

 textproc/p5-XML-DifferenceMarkup/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 9 commit-hook freebsd_committer freebsd_triage 2024-06-16 16:38:12 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=e1a4636af2dc1f4e3b002b6458371ee3fa558155

commit e1a4636af2dc1f4e3b002b6458371ee3fa558155
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-06-16 16:26:12 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-06-16 16:35:53 +0000

    devel/libiqxmlrpc: Deprecate and set expiration date to 2024-07-16

    Fails to build with libxml2 2.13.0

    PR:             279705

 devel/libiqxmlrpc/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 10 commit-hook freebsd_committer freebsd_triage 2024-06-16 16:38:13 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=86be50192c1a97237c9923dc878cae46e2f6a3f2

commit 86be50192c1a97237c9923dc878cae46e2f6a3f2
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-06-16 16:20:58 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-06-16 16:35:52 +0000

    textproc/liblingoteach: Deprecate and set expiration date to 2024-07-16

    Abandonware, last activity 18+ years ago and fails to build with
    libxml2 2.13.0

    PR:             279705

 textproc/liblingoteach/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 11 commit-hook freebsd_committer freebsd_triage 2024-06-16 16:38:14 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0fea4d9fc1398edf126dd255c5490c32af6f2c58

commit 0fea4d9fc1398edf126dd255c5490c32af6f2c58
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-06-16 16:23:11 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-06-16 16:35:52 +0000

    misc/lingoteach: Deprecate and set expiration date to 2024-07-16

    Depends on deprecated port textproc/liblingoteach

    PR:             279705

 misc/lingoteach/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 12 commit-hook freebsd_committer freebsd_triage 2024-06-16 16:38:15 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=20ee0c7068c50c85dabfb99e1d3a86ada9fdab32

commit 20ee0c7068c50c85dabfb99e1d3a86ada9fdab32
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-06-16 16:13:14 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-06-16 16:35:52 +0000

    textproc/diffmark: Deprecate and set expiration date to 2024-07-16

    Deprecate as port fails to build with libxml2 2.13.0 and upstream is
    gone

    PR:             279705

 textproc/diffmark/Makefile | 4 ++++
 1 file changed, 4 insertions(+)
Comment 13 Charlie Li freebsd_committer freebsd_triage 2024-06-16 21:42:15 UTC
Comment on attachment 251491 [details]
Patch for libxml2 v3

Backports are fine otherwise
Comment 14 Daniel Engberg freebsd_committer freebsd_triage 2024-06-21 12:04:44 UTC
Created attachment 251599 [details]
Patch for libxml2 v4

Update to 2.13.1
Remove deprecated MEM_DEBUG option

New mini-exp run can be found here:
https://pdr2.bofh.network/build.html?mastername=140-diizzy&build=libxml2-2131
Comment 15 Daniel Engberg freebsd_committer freebsd_triage 2024-06-23 12:36:33 UTC
Created attachment 251644 [details]
Patch for libxml2 v5

Backport upstream patches aaa24ca6be56d1573357c88ac82a1542f832576d, 7759765c6c3fcd0735fe7caeb83f1be0f2da7775 and MR 266

References:
https://gitlab.gnome.org/GNOME/libxml2/-/commit/aaa24ca6be56d1573357c88ac82a1542f832576d
https://gitlab.gnome.org/GNOME/libxml2/-/commit/7759765c6c3fcd0735fe7caeb83f1be0f2da7775
https://gitlab.gnome.org/GNOME/libxml2/-/merge_requests/266
Comment 16 Daniel Engberg freebsd_committer freebsd_triage 2024-07-05 17:12:24 UTC
Created attachment 251885 [details]
Patch for libxml2 v6
Comment 17 commit-hook freebsd_committer freebsd_triage 2024-07-06 12:03:18 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8e35b11ca62acfd1e1cb81506c64f3ad773521d9

commit 8e35b11ca62acfd1e1cb81506c64f3ad773521d9
Author:     Daniel Engberg <diizzy@FreeBSD.org>
AuthorDate: 2024-07-06 11:40:15 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2024-07-06 12:02:09 +0000

    games/manaplus: Deprecate and set expiration date to 2024-08-06

    Fails to build with libxml2 2.13.2, unmaintained for years and very
    little activity upstream for the past 2 years

    PR:             279705

 games/manaplus/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 18 Daniel Engberg freebsd_committer freebsd_triage 2024-07-06 12:10:18 UTC
New run here:
https://pdr2.bofh.network/build.html?mastername=140-diizzy&build=libxml2-2132-libxslt-1142-run1

PRs applied: 279705, 279741, 279976 and 279956
Ignore tclxml, that's my fault
Comment 19 Charlie Li freebsd_committer freebsd_triage 2024-07-14 04:45:02 UTC
Created attachment 252032 [details]
v7

Back to autotools. LEGACY option added and enabled by default, resurrect STATIC, both for the benefit of consumers not in the tree. LEGACY implies http, lzma and zlib, which can be exposed as separate options.

Rename the python child port to textproc/libxml2-python, as the Python package name is "libxml2-python" (and not "libxml2"). Currently has USE_PYTHON=distutils despite a pyproject.toml existing (USE_PYTHON=pep517) but need to slightly modify python.mk to allow the parent port's do-configure to run (setup.py is generated).
Comment 20 Daniel Engberg freebsd_committer freebsd_triage 2024-07-14 05:33:26 UTC
Created attachment 252033 [details]
Patch for libxml2 v7

Backport upstream patches dd5adf54c9a2edd452ff828277d85b1d18431d75, e30cb632e734394ddbd7bd62b57cee3586424352 and bf43e8a888cbee75e13622fea8a722b9d166c437

References:
https://gitlab.gnome.org/GNOME/libxml2/-/commit/dd5adf54c9a2edd452ff828277d85b1d18431d75
https://gitlab.gnome.org/GNOME/libxml2/-/commit/e30cb632e734394ddbd7bd62b57cee3586424352
https://gitlab.gnome.org/GNOME/libxml2/-/commit/bf43e8a888cbee75e13622fea8a722b9d166c437
Comment 21 Daniel Engberg freebsd_committer freebsd_triage 2024-07-20 09:28:26 UTC
Created attachment 252189 [details]
Patch for libxml2 v8

Backport upstream patches 8699ba234b5a1328f0f30ca739b8f1dbc90ccf5e, a0330b53c8034bb79220e403e8d4ad8c23ef088f and ed8b4264f65b1ced1e3b13967dd1cf90102cfa40

References:
https://gitlab.gnome.org/GNOME/libxml2/-/commit/8699ba234b5a1328f0f30ca739b8f1dbc90ccf5e
https://gitlab.gnome.org/GNOME/libxml2/-/commit/a0330b53c8034bb79220e403e8d4ad8c23ef088f
https://gitlab.gnome.org/GNOME/libxml2/-/commit/ed8b4264f65b1ced1e3b13967dd1cf90102cfa40
Comment 22 Daniel Engberg freebsd_committer freebsd_triage 2024-07-24 19:29:10 UTC
Created attachment 252261 [details]
Patch for libxml2 v9

Update to 2.13.3
Comment 23 Daniel Engberg freebsd_committer freebsd_triage 2024-09-20 18:23:45 UTC
Created attachment 253697 [details]
Patch for libxml2 v10
Comment 24 Daniel Engberg freebsd_committer freebsd_triage 2024-11-13 21:00:30 UTC
Created attachment 255146 [details]
Patch for libxml2 v11