• Re: [gentoo-user] Why do I suddently need python_targets and python_sig

    From Michael Orlitzky@21:1/5 to Grant Edwards on Fri May 2 19:00:02 2025
    On Fri, 2025-05-02 at 16:26 +0000, Grant Edwards wrote:
    After a normal --sync and -auvND world, it seems I suddenly need to
    specify use flags python_targets and python_single_target for various packages.

    I've never had to set those before.


    Wild guess, python-3.13 recently became default.

    When a new version of python is released or stabilized, it takes a
    while for support to be added to the python packages in the tree. Not
    all maintainers respond at the same speed, and some packages are much
    harder to test than others. We don't want to hold up dev-lang/python indefinitely, so sometimes we wind up with packages in the tree that
    don't support the "current" version of python, as determined by the
    default values of those python variables/flags.

    If you have any of those packages installed, it's very easy to confuse
    portage because the dependency trees involved are huge. It gets stuck
    trying to upgrade "everything" because it can't figure out how to
    upgrade the lagging package and/or the ecosystems that the lagging
    package depends on.

    If possible, wait a week and try again. It will eventually annoy
    someone who has the ability to fix it. Otherwise you'll have to do some
    digging to figure out which dependency is confusing things, and the
    error messages don't make this easy.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eli Schwartz@21:1/5 to Michael Orlitzky on Fri May 2 19:10:01 2025
    This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Ns0ulYu0nHO4Mud4iNnLc0rc
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: quoted-printable

    On 5/2/25 12:50 PM, Michael Orlitzky wrote:
    On Fri, 2025-05-02 at 16:26 +0000, Grant Edwards wrote:
    After a normal --sync and -auvND world, it seems I suddenly need to
    specify use flags python_targets and python_single_target for various
    packages.

    I've never had to set those before.


    Wild guess, python-3.13 recently became default.

    When a new version of python is released or stabilized, it takes a
    while for support to be added to the python packages in the tree. Not
    all maintainers respond at the same speed, and some packages are much
    harder to test than others. We don't want to hold up dev-lang/python indefinitely, so sometimes we wind up with packages in the tree that
    don't support the "current" version of python, as determined by the
    default values of those python variables/flags.


    As a reminder to all,

    ```
    eselect news list all
    ```

    2025-03-24 Python 3.13 to become the default on 2025-05-01

    Everyone was warned about this, if you did not pay attention to the
    warning then there is very little we can do if some packages lag.



    If you have any of those packages installed, it's very easy to confuse portage because the dependency trees involved are huge. It gets stuck
    trying to upgrade "everything" because it can't figure out how to
    upgrade the lagging package and/or the ecosystems that the lagging
    package depends on.


    No, it's been told exactly what to do via *incompatible* USE flags on a package. If you need

    USE=python_targets_python3_13

    for most packages, and also

    USE=python_targets_python3_12

    for some packages plus all their dependencies, you actually have "needs
    both USE flags for most packages, and a handful of leaf packages only
    need one or the other".

    Any library packages run the risk of being needed for both, and that
    includes the entire core ecosystem, which is not small.

    You cannot just upgrade "some" packages, because at a minimum you need
    the entire core set to use both.


    If possible, wait a week and try again. It will eventually annoy
    someone who has the ability to fix it. Otherwise you'll have to do some digging to figure out which dependency is confusing things, and the
    error messages don't make this easy.


    Again as per the news item, you can add python 3.13 to all packages
    without dropping support for python 3.12 -- this means any packages that
    are still lagging will use a different version, and you will have two
    versions of python installed which is "bloat", but perhaps that will be encouragement for people to fix the problem with the packages itself.


    If you add dual python support to all packages, then it becomes a
    simpler matter of removing 3.12 support in a second pass, and seeing
    which packages don't allow that. Autounmask may help here.


    --
    Eli Schwartz

    --------------Ns0ulYu0nHO4Mud4iNnLc0rc--

    -----BEGIN PGP SIGNATURE-----

    wnsEABYIACMWIQTnFNnmK0TPZHnXm3qEp9ErcA0vVwUCaBT7FwUDAAAAAAAKCRCEp9ErcA0vVxRy AP4zplBm9qzduP42Z8HCSK9eRvlYsqI88YTq2ayaGUcpCwEAnEU1vjeema7oALTeLgWcqbtGhWkZ zdkj0JApLuXgLQQ=
    =1WUc
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)