Python
Aggiornamento dei pacchetti Python all’ultima versione
Il pacchetto `python3`è stato aggiornato all’ultima versione 3.9 in Fedora 33. In precedenza, in Fedora 32, era supportata la versione 3.8 del pacchetto python3, che è stata ora aggiornata.
Quest’ultimo aggiornamento di Python 3.9 offrirà numerosi miglioramenti. Alcuni dei punti salienti includono:
-
Aggiunti gli operatori di unione merge (
|) e update (|=) alla classedict. -
Suggerimento dei tipi per i generici nelle collezioni standard.
-
Supporta annotazioni di funzioni e variabili più flessibili.
-
Fornisce una maggiore flessibilità grammaticale consentendo ai decoratori di essere una qualsiasi espressione valida.
-
Supporto per il database dei fusi orari IANA nel modulo
zoneinfo. -
I metodi di stringa `removesuffix`e `removeprefix`rimuoveranno prefissi e suffissi da una stringa.
-
CPython ora utilizza un nuovo parser basato sulla PEG (parsing expression grammar).
Ecco alcune note sulla migrazione dei pacchetti pip installati dall’utente (solitamente in ~/.local/lib/python3.x/site-packages) durante l’avanzamento di versione di Fedora:
Quando aggiorni Fedora dalla versione 32 alla 33, la versione dell’interprete Python principale passa dalla 3.8 alla 3.9. Se hai pacchetti Python installati tramite pip (al di fuori dei pacchetti di sistema gestiti da DNF), devi completare la seguente procedura per migrarli alla nuova versione
-
Installare la versione precedente del pacchetto
python3:sudo dnf install python3.8
-
Ottieni `pip`per la versione precedente di Python:
python3.8 -m ensurepip --user
-
Osserva i pacchetti installati:
python3.8 -m pip list
-
Salva l’elenco con le versioni specifiche:
python3.8 -m pip freeze > installed.txt
-
Installare gli stessi pacchetti per la versione attuale predefinita:
python3 -m pip install --user -r installed.txt
-
Disinstallare i pacchetti Python 3.8 installati dall’utente; questo assicura la corretta rimozione dei file in ~/.local/bin:
python3.8 -m pip uninstall $(python3.8 -m pip list --user | cut -d" " -f1)
-
Opzionalmente, ripulisci la struttura delle directory ora vuota:
rm -rf ~/.local/lib/python3.8/
-
Opzionalmente, rimuovi la versione di Python non necessaria:
sudo dnf remove python3.8
`pip`Inoltre, se sono presenti pacchetti pip installati tramite sudo, esegui i seguenti comandi prima di eseguire l’ultimo passaggio descritto sopra che rimuove python3.8, oppure installalo di nuovo temporaneamente:
-
Ottenere
pip`per la versione precedente di Python per l’utente `root:sudo python3.8 -m ensurepip
-
Osserva i pacchetti installati nel sistema:
sudo python3.8 -m pip list
-
Disinstalla i pacchetti installati per la versione 3.8; questo assicura la corretta rimozione dei file in`/usr/local/bin`:
sudo python3.8 -m pip uninstall $(python3.8 -m pip list | cut -d" " -f1)
-
Opzionalmente, pulire la struttura delle directory ora vuota:
"Rimuovi forzatamente e ricorsivamente le librerie di Python 3.8 in /usr/local/."
|
Se hai seguito la prima procedura, i pacchetti sono già installati per il tuo account utente, che è l’opzione preferibile. Evita di usare sudo pip in futuro; queste istruzioni hanno il solo scopo di ripristinare la situazione per gli utenti che hanno già utilizzato |
Ritiro di Python 3.4 e Python 2.6
I pacchetti `python34`e `python26`sono stati ritirati da Fedora 33 senza sostituti. I pacchetti non saranno più disponibili nei repository, ma potrebbero rimanere sulle installazioni esistenti. Entrambi i pacchetti erano stati mantenuti in Fedora per ragioni di compatibilità con il passato (legacy), ma la loro manutenzione continuativa si stava rivelando sempre più difficile a fronte di un beneficio decrescente per la distribuzione; per questo motivo, ora sono stati rimossi.
Want to help? Learn how to contribute to Fedora Docs ›