What is our plan for Qt6 and QXmlPatterns?

Christoph Cullmann (cullmann.io) christoph at cullmann.io
Thu Oct 28 09:01:41 BST 2021

On 2021-10-28 08:32, Helio Chissini de Castro wrote:
> Hi Albert
> Can i raise the questions on all valid possible solutions ?
> - Maintain qxmlpattern on our side
> - Move to libxslt
> - Move away from Xml
> The first one is easy from the point of view of applications, but we
> don't know how much maintenance towards qt6 will be considering.
> The second one is a little more complex from the point of view of
> applications, some for buildsystem as well, but then we will use a
> library that is already proven everywhere and don't need to maintain
> and can consider API stable enough.
> The third one, more unlikely but valid,  is to understand why we are
> using XmlPatterns and if we can't replace it with something more
> modern for the "6" interaction of frameworks/plasma. Is some new
> development and will introduce a lot of new things to thought, but
> then, still a valid possibility.


it think it is more depending on what the application/frameworks does 
with the QXmlPatterns.

e.g. syntax-highlighting does only optional validation of the XML files 
with it.
I will move that in KF6 to libxerces, I do already know how to implement 
as I did the same at work to move away from QXmlPatterns.

e.g. if applications use xpath stuff, they could use pugixml.

If they want to have XSLT transformation Albert's mentioned libxslt 
might be a good solution.

But to decide that I would assume one needs to inspect the uses.


> []'s
> On Thu, Oct 28, 2021 at 12:31 AM Albert Astals Cid <aacid at kde.org>
> wrote:
>> QXmlPatterns has been deprecated for a long time and the current
>> plan is that there will no Qt6 release of it.
>> We use it in quite some places
> https://lxr.kde.org/search?%21v=kf5-qt5&_filestring=CMakeLists.txt&_string=XmlPatterns
>> For those that don't want to click the link
>> artikulate
>> cantor
>> digikam
>> gcompris
>> Maybe not?
>> https://invent.kde.org/education/gcompris/-/merge_requests/89
>> kbibtex
>> kdav
>> kdav2
>> kig
>> ktouch
>> rocs
>> syntax-highlighting
>> kdepim-runtime
>> kipi-plugins
>> massif-visualizer
>> Maybe not?
>> https://invent.kde.org/sdk/massif-visualizer/-/merge_requests/3
>> It's not a whole lot of apps, but it's a considerable number.
>> The suggested solution by The Qt Project seems to be migrate to
>> something like libxslt.
>> Has anyone have any experience with that?
>> Could we create some kind of wrapper so we would not have to port
>> all those apps one by one?
>> Another potential solution is us "adopting" QtXmlPatterns and
>> porting it to Qt6, the code is said to be a bit of a nightmare and
>> basically unmaintainable, that's why The Qt Project doesn't want to
>> have a Qt6 version, but given we don't have commitments like
>> commercial support for our things, we could probably get away with a
>> "we did this for ourselves, you should really not use it" statement.
>> Any other ideas?
>> Cheers,
>> Albert

Ignorance is bliss...
https://cullmann.io | https://kate-editor.org

More information about the kde-devel mailing list