sudofeed

dev · · 21:08 · 2 min de citit

Generatoarele Asincrone primesc yield from și alte știri Python pentru Septembrie 2026

Python 3.16 va introduce `yield from` pentru generatoarele asincrone, rezolvând o limitare de lungă durată în programarea asincronă. Această actualizare, detaliată în PEP 828, va permite delegarea fără probleme și gestionarea corectă a valorilor, excepțiilor și cererilor de închidere, simplificând codul asincron.

Ecosistemul Python a înregistrat o activitate semnificativă în august 2026, cu un accent major pe stabilitate și securitate. A fost lansat Python 3.15.0rc1, înghețând interfața sa binară de aplicație (ABI) și marcând etapa finală înainte de lansarea oficială din octombrie. Această lansare include mai multe caracteristici cheie, cum ar fi frozendict, sentinel, importuri explicite lazy, codificarea UTF-8 ca implicită, dezarhivarea în comprehensions, un compilator JIT ce îmbunătățește performanța și instalatori macOS oficiali care livrează build-ul free-threaded. În paralel, au fost emise patch-uri de securitate pentru ramurile mai vechi ale Python (3.12, 3.11 și 3.10), abordând vulnerabilități critice, inclusiv recursiunea nelimitată în parsarea XML, probleme cu caracterele de control în cookie-urile HTTP, bypass-uri de symlink și probleme de buffer în bibliotecile de compresie.

O dezvoltare importantă pentru programarea asincronă este acceptarea PEP 828, care introduce `yield from` pentru generatoarele asincrone în Python 3.16. Anterior, delegarea sarcinilor între generatoarele asincrone necesita bucle manuale, care nu propagau corect valorile, excepțiile sau cererile de închidere și împiedicau capturarea valorilor de returnare. PEP 828 remediază acest lucru permițând interpretorului să gestioneze delegarea fără probleme, oglindind comportamentul generatoarelor sincrone și adăugând un atribut `.value` la `StopAsyncIteration` pentru a captura valorile de returnare, eliminând astfel o sursă comună de bug-uri și simplificând modelele asincrone complexe.

Implicațiile acestor actualizări sunt substanțiale pentru dezvoltatorii Python. Înghețarea ABI pentru Python 3.15 oferă o țintă stabilă pentru dezvoltatorii de module de extensie C, în timp ce patch-urile de securitate abordează vulnerabilități critice în mai multe versiuni suportate. Introducerea `yield from` în generatoarele asincrone este o îmbunătățire mult așteptată care va spori claritatea și robustețea codului în aplicațiile asincrone. Deși PEP 828 vizează Python 3.16, impactul său este de așteptat să fie larg răspândit, simplificând un aspect complex al limbajului și reducând potențialele surse de erori pentru dezvoltatorii care lucrează cu asyncio.

$ sursa --originală

realpython.com

Rezumat realizat de Sudofeed pe baza articolului original. Drepturile asupra conținutului aparțin sursei originale.

citește originalul ↗