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 <[email protected]>
> > 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/<basename>.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



Reply via email to