From f093ea91a967f847439e0ea2398b27564bb55e32 Mon Sep 17 00:00:00 2001 From: James Falcon Date: Tue, 1 Feb 2022 12:37:49 -0600 Subject: [PATCH 1/2] docs: include upstream python version info --- CONTRIBUTING.rst | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index cbd1ce3bb0f..70efb046a89 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -197,6 +197,15 @@ Design This section captures design decisions that are helpful to know when hacking on cloud-init. +Python Support +-------------- +Cloud-init upstream currently supports Python 3.6 and above. + +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. This policy may change as needed. + Cloud Config Modules -------------------- @@ -213,11 +222,8 @@ Type Annotations ---------------- The cloud-init codebase uses Python's annotation support for storing -type annotations in the style specified by `PEP-484`_. Their use in -the codebase is encouraged but with one important caveat: only -function annotations or comment annotations are supported, as the -variable annotations specified in `PEP-526`_ were introduced in Python -3.6. +type annotations in the style specified by `PEP-484`_ and `PEP-526`_. +Their use in the codebase is encouraged. .. _PEP-484: https://www.python.org/dev/peps/pep-0484/ .. _PEP-526: https://www.python.org/dev/peps/pep-0526/ From 600a978decfb17b8a39afa454ef966139222f406 Mon Sep 17 00:00:00 2001 From: James Falcon Date: Tue, 1 Feb 2022 16:20:01 -0600 Subject: [PATCH 2/2] Add version table --- CONTRIBUTING.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 70efb046a89..73122d79000 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -206,6 +206,17 @@ 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. This policy may change as needed. +The following table lists the cloud-init versions in which the +minimum python version changed: + +================== ================== +Cloud-init version Python version +================== ================== +22.1 3.6+ +20.3 3.5+ +19.4 2.7+ +================== ================== + Cloud Config Modules --------------------