Qt5 future in VTK

So 5.15 is EOL in May 2023 (without a paid subscription). It’s probably time to start thinking about what this means for VTK (and ParaView for that matter).

VTK has had Qt6 as an option for a while, but CI hasn’t been doing anything about it. I am proposing:

  • migrate all existing (Qt-using) CI jobs to Qt6 instead of Qt5
  • deprecate Qt5 support in VTK (though it will stick around)
  • add Qt5 to the pile of things to test in a “mindeps” build that we still need to put together (Python 3.4/3.6, GCC $old, etc.)

ParaView does not yet support Qt6, so that would be a prerequisite to the deprecation step of the above at least. I suspect ParaView would follow these same steps in short order (due to the EOL date).

Any other thoughts?

Cc: @cory.quammen @mwestphal @dcthomp

2 Likes

Do we have any issues tracking issues with ParaView on Qt6? Understanding the scope of the work required will say a lot. I suspect it is not extensive or we would be better off just moving to trame. :slight_smile:

Do we have any issues tracking issues with ParaView on Qt6?

First thing is to prepare a runner/image with qt6 support and see how the testing goes.

Understanding the scope of the work required will say a lot.

We already used VTK with Qt6 with success, never run the full test suite though

I suspect ParaView would follow these same steps in short order (due to the EOL date).

Yes, that is needed. Never tried building it with Qt6 though.

I suspect it is not extensive or we would be better off just moving to trame.

VTK can’t move to Trame, and this out of the scope and more akin to the Async discussion.

No. It’s probably mostly CMake changes honestly. Probably some deprecated API calls that need dealt with too.

VTK and the VTK Examples build OK with QT6.4.1. This is for Linux and Windows using the latest VTK Master.

On moving to QT6, there were a few issues to iron out, so, for ParaView, looking back over the Qt references in the MR’s may help.

Wrt VTK I don’t build the examples that are in VTK itself so any Qt ones there they may need modification. Should be easy enough since the Qt exampls in VTK Examples were ported from them.