Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: python@g.o, "Michał Górny" <mgorny@g.o>
Subject: [gentoo-dev] [REVIEW 1/2] 2020-09-28-python-2-7-cleanup: add a new news item
Date: Sun, 27 Sep 2020 20:09:05
Message-Id: 20200927200848.55981-1-mgorny@gentoo.org
1 Signed-off-by: Michał Górny <mgorny@g.o>
2 ---
3 .../2020-09-28-python-2-7-cleanup.en.txt | 60 +++++++++++++++++++
4 1 file changed, 60 insertions(+)
5 create mode 100644 2020-09-28-python-2-7-cleanup/2020-09-28-python-2-7-cleanup.en.txt
6
7 diff --git a/2020-09-28-python-2-7-cleanup/2020-09-28-python-2-7-cleanup.en.txt b/2020-09-28-python-2-7-cleanup/2020-09-28-python-2-7-cleanup.en.txt
8 new file mode 100644
9 index 0000000..22aba74
10 --- /dev/null
11 +++ b/2020-09-28-python-2-7-cleanup/2020-09-28-python-2-7-cleanup.en.txt
12 @@ -0,0 +1,60 @@
13 +Title: Python 2.7 cleanup is progressing
14 +Author: Michał Górny <mgorny@g.o>
15 +Posted: 2020-09-28
16 +Revision: 1
17 +News-Item-Format: 2.0
18 +Display-If-Installed: dev-lang/python:2.7
19 +
20 +Python 2.7 has reached its end-of-life by 2019-12-31, and many projects
21 +have removed Python 2 support since. During the last few months we have
22 +been working hard to migrate Gentoo to Python 3, and we have finally
23 +reached the point making it possible for the vast majority of our users
24 +to run a system free of Python 2.7 modules.
25 +
26 +The few remaining high profile packages (e.g. dev-python/cython)
27 +are preserving Python 2.7 only for a very few uncommon packages.
28 +For this reason, we have decided to remove python2_7 from the default
29 +value of PYTHON_TARGETS.
30 +
31 +If you did not override this variable on your system, your next @world
32 +upgrade should take care of removing the target from the remaining
33 +packages. If you did override it, you have to remove python2_7 manually
34 +if you do not need it. Please note that you may need to manually
35 +uninstall any Python 2.7 packages installed from third-party
36 +repositories and/or run `emerge --depclean` first to remove orphan
37 +packages.
38 +
39 +In the unlikely scenario that you use one of the few remaining packages
40 +needing these dependencies, your package manager will inform you
41 +of unsatisfied USE dependencies and/or suggest readding python2_7 target
42 +to the appropriate packages. However, please note that these packages
43 +will be masked for removal by the end of 2020 if they are not ported
44 +to Python 3.
45 +
46 +Please note that the Python 2.7 interpreter (without additional Python
47 +packages) remains necessary to build a few high profile packages,
48 +in particular Chromium, Mozilla software and PyPy. If you build either
49 +of these packages from source, you will not be able to permanently
50 +remove Python 2.7 from your software.
51 +
52 +We are going to preserve CPython 2.7 (and PyPy2.7) for as long
53 +as necessary and provide security fixes to the best of our ability.
54 +However, please note that we are not able to dedicate resources to
55 +auditing Python 2.7's code and with little community interest in that,
56 +it should be considered potentially vulnerable.
57 +
58 +If your projects still rely on Python 2.7, we would like to once again
59 +encourage you to migrate them to Python 3. However, if you really need
60 +to run them, we suggest using a virtualenv. To create a new Python 2.7
61 +environment, install dev-python/virtualenv and use the following option:
62 +
63 + virtualenv -p /usr/bin/python2.7 ...
64 +
65 +To create a PyPy2.7 environment:
66 +
67 + virtualenv -p /usr/bin/pypy ...
68 +
69 +Modern versions of pip should be able to automatically select older
70 +versions of packages that still support Python 2.7. Please note that
71 +these versions are generally no longer supported. They can be buggy,
72 +vulnerable or simply incompatible with one another.
73 --
74 2.28.0

Replies