japaric-archived / photon-quickstart

Cargo template for developing photon applications
Apache License 2.0
43 stars 5 forks source link

Supporting other firmware versions #15

Open japaric opened 7 years ago

japaric commented 7 years ago

Currently the template links Rust applications to the v0.6.2 of the firmware. It suppose it won't be a problem if you flash these applications on devices running v0.6.x of the firmware. The question is how we should go about supporting different minor versions of the firmware.

The first idea that pops to mind is having a Cargo feature that lets you select which minor firmware version is being used but that doesn't seem too good because Cargo features are binary (on/off) so you could enable the "06x" feature and the "07x" feature at the same time which doesn't make sense.

Another possibility is maintaining one branch of this repo per minor firmware version. That involves more maintenance work as patches would have to be backported to other branches.

Finally, we could support only the latest version. This reduces maintenance work at the expense of excluding users that are using older firmware versions.

dbrgn commented 7 years ago

It suppose it won't be a problem if you flash these applications on devices running v0.6.x of the firmware

Can we find out whether that's the case?

If it is, we could support the latest two versions in separate branches in the HAL repository. Most development would probably be specific to the latest version, so backporting the other commits should not be that hard for 1 branch.

This repository on the other hand is a template, I wouldn't try to support any older versions.