Clarification on firmware branches - 'develop' and 'latest'

At this moment there are two branches where Photon firmware development is taking place – develop and latest.

With the recent release of 0.4.4, if I need to compile locally, am I right to say that:

  1. bleeding-edge updates: use the develop branch (and requires the PARTICLE_DEVELOP=1 environment var to compile, untested/unreleased)
  2. latest released firmware: use the latest branch, and therefore can be considered as the ‘stable’ release for Photon firmware (and not the develop branch?)

The part that confused me is the tagline on the spark/firmware github for Photon firmware:

Also, will I be able to compile for Cores using the latest branch too? Or should that be done in master at this point in time?

This is from what I can gather from the docs here:

You can compile using develop or latest but the features are not guaranteed to work with a Core until it is official announced.

The :cloud: compiler is compiling against the master branch so that’s the official source code used with the Core :wink:

Ok, so the develop and latest branches are not ready for Core development atm. That’s fine, thanks for the note for Cores.

Photon-wise though: does the :cloud: compiler currently compile Photon firmware against the master branch, or the latest branch?

I suggest that the description on spark/firmware (on github) be edited to provide a clearer differentiation between the latest and develop branches, instead of having to burrow down to build/ to figure this out.

It compiles against releases ( that you can select for each device. There is 0.4.4 and 0.4.3 offered now.

so, coming back to local compiles for Photons…

can we expect the latest branch to contain the most stable Photon releases?

Yup so see this network chart:

Since V0.4.4, the develop branch is way ahead and tested fixes are pushed to latest . Changes live in develop till they are full tested and moved to latest where eventually becomes the next release :wink:

Hope this helps though my explanation might be just scratching the surface :wink:

Thanks, that helped.