Vai al contenuto principale

7.29.0 Rilasciato: L'ultima minor release di Babel 7

· Lettura di 4 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.29.0 è uscito!

Questa è l'ultima minor release di Babel 7, poiché ci stiamo preparando a rilasciare Babel 8.0.0. Anche Babel 8.0.0-rc è disponibile oggi: provalo subito!

Questa release include il supporto per definire i target di transpilazione in @babel/standalone tramite un attributo data-target sugli elementi <script>. Aggiunge inoltre il supporto per l'API asincrona di @babel/core in @babel/standalone.

Entrambe queste modifiche sono pensate per facilitare la migrazione da Babel 7 a Babel 8.

Puoi leggere l'intero changelog su GitHub. Se stai già utilizzando la beta di Babel 8, tutte le nuove funzionalità della 7.29.0 sono incluse in v8.0.0-rc.1.

7.28.0 Rilasciato: `babel.config.ts`, gestione esplicita delle risorse e proposta discard binding

· Lettura di 4 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.28.0 è uscito!

Questa versione include il supporto per babel.config.ts e babel.config.mts, la funzionalità ES2026 Explicit Resource Management, la proposta discard binding e l'opzione sourceType: "commonjs".

Puoi leggere l'intero changelog su GitHub. Se stai già utilizzando la beta di Babel 8, tutte le nuove funzionalità della 7.28.0 sono incluse in v8.0.0-beta.1.

Annuncio della Beta di Babel 8

· Lettura di 3 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Dopo quasi due anni dalla prima release alpha di Babel 8 (8.0.0-alpha.0), siamo finalmente pronti.

Tutti i breaking change che intendevamo includere in Babel 8 sono completati, e abbiamo eliminato molto debito tecnico accumulato negli anni che non era stato possibile rimuovere durante il ciclo di vita di Babel 7.

Ora dobbiamo testarlo in progetti reali per assicurarci che tutto funzioni correttamente. Abbiamo già utilizzato Babel 8 per transpilare il nostro codice fin dalle prime versioni alpha, ma un solo utente prerelease non è sufficiente. 😉

7.27.0 Rilasciato: migliore allineamento con l'ecosistema

· Lettura di 3 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.27.0 è uscito!

Questa release non include nuove funzionalità significative, ma allinea meglio il comportamento di Babel con JavaScript standard e altri strumenti.

La stampante di codice ora produrrà per impostazione predefinita la sintassi corretta degli import attributes, senza richiedere agli utenti di abilitare esplicitamente un'opzione.

Abbiamo inoltre modificato il comportamento dell'opzione rewriteImportExtensions di @babel/preset-typescript, per correggere alcune differenze rispetto a --rewriteRelativeImportExtensions di TypeScript.

Infine, abbiamo aggiornato il nostro plugin di compatibilità estree in @babel/parser per generare nodi AccessorProperty per le proprietà di classe accessor foo = "val", introdotte dalla proposta di decorators allo stage 3. Nota che, per motivi di compatibilità legacy, @babel/parser genera un AST compatibile con ESTree per le funzionalità delle classi solo quando l'opzione classFeatures del plugin estree è abilitata.

Sono presenti diverse modifiche che potrebbero interessare gli autori di plugin: puoi leggere l'intero changelog su GitHub.

7.26.0 rilasciato: funzionalità stage 4 abilitate di default e nuova sperimentale code printer

· Lettura di 4 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.26.0 è appena stato rilasciato!

Abilita di default il supporto per due proposte ECMAScript diventate standard nell'ultimo meeting TC39: import attributes e inline regular expression modifiers, oltre al parsing di Flow enums.

Babel ora permette anche ai plugin di fornire hook asincroni pre/post e include una [modalità sperimentale](TODO: Link) per preservare le posizioni dei token durante la generazione dell'output trasformato.

Puoi consultare l'intero changelog su GitHub.

7.25.0 rilasciato: correzioni per Safari e gruppi di cattura con nome duplicati

· Lettura di 4 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

È uscito Babel 7.25.0!

@babel/preset-env supporta ora per impostazione predefinita la proposta dei gruppi di cattura con nome duplicati per le espressioni regolari, oltre a una correzione per i campi classe quando si targetta Safari. Questa versione migliora inoltre il supporto per la compilazione degli import di moduli JSON in CommonJS e aggiunge il supporto per i file di configurazione alla modalità --eval di @babel/node.

Puoi consultare l'intero changelog su GitHub.

7.24.0 Rilasciato: Aggiornamenti ai decoratori e importazione moduli JSON

· Lettura di 4 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.24.0 è disponibile!

Abbiamo aggiornato la nostra implementazione dei Decoratori per allinearla all'ultima versione della proposta e migliorato la trasformazione di campi e metodi privati nelle classi. Abbiamo inoltre aggiunto il supporto per l'importazione di moduli JSON nei browser e in Node.js, una proposta di Stage 3 dipendente dagli Import Attributes.

Puoi consultare l'intero changelog su GitHub.

CVE-2023-45133: Scoperta di una Vulnerabilità di Esecuzione Arbitraria del Codice in Babel

· Lettura di 11 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Il 10 ottobre 2023 ho individuato una vulnerabilità di esecuzione arbitraria del codice in Babel, successivamente identificata come CVE-2023-45133. In questo articolo vi guiderò attraverso il percorso che ha portato alla scoperta e allo sfruttamento di questo intrigante difetto.

Rilasciata la 7.23.0: Metadati per Decoratori e tante nuove funzionalità per `import`!

· Lettura di 7 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Abbiamo appena rilasciato Babel 7.23.0! 🎉

Include il supporto alla trasformazione per le proposte Decorator Metadata, Source Phase Import, Deferred Import Evaluation e Optional Chaining Assignment. Abbiamo anche aggiornato il parser per supportare la nuova versione TypeScript 5.2 e aggiunto un'opzione di trasformazione per utilizzare l'estensione .ts all'interno delle importazioni TypeScript.

Oltre al rilascio della versione 7.23.0, abbiamo recentemente pubblicato anche la prima release alpha di Babel 8!

Puoi consultare l'intero changelog su GitHub.

Rilasciata la 7.22.0: Supporto per Explicit Resource Management e parsing degli Import Attributes

· Lettura di 7 min
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Babel 7.22.0 è disponibile, con supporto per il parsing e la trasformazione della proposta Explicit Resource Management, incluse sia le varianti sincrone che asincrone, e con supporto per il parsing degli Import Attributes (un'evoluzione della precedente proposta Import Assertions).

Abbiamo anche aggiornato la nostra implementazione dei decoratori seguendo alcune modifiche alla proposta e aggiunto il supporto per le istruzioni TypeScript import ... = e export ... =.

@babel/preset-env include ora per impostazione predefinita il supporto per la trasformazione del flag v delle espressioni regolari, recentemente approvato come parte dello standard ECMAScript. Infine, abbiamo rinominato tutti i plugin per le funzionalità ECMAScript stabili da -proposal- a -transform-.

È possibile consultare l'intero changelog su GitHub.