Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinner)

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinner)

Inlägg av JimmyAndersson »

Kortfattat: Försvinner (avinstalleras) Python 2.x om man uppgraderar en äldre Linux-installation (Debian) ?

Orsaken till frågan är ett inlägg jag läste i den här tråden. Dvs:
"Du borde absolut se till att du använder Python 3, 2an slutas supportas nästa år och kommer börja tas bort ifrån Linuxdistributionerna. Nästa gång du uppdaterar är det troligtvis redan borta."

Jag hade ingen ork att bena ut det då i december när inlägget i länken skrevs, så jag har inte uppgraderat Debian sedan dess, men nu är det dags. :)
Men först måste jag veta om det försvinner, för jag väldigt mycket kod (för 2.x) som jag inte vill modifiera...


Jag hittade den här sidan: https://wiki.debian.org/Python/2Removal
Men hänger inte riktigt med på detaljerna.

Om man läser på https://wiki.debian.org/Python så hittar jag inget om att Python 2.x ska försvinna:
"Debian always provides at least two versions of Python, the latest stable Python 2 release, and the latest stable Python 3 release."


edit:
Men om man läser här: https://www.debian.org/releases/stable/ ... ation.html under 5.1.11 så hittar man:
"Python 2 will stop being supported by its upstream on January 1, 2020. Debian hopes to drop python-2.7 for Debian 11. If users have functionality that relies on python, they should prepare to migrate to python3."

Migrate? Det kan ju bli väldigt mycket kod att gå igenom och ändra. :shock:
Men frågan är ändå: Betyder detta att en uppgradering av Debian (med apt-get upgrade) avinstallerar Python 2.x ?
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3746
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Mickecarlsson »

Kort svar: Nej.
Om du kör en viss version av en Linux-dist är alla paket ”låsta” vad det gäller Major release.
Det är inte förrän du gör en dist-upgrade som Major release byts.
Kör din dist Python 2.x kommer den att fortsätta göra det även om du patchar fullt ut.
guckrum
Inlägg: 1671
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av guckrum »

Python2 och Python3 är på flera sätt väldigt olika. Det finns mycket kod skriven i Python2 som inte är migrerad, och den kommer så kĺart att behöva fortsätta fungera. Att migrera kan vara en väldigt komplicerad process, så skall man vandra den vägen får man hålla tungan rätt i mun och se till att ha koll på sina tester. Man ger sig inte på det utan att ha en bra anledning.

Under Debian kan du ha flera Pythonversioner samtidigt. Vill du vara ännu mer flexibel skapar du enkelt virtual environments som du kan installera vad du vill i.

Python2 utvecklas inte mer. Det är lämpligt att låta all nyutveckling ske i Python3.
Borre
Inlägg: 4565
Blev medlem: 14 juni 2007, 15:43:50
Ort: Hälsingland

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Borre »

https://manpages.debian.org/buster/apt/ ... .8.en.html
apt-get upgrade -s
-s, --simulate, --just-print, --dry-run, --recon, --no-act

No action; perform a simulation of events that would occur based on the current system state but do not actually change the system. Locking will be disabled (Debug::NoLocking) so the system state could change while apt-get is running. Simulations can also be executed by non-root users which might not have read access to all apt configuration distorting the simulation. A notice expressing this warning is also shown by default for non-root users (APT::Get::Show-User-Simulation-Note). Configuration Item: APT::Get::Simulate.
Simulated runs print out a series of lines, each representing a dpkg operation: configure (Conf), remove (Remv) or unpack (Inst). Square brackets indicate broken packages, and empty square brackets indicate breaks that are of no consequence (rare).
Nerre
Inlägg: 26655
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Nerre »

Det går att ha två versioner installerade samtidigt, och jag tror inte gamla versionen avinstalleras utan att man ber om det.
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av JimmyAndersson »

Tusen tack för svaren, allihop. :tumupp:

Det var väldigt skönt att höra. Då kan jag andas ut. :D
För, som Guckrum skrev om att migrera:
"Man ger sig inte på det utan att ha en bra anledning."

Borre: Ah, bra tips!
tingo
Inlägg: 285
Blev medlem: 17 maj 2017, 17:55:40
Ort: Oslo, Norge

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av tingo »

Ser slik nærmeste Debian-maskin hos meg:

Kod: Markera allt

tingo@kg-vm4:~$ cat /etc/debian_version 
10.4
tingo@kg-vm4:~$ sudo apt list --installed python python3
Listing... Done
python3/stable,now 3.7.3-1 amd64 [installed,automatic]
python/stable,now 2.7.16-1 amd64 [installed]
Nerre
Inlägg: 26655
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Nerre »

Det är ju så att när det är en ny major release av sån där så läggs det inte in som en ny version, utan som ett nytt paket.

Paket som heter python är alltså 2.x.

Python 3.x heter python3.

Det innebär att paketet python aldrig kommer att uppgraderas till version 3.x.

Jag tror det är samma sak med t.ex. Qt, olika paket för qt3 och qt4.
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av JimmyAndersson »

Ah, visst 17. Det har du ju helt rätt i. Klokt tänkt som vanligt. :)

Tingo:
Det var skillnad mot här. :D
(Min apt klarade inte "list", så jag kunde inte göra samma sak.)
Men då kan jag lugnt uppgradera. :tumupp:
Bertrud1
Inlägg: 5
Blev medlem: 30 juni 2020, 14:35:48

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Bertrud1 »

tack jag letade efter denna information
Nerre
Inlägg: 26655
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av Nerre »

JimmyAndersson skrev: (Min apt klarade inte "list", så jag kunde inte göra samma sak.)
Jag har för mig att apt i senare versioner har blivit ersatt med enskilda program för de olika funktionerna.

D.v.s. apt list är numera kommandot apt-list, apt get är apt-get osv.

Jag kör oftast aptitude numera så jag har dålig koll på apt.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av BJ »

Jag provade också kommandona:

~ $ sudo apt list --installed python python3
Listar… Färdig
python/xenial-updates,now 2.7.12-1~16.04 amd64 [installerat]
python3/xenial,now 3.5.1-3 amd64 [installerat]

Finns det någon förklaring på vad allt betyder?
Någon sida, eller om någon här vet.

python och python3 vet jag vad det är,
och amd64 är väl att det är 64-bitars?
tingo
Inlägg: 285
Blev medlem: 17 maj 2017, 17:55:40
Ort: Oslo, Norge

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av tingo »

generelt: alle kommandoer har man-sider: $ man apt
(og også $ man apt-get)
"xenial" er kodenavnet på distroen du kjører: python3 pakken kommer fra main (hoved) repoet, mens python (2.7) pakken kommer fra et repo som henter xenial-updates. Så er det versjonsnummer, arkitektir (amd64) og at pakken er installert
(forsøk $ sudo apt list -a python3 så ser du hvilke andre versjoner av den pakken som finnes)
og $ man sources.list for å ære mer om hvordan man konfigurerer hvilke repositories (på norsk kalles det "pakkebrønner") det skal / kan installeres fra.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Behålla Python 2.x ? (Uppdatera Linux utan 2.x försvinne

Inlägg av BJ »

Okej. Tack. :)
Skriv svar