Closed nscuro closed 1 month ago
We will likely need a deserializer that:
Here's a quick draft for how that might look like:
FallbackKafkaDeserializer.java
That enables consumers to start working with the new schema, even though they may still receive records using the old schema.
Current Behavior
We currently use the CycloneDX Protobuf schema v1.4:
Proposed Behavior
Update the schema to v1.6: https://github.com/CycloneDX/specification/blob/master/schema/bom-1.6.proto
Note that v1.6 may not be backward-compatible with v1.4, because up until v1.6, the schema was not checked for backward-compatibility. We need to check how this affects us. If Kafka records were produced with CycloneDX schema v1.4, can we consume them with v1.6?
Since that version, the Protobuf schema is tested with
buf
: https://github.com/CycloneDX/specification/blob/master/.github/workflows/test_proto.ymlThat should make it more stable / backward-compatible for future releases.
Checklist