13:39
26/8/2019

Nowym programistom Pythona doradza się używanie najnowszej wersji języka, ale nadal znaczna część projektów korzysta z wersji 2.x. Niestety unikanie migracji (nie zawsze łatwej) może być w przyszłości problemem bezpieczeństwa.

Brytyjskie narodowe centrum cyberbezpieczeństwa (NCSC) postanowiło delikatnie przypomnieć, że  od 1 stycznia 2020 roku Python 2 nie będzie wspierany, a zatem nie będzie poprawek bezpieczeństwa dostarczanych przez twórców tego języka. Pół roku to niby dużo czasu, ale ze statystyk Python Package Index (PyPI) wynika jasno, że Python 2.x jest używany bardzo intensywnie.

Wystarczy spojrzeć na statystyki pobrań najpopularniejszych pakietów PyPi. Urllib3 jest pobierany nadal najczęściej w wersji 2. Podobnie jest z popularnymi pakietami six, pip albo botocore. Przy frameworkach takich jak Flask czy Django widać już dominację wersji 3, ale nadal blisko trzecią część pobrań stanowią wersje 2.

W statystykach ogólnych pozycja wersji 2 i 3 wydaje się wyrównana.

źródło wykresu: pypistats.org

Na stronie python3statement.org możecie znaleźć informację o projektach, które zapowiadają porzucenie wsparcia dla Pythona 2 od roku 2020. Są wśród nich m.in. TensorFlow, NumPy, SciPy oraz Requests.

Cześć projektów, które odchodzą od Pythona 2

Nie warto czekać z przesiadką jeśli chcecie nadal korzystać z tych modułów. NCSC przestrzega również innych deweloperów, by nie narażali na ryzyko swoich kolegów poprzez utrzymywanie wewnątrz swojej organizacji bibliotek opartych na Pythonie 2. Nawiasem mówiącDropbox już zmigrował na Pythona 3 i podzielił się swoimi doświadczeniami.

Dla ułatwienia migracji można skorzystać z programu Can I Use Python 3, który sprawdzi wasz projekt pod katem zależności i pozwoli ustalić, które biblioteki warto wymienić. Dostępny jest także automatyczny translator kodu 2to3, daleki od doskonałości ale i tak przyspieszający pracę. Można się także podeprzeć ebookiem pt. Supporting Python 3: An in-depth guide autorstwa Lennarta Regebro.

Przeczytaj także:

Ten wpis pochodzi z naszego linkbloga *ptr, dlatego nie widać go na głównej.
*ptr możesz czytać przez RSS albo przez sidebar po prawej stronie serwisu.

5 komentarzy

Dodaj komentarz
  1. Wiedziałem, że znajdę zegarek odliczający w Internecie i zarejestrowaną domenę.

  2. Biorąc pod uwagę, co robi, to chyba nic dziwnego, że six jest pobierany głównie w wersji dla pythona 2

    • Python 3 jest okropny że względu na wiele rzeczy, w 2 o wiele szybciej mi się pisze

  3. Hell, it’s about time! Ten koniec supportu powinien był nastąpić już wiele lat temu. A mimo to nadal w pracy mam ludzi, którzy uparcie piszą w py2, bo jest jakaś jedna egzotyczna libka, której autor się nie przesiadł (lub częściej ją po prostu porzucił, pierwsze z brzegu – Fabric), albo bo przecież py2 i tak jest zainstalowany, a py3 być może nie ma w systemie (sic!!!).

  4. […] * Czas pożegnać Pythona 2, także ze względów bezpieczeństwa […]

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: