Megjelent a Python 3.12

A Python csapat bejelentette a Python 3.12 stabil változatát.

Főbb újdonságok:

Python ikon
Python ikon

A Python csapat bejelentette a Python 3.12 stabil változatát.

Főbb újdonságok:

  • PEP 701 – Rugalmasabb f-string feldolgozás, immár olyan kifejezések is megengedettek, amik eddig tiltva voltak
  • PEP 688 – Buffer protokoll támogatása Python kódban
  • PEP 669 – Új API hibakeresésre és profilozásra
  • PEP 684 – Izolált, saját globális zárolással (GIL) rendelkező alértelmezők támogatása
  • További fejlesztések a hibaüzenetekhez, így még több helyen képes a rendszer felismerni az elgépelésből adódó hibákat
  • Linux perf profilozó támogatásának fejlesztésével immár lehetővé vált a Python függvénynevek megjelenítése a hibakeresési kimenetben
  • Teljesítményjavítások sorozata (pl. PEP 709 vagy a BOLT bináris optimalizáló támogatása), melyeknek hála átlagosan ~5% teljesítménynövekedést sikerült elérni

Típusjelölések (type annotation):

  • PEP 695 – Új típusjelölés szintaxis az általános osztályokhoz
  • PEP 698 – @override dekorátor metódusokhoz

Elavulások:

  • PEP 623 – wstr és wstr_length eltávolításra kerültek a C unicode implementációból
  • Több, Python 3.1 és 3.2 óta elavultnak minősített metódus el lett távolítva a unittest modulból
  • PEP 594 és PEP 632 – Törlésre kerültek az elavult smtpd és distutils modulok. Ugyanakkor a setuptools csomag (ami alapértelmezetten települ a virtualenv használatakor) továbbra is tartalmazza a distutils modult.
  • Jó néhány régi, elavult vagy épp törött függvény, osztály és metódus került törlésre (részletek itt)
  • Azért, hogy jobban felhívják a hibás visszaper (\) kiléptetőkarakterre a figyelmet, mostantól SyntaxWarning üzenet jön a DeprecationWarning helyett. A jövőben ebből szintaxis hiba lesz.
  • A teljesítményjavítások részeként az egész számok belső reprezentációja változott (ez a legtöbb felhasználót nem érinti, de problémákat okozhat a Cython generált kódoknál)

További információk: