Hello cloud-init community, Cloud-init upstream would like to put a version support policy in place for Python. Currently, we have no good way of deciding when to drop support for a particular version of Python.
Version support involves a set of tradeoffs around predictability, maintainability, and distro compatibility. Keeping old versions too long creates a large maintenance burden upstream, but dropping versions too quickly creates a large maintenance burden for distro maintainers. Python has a predictable release cadence, and python releases are supported for 5 years post release. After this time, most libraries also start dropping support and upstream maintenance becomes harder. However, there are distros still regularly receiving cloud-init backports beyond this 5 year window. As far as we're aware, there aren't any distros regularly backporting cloud-init changes (this doesn't include ad hoc security maintenance) after a 6 year window. Given this, our proposal is that cloud-init upstream will stay compatible with a particular python version for 6 years after release. After 6 years, we will stop testing upstream changes against the unsupported version of python and may introduce breaking changes. Given that python 3.5 was released just over 6 years ago, this also means we will end support for Python 3.5 at the end of the year. Starting January 3rd, cloud-init will support Python 3.6+. If these assumptions are incorrect, or this causes any hardship, please reach out ASAP. We are willing to revisit this policy at any time if needed. Thanks, James
-- Mailing list: https://launchpad.net/~cloud-init Post to : [email protected] Unsubscribe : https://launchpad.net/~cloud-init More help : https://help.launchpad.net/ListHelp

