È uscita oggi la versione 8.0.0 di Angular! Questo aggiornamento è composto in maggioranza da miglioramenti dietro le quinte quindi rimanere allineati risulta decisamente semplice, anche perchè la cli si preoccupa di farci tutte le modifiche importanti.
Angular 7 → 8
La build produce due pacchetti invece di uno. Il pacchetto prodotto fin’ora viene mantenuto per supportare i browser più datati (in ES5) mentre il secondo pacchetto viene costruito per i browser più moderni (in ES6/2015). Non dobbiamo preoccuparci di nulla: la scelta del giusto pacchetto è automatica.
Migliora la definizione dei moduli con lazy loading.
Prima:
{path: '/admin', loadChildren: './admin/admin.module#AdminModule'}
Ora:
{path: '/admin', loadChildren: () => import('./admin/admin.module').then(m => m.AdminModule)}
Questa modifica viene fatta dalla cli e finalmente l’IDE può aiutarci con l’autocompletamento. Come avere di meglio?
Altre modifiche riguardano il supporto ai Web Worker e l’aggiunta dei Builders. Questi ultimi permettono di personalizzare con massima libertà i comandi della cli (start, build, etc.) nonchè di creare nuovi comandi.
Infine sono stati fatti passi in avanti con Ivy e Bazel, che diventeranno molto probabilmente stabili alla versione 9.
RxJs 6.3 → 6.5
Firme deprecate e/o aggiunte per le seguenti funzionalità: combineLatest, forkJoin, partition, scheduled.
La funzionalità fromFetch deve essere ora importata da ‘rxjs/fetch’
Typescript 3.2 → 3.4
È stata aggiunta la possibilità di calcolare eventuali errori nel codice in modo incrementale. Viene usato un file come cache dei controlli precedenti (.tsbuildinfo, da aggiungere al .gitignore o corrispettivo) grazie al quale si velocizzeranno i controlli futuri.