From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A51B31382C5 for ; Sun, 24 Jan 2021 19:04:41 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1D2B6E08EF; Sun, 24 Jan 2021 19:04:39 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D7160E08D3 for ; Sun, 24 Jan 2021 19:04:38 +0000 (UTC) Message-ID: <272dbc5846f642f867f4c45683dd82f58dbf8750.camel@gentoo.org> Subject: Re: [gentoo-dev] [News item review v2] Python preference to follow PYTHON_TARGETS From: =?UTF-8?Q?Micha=C5=82_G=C3=B3rny?= To: gentoo-dev@lists.gentoo.org Date: Sun, 24 Jan 2021 20:04:33 +0100 In-Reply-To: References: <2c4f440d9d368fd8b1aaed94e3cc992bfb987e8c.camel@gentoo.org> Organization: Gentoo Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.38.3 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Archives-Salt: d13f312a-d8ef-45bd-afaa-1fee7f78fb75 X-Archives-Hash: aa8de53c9a11060668e2e9c181f23e9b On Sun, 2021-01-24 at 10:16 -0500, Aisha Tammy wrote: > On 1/24/21 7:59 AM, Michał Górny wrote: > > Here's v2 with extra 'tl;dr' instructions in first para: > > > > ``` > > Title: Python preference to follow PYTHON_TARGETS > > Author: Michał Górny > > Posted: 2021-01-24 > > Revision: 1 > > News-Item-Format: 2.0 > > > > On 2021-02-01 stable users will switch to a new method of updating > > the preferred Python versions that employs the configuration update > > mechanism in order to follow PYTHON_TARGETS. We will also deprecate > > and stop installing app-eselect/eselect-python by default. If you wish > > to use the newest Python version present in your PYTHON_TARGETS, you > > only have to accept configuration changes. If you wish need > > to customize the behavior, read on. > > > > Since 2017, /usr/bin/python and the related non-versioned symlinks > > are wrapped through dev-lang/python-exec. The list of preferred Python > > implementations is stored in /etc/python-exec/python-exec.conf and/or > > per-program /etc/python-exec/.conf configuration files. > > To preserve backwards compatibility, app-eselect/eselect-python remained > > a wrapper that updated this file. > > > > However, this mechanism alone has proven inconvenient to end users who > > had to update python-exec.conf whenever the default PYTHON_TARGETS > > changed. Thanks to the fallback logic, this was not a major problem > > for software installed via Gentoo packages that always ensure that > > a supported implementation is used. However, users have reported that > > whenever the preference for /usr/bin/python mismatched their > > PYTHON_TARGETS, their custom scripts would break due to unsatisfied > > dependencies. This does not follow the principle of least surprise. > > > > For this reason, we have decided to change the default python-exec > > configuration to match PYTHON_TARGETS by default, in the eclass > > preference order, that is from the newest CPython version to oldest, > > with alternative Python implementations coming afterwards. This change > > will be propagated via the configuration protection mechanism whenever > > dev-lang/python-exec-conf is installed or rebuilt due to PYTHON_TARGETS > > changes. This will permit the users to interactively confirm > > the updates. > > > > If the new default is not correct for you, please use your preferred > > configuration update tool to discard or edit the new configuration file. > > > > Furthermore, dev-lang/python will no longer attempt to automatically > > update the Python interpreter preference, or pull in eselect-python > > automatically. If you wish to continue using it, please install it > > manually to ensure that it is not unmerged. > > > > ``` > > > > Has this change already been pushed for unstable? I am running an unstable > system but I still have eselect-python, so I assume not (unless due to my side > error). dev-lang/python-exec-conf is available in ~arch already but app- eselect/eselect-python is still pulled in unconditionally. -- Best regards, Michał Górny