diff options
| author | Mike Frysinger <vapier@google.com> | 2019-01-30 14:35:39 -0500 |
|---|---|---|
| committer | Mike Frysinger <vapier@google.com> | 2019-02-01 03:06:04 -0500 |
| commit | e7379dc5f75f4c331c16b4199904dc98ee858e5f (patch) | |
| tree | 61855b16609a8aa678fc014461a5b9ebbeb551d0 | |
| parent | 13f323b2c221db4e69e3f5a671455954b65f1fb3 (diff) | |
| download | git-repo-e7379dc5f75f4c331c16b4199904dc98ee858e5f.tar.gz | |
docs: document a Python 3 migration plan
Bug: https://crbug.com/gerrit/10418
Change-Id: I72d82ce3a2d9af45d942bb10de82340110864ea5
| -rw-r--r-- | docs/python-support.md | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/docs/python-support.md b/docs/python-support.md new file mode 100644 index 00000000..af19cd05 --- /dev/null +++ b/docs/python-support.md | |||
| @@ -0,0 +1,32 @@ | |||
| 1 | # Supported Python Versions | ||
| 2 | |||
| 3 | With Python 2.7 officially going EOL on [01 Jan 2020](https://pythonclock.org/), | ||
| 4 | we need a support plan for the repo project itself. | ||
| 5 | Inevitably, there will be a long tail of users who still want to use Python 2 on | ||
| 6 | their old LTS/corp systems and have little power to change the system. | ||
| 7 | |||
| 8 | ## Summary | ||
| 9 | |||
| 10 | * Python 3.6 (released Dec 2016) is required by default starting with repo-1.14. | ||
| 11 | * Older versions of Python (e.g. v2.7) may use the legacy feature-frozen branch | ||
| 12 | based on repo-1.13. | ||
| 13 | |||
| 14 | ## Overview | ||
| 15 | |||
| 16 | We provide a branch for Python 2 users that is feature-frozen. | ||
| 17 | Bugfixes may be added on a best-effort basis or from the community, but largely | ||
| 18 | no new features will be added, nor is support guaranteed. | ||
| 19 | |||
| 20 | Users can select this during `repo init` time via the [repo launcher]. | ||
| 21 | Otherwise the default branches (e.g. stable & master) will be used which will | ||
| 22 | require Python 3. | ||
| 23 | |||
| 24 | This means the [repo launcher] needs to support both Python 2 & Python 3, but | ||
| 25 | since it doesn't import any other repo code, this shouldn't be too problematic. | ||
| 26 | |||
| 27 | The master branch will require Python 3.6 at a minimum. | ||
| 28 | If the system has an older version of Python 3, then users will have to select | ||
| 29 | the legacy Python 2 branch instead. | ||
| 30 | |||
| 31 | |||
| 32 | [repo launcher]: ../repo | ||
