Python enters a new major release cycle

Python developers made a decision Go to new scheme release preparation. New significant releases of the language will now be released once a year, and not every year and a half, as it was before. Thus, the release of Python 3.9 can be expected in October 2020. The total development time for a major release will be 17 months.

Work on a new branch will begin five months before the release of the next branch, during its transition to the beta testing stage. The new branch will then be in alpha releases for seven months, adding new features and fixing bugs. After that, beta versions will be tested for three months, during which the addition of new features will be prohibited and all attention will be paid to fixing bugs. The last two months before the release, the branch will be at the release candidate stage, where the final stabilization will be carried out.

For example, the development of the 3.9 branch began on June 4, 2019. The first alpha release was published on October 14, 2019, and the first beta release is expected on May 18, 2020. In August, a candidate for releases will be formed, and on October 5, a release.

Python enters a new major release cycle

After the release, the branch will be fully supported for a year and a half, after which patches with vulnerabilities will be formed for it for another three and a half years. As a result, the total maintenance time will be five years. During the first phase of support, bugs will be fixed, and updates will be released approximately every two months, with installers for Windows and macOS in preparation. At the second stage, releases will be formed as necessary to eliminate vulnerabilities and will be placed only in the form of source codes.

It is noted that the new development cycle will ensure a predictable transition to the alpha and beta testing stages, as well as know exactly when the release is formed, which will make it possible to synchronize the development of their products with new Python branches. A predictable development cycle will also make Python development planning easier, and releasing new branches more frequently will speed up the delivery of new features to users and reduce the amount of changes in each branch (releases more often, but there are fewer new features in each release). Stretching and breaking up the alpha testing phase will allow us to track development dynamics and integrate features more seamlessly, avoiding the beta release rush, during which the developers tried to complete the development of features at the last moment so that they were not delayed by 18 months to the next branch.

Source: opennet.ru

Add a comment