In an on-going effort to provide more clarity and transparency into the OpenBLT bootloader development process, this article explains the idea behind the version numbers, the release schedule, and the difference between stable releases and the development trunk.
Different release types
The OpenBLT bootloader has two different types of releases: stable releases and the development trunk. The development trunk is most up-to-date, but might contain incomplete and not yet fully tested functionality. It is therefore recommended to take the latest stable release as a bootloader foundation for your embedded software project.
Active development of the bootloader takes place in the development trunk. The development trunk is the trunk-directory in the project’s SVN repository on SourceForge. When it is time to make a new stable release and the newly developed features and functionality are thoroughly tested, a release tag is created in the project’s SVN repository on SourceForge. The name of the release tag is formatted as “openblt_v<major><minor><patch>”. For example, the release tag for version 1.4.1 is “openblt_v010401”. Based on the code in the release tag, a zip-file is created of the stable release and made available for download from the files section on SourceForge. The name of the zip-file is the same as the release tag, for example “openblt_v010401.zip”.
The entire SVN repository on SourceForge is mirrored to GitHub on a daily basis. So for those that prefer to work with GIT and/or GitHub, have a look at the OpenBLT project on GitHub: https://github.com/feaser/openblt.
Starting 2017 a switch was made to a fixed release schedule. Stable releases are made twice a year. One stable release in January, followed by one in July.
The OpenBLT project has its own private issue tracking system. Request for new features and functionality are entered as tickets into this issue tracking system, together with bug reports. Right after making a new stable release, all active tickets are evaluated and prioritized to decide what will be worked on for the next stable release.
An OpenBLT version number is constructed from 3 digits, separated by a point. The first number is the major version number. The second number is the minor version number. The last number is the patch release number.
The major version number changed from 0 to 1 when the OpenBLT project was taken out of beta in July of 2014. In the future this will only change in case the bootloader is completely redesigned to the point that there will be significant effort involved for the user to upgrade to the new major version.
The minor version number is the one that is incremented each time a new stable release is made, according to the fixed release schedule.
The patch release number is incremented each time a new release is made before the next planned stable release. This happens when the development of a new feature was completed that users are waiting for or when important bug fixes were made.
Hopefully this article gave you a good insight into how releases of the OpenBLT bootloader are made and how the version numbering works. Feel free to leave a comment if you would like any further explanation.