Description
While still available, binary JSON is expected to become deprecated (in 5.15?). Users are encouraged to migrate to CBOR or something else.
As a serialized QShader includes the associated QShaderDescription stored as binary JSON, we should consider switching the approach to either to CBOR or something else. The change should be done in qtbase/5.15, in order not to disturb 5.14 (which ships with .qsb files in a bunch of places).
Regarding compatibility:
- The qsb format is versioned so we can continue supporting deserializing both.
- Serialization can just use the latest format always since that also lives in QShader, in qtbase. Thus building qt-labs/qtshadertools against qtbase 5.14 gives a qsb outputting the 5.14 compatible format (that also works with 5.15), while building against 5.15 produces a qsb tool outputting the new, 5.15 compatible format (that does not work with 5.14).