-
Notifications
You must be signed in to change notification settings - Fork 207
Description
There is currently not a clear answer to how the CVE Record Format ought to be versioned. While the QWG has collectively suggested SchemaVer as a potential scheme, there doesn't appear to be consensus among the group on that question.
In particular, while SchemaVer expresses backward compatibility of new schema versions (the level of backward compatibility determines which of the three numbers in a SchemaVer version gets bumped at release-time), it does not express anything about forward compatibility.
Since CVE is a multi-stakeholder system, and the CVE Record Format impacts both CVE data producers (CNAs, ADPs), and consumers, it would be good to be more rigorous in the versioning applied to the record format so we can better communicate to our stakeholders about the implications of a new release.
This question has also come up in some specific conversations recently, including:
- RFD to introduce an RFD process #405
- Add
packageURL
field to product inaffected
array. #409 - Add a formal semver 2.0.0 version type #371
In #405, the issue is how versioning impacts the "Compatibility and Migration" section of the RFD template.
In #409, the issue is whether a new packageURL
field on the product
object of the affected
array should be added to the set of "identifier-like" fields available to fulfill the requirement for an "identifier-like" entry in every product
object, which presents a forward compatibility hazard.
In #371, the issue is what level of breakage we consider adding a new version type to the schema to be. Under SchemaVer, it's an ADDITION-level change, but it does present a forward compatibility issue (users of the current version of the format may need to implement or import a Semantic Version parser).
From these, we can see that there are two layers to the question:
- Should the CVE Record Format's stability guarantees include some level of forward compatibility in addition to backward compatibility? If so, what forward compatibility guarantees should we make?
- How should compatibility be expressed in the version number published with new releases of the CVE Record Format?
Metadata
Metadata
Assignees
Labels
Type
Projects
Status