Gentoo Archives: gentoo-commits

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