Prompted by a post on the Asterisk users mailing list I thought I’d write a bit about Asterisk versioning and releases for this blog post. The Asterisk project at any given time has between 2 and 3 major versions of Asterisk being released. When I say major version I’m referring to an entirely different branch of Asterisk, which can have different features and functionality. When we initially release a version it is cut off from the main development branch (master) into its own branch and then takes its own path. This path generally allows bug fixes, security fixes, and backwards compatible tested non-invasive new functionality. For master however it can receive major changes and new functionality alongside bug fixes and security fixes.
Versions can have different support timelines as well. We have what are called long term supported releases and standard releases. A long term supported release is fully supported for 4 years followed by 1 year of security fixes. A standard supported release is fully supported for 1 year followed by 1 year of security fixes. Standard releases act as a time to further test things and finalize them before supporting them for a long period of time. These timelines together give overlap and time for people to move between versions to ensure they are up to date and on a future supported version.
I highly suggest following the Asterisk Versions wiki page which gives specific dates on when things become security fix only and ultimately end of life. This can allow you to plan your own testing and deployment to keep on a supported version of Asterisk.
In fact if you visit the wiki page you might notice that Asterisk 13 is going security fix only October of this year. It has had a longer life than usual (6 years of being fully supported) as we wanted to give additional time to fully flush out and test new functionality but its time is nearing its end. If you don’t yet have a plan for moving to Asterisk 16 which is the next long term supported release I highly suggest doing so.