modular-psu-firmware icon indicating copy to clipboard operation
modular-psu-firmware copied to clipboard

Versioning scheme and (in)compatible changes

Open fietser28 opened this issue 3 years ago • 0 comments

The current development version of the firmware (1.8) is not compatible with the V2 resource files for python scripts generated with studio that are being used with versions <1.8. When upgrading from 1.7 to 1.8 a user has to be recompiled and uploaded to the BB3 to make sure the resource files are V3. I think this can be seen as binary incompatible. This situation might confuse users (it is not a major upgrade).

A common way to look at this is semantic versioning (semver.org) with MAJOR.MINOR.PATCH version numbers. With semantic versioning an new version with binary incompatibility becomes a new MAJOR version (e.g. 2.0.0)

There are several ways to avoid this situation with the BB3:

  • if the firmware 1.8 still support V2, there is no incompatibility. It is still a good idea to implement something in studio no make sure users understand V3 requires firmware =>1.8
  • Release the 1.8 version as 2.0.0 with clear instructions about the needed recompile upload. It helps if studio can to this automatically.

fietser28 avatar Nov 26 '21 13:11 fietser28