OK, down the rabbit hole. I believe that many of us have been misinterpreting OpenGL version string. Evidentally, some OpenGL functionality has been deprecated, and these OpenGL strings are trying to tell us two separate things. OpenGL version string tells us the version of OpenGL that is TOTALLY SUPPORTED (including deprecated functionality). Frequently, that stops at version 3.0. The OpenGL core profile version string, on the other hand, tells us the version number that is core, i.e., currently required, functionality.
So, for the following:
OpenGL renderer string: Mesa DRI Intel® Iris Pro Graphics P580 (Skylake GT4e)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.0.5
OpenGL core profile shading language version string: 4.50
OpenGL version string: 3.0 Mesa 18.0.5
I believe it says that ALL OpenGL functionality (whether deprecated or not) is up to version 3.0, and current, core required functionality up to 4.5 is covered.
In ParaView’s About, it reports the following:
OpenGL version 4.5 (Core Profile) Mesa 18.0.5
So, I interpret this as saying that we are running on OpenGL version 4.5, ParaView realizes that, and will run in hardware.
By the way, this does NOT answer Jean’s original question, having to do with the difference between the About information and the Python information.
We explicitly set the OpenGL version to 3.2 in the VTK QT widget. That’s the OpenGL context version we are working with, and reported by ParaView about window. The version reported by python (4.5) is probably the maximum version supported by the card.