I’m not sure what is the impact of enabling QSurfaceFormat::CompatibilityProfile. Could we just enable it on all configurations?
Compatibility Profile is legacy OpenGL (version <= 2) where you only have fixed functions (no shaders; software rendering only), while core profile is modern OpenGL (includes shaders; render on gpu). Most OS’s ship with legacy OpenGL to handle the case where you don’t have dedicated rendering hardware.
I don’t recommend enabling it on all configurations because then you’re turning off hardware rendering.