Sure thing! Apologies if this is too vague or too specific, happy to go into more / less detail on whatever.
“soft push” is my unofficial phrase for when we do a small or incremental rollout of a new feature, first on staging, and then on production before encouraging everyone to start hitting it, just so we have a chance to make sure we like the interface, things work as expected, etc.
In particular during this last weekend, I had been testing changes on staging all week, and I really wanted to make sure people using the CLI were able to flash and compile locally as soon as possible. I had been nearly ready for a Thursday rollout, but I was still seeing a few bugs. So I spent a chunk of time Saturday / Sunday to test and fix those, and then do a rollout. I think most of those changes will be in the Sprint blog post.
Generally when improvements are ready to be released, we try to do rollouts during low impact times, and when most of the team is available to respond if problems arise. Right now I think that’s generally something like Thursday mid-day.
Since a lot changed in the firmware during this last sprint (thanks to a ton of great pull requests and testing), there continues to be testing of the latest master. At the moment we just got out of our planning meeting, so I think Zac and Mohit are still testing the changes to make sure everything still works as expected.
The cloud build service pulls the
compile-server2 branch when doing compiles for the build IDE and for the CLI and API requests. In this sense the
compile-server2 branch is the ‘stable / release’ branch, and the
master branch is the live development one. When we feel really good about a version of the firmware, we will sometimes tag a commit with a special “spark_abc” tag (
spark_2, etc). This special golden version is used when auto-updating cores running Tinker from the factory, and the latest tagged version is used during manufacturing as well.