On 11/05/2025 19:08, Eli Schwartz wrote:
Because the news item, as written, led me up the garden path!

"Safer upgrade procedure
=======================
A safer approach is to add Python 3.13 support to your system first,
and only then remove Python 3.12.  However, note that this involves two
rebuilds of all the affected packages, so it will take noticeably
longer.

First, enable both Python 3.12 and Python 3.13, and then run the upgrade
commands:

     */* PYTHON_TARGETS: -* python3_12 python3_13
     */* PYTHON_SINGLE_TARGET: -* python3_12"

It says "run the upgrade commands - COLON". As I understand English,
that says that what follows is a list of COMMANDS. And "*/*" looks like
a weird comment marker. Why would I assume it's a declaration snippet?

First, enable both python 3.12 an python 3.13:

     <package.use stuff>

and then run the upgrade commands.

It is not lacking the quality of being idiomatic, to write the colon
after the full sentence rather than splitting the sentence in two. I see
both quite often. But regardless,

The problem is, if I see "commands COLON", that means that what follows the colon is a list of commands. And it's clearly a list so I assumed it was commands ...

From his name, I assume Michał Górny is not a native English speaker, and I have no problem with that. I speak four languages to varying amounts of ability and the quality of foreigners' English never ceases to amaze me. But the fact remains I did not understand what this news item said! It's been explained and it's now clear what was meant, whether that's what was actually written or not.

And going back a bit - having carefully read the news item to find what it said about package.use, it's magically changed!?!? I now can't find any mention of "package.use snippets", which I am sure I found when carefully reading the item!

But anyway - a bit more - the actual targets ...

> You didn't post full output so it's difficult to say for sure. But,
> "requires just one of" sounds like this:
>
> $ PYTHON_SINGLE_TARGET='python3_13 python3_12' emerge -1a glib-utils

That's basically what I got, except it was demanding python 11 or 12. Given that I have absolutely no mention that I can find of python, in either make.conf or package.use (other than the snippet I've just added to force the upgrade), it looks to me like option 1 should have "just worked". So why didn't it? Where else would there be stuff that tells my system that Python 13 is "persona non grata"?

The only thing that feels like it might be a problem (and if Python 13 is now the default that's REALLY weird) is I don't have ~amd64 as default ... (and my system is systemd/kde, but that also should be irrelevant).

Cheers,
Wol

Reply via email to