riscv-software-src / riscv-unified-db

Machine-readable database of the RISC-V specification, and tools to generate various views
Other
20 stars 15 forks source link

Establish versioning scheme #299

Open dhower-qc opened 4 days ago

dhower-qc commented 4 days ago

Right now, UDB is assuming that all version numbers follow SemVer. Unfortunately, this is not how RVI versions extensions.

Here is a proposal:

When specifying version requirements, we will can use the ~> A operator to mean "any version >= A that is not incompatible with A". For example:

X ~> 1.2  # With no breaking change, will match 1.2, 1.3, 2.0, 3.1, ...   It will not match 1.0, 1.1
Y ~> 1.1  # Assume that Y version 1.4 is breaking. This will match 1.1, 1.1.1, 1.2, 1.3. It will not match 1.4, 2.0, ...