Python 2 je mrtev, naj živi Python 3

Matej Huš

26. apr 2020 ob 11:31:12

V začetku tedna je izšla nova verzija Pythona 2, kar načeloma ni novica za prve strani. Toda 2.7.18 je drugačna, saj prestavlja zadnjo inačico Pythona 2. Python ima že dolgo zgodovino, saj sega v 80. leta prejšnjega stoletja. Verzija 2.0 je izšla oktobra 2000 in prinesla številne novosti, zaradi katerih je Python postal eden najpopularnejših programskih jezikov moderne dobe. Čeprav je Python 3.0 izšel že leta 2008, je aktivno vzdrževanje linije 2.x potekalo vse doslej. Glavni razlog je bila nepopolna združljivost obeh verzij, saj veliko kode v Pythonu 2 terja prilagoditve, da bo delovala v Pythonu 3. A ves čas je bil jasen končni cilj, da se Python 2 upokoji. To bi se bilo moralo zgoditi že bistveno prej (ob izidu Pythona 3 je bil načrtovan datum 2015), a ker je bila migracija počasna, se je konec podpore (EOL) večkrat odmaknil. Sedaj smo še korak bliže temu. Python 2.7.18 je zadnja verzija, ki je izšla (Eulerjevo število je priljubljena referenca). Novih ne bo, je pojasnil Benjamin Peterson.

Problem ni bila koda posameznih projektov, temveč knjižnice in drugi kosi, na katerih temeljijo posamezni projekti. Domačo kodo je treba zanemarljivo popraviti - po navadi zgolj stavek print(). Večji projekti pa so bili zalogaj povsem drugačne dimenzije. Kaj se bo zgodilo sedaj? Še vedno namreč obstaja ogromno kode za Python 2. To ni tako velik problem, saj se je ta koda zelo verjetno prevajala v starejših verzijah, niti ne v 2.7.17. Prineslo pa bo to težave v prihodnosti, saj morebitne luknje in hrošči, ki jih bodo odkrili v Pythonu 2, ne bodo zakrpani. Z vidika vzdrževanja to ne bo povzročalo tako velikih težav kot na primer COBOL, saj sta obe veji Pythona podobni. Seveda pa je modro vso novo kodo napisati v Pythonu 3.