Aggiornamenti di Laravel v11.15
Questa settimana, il team di Laravel ha rilasciato la versione v11.15, apportando significativi miglioramenti e nuove funzionalità. Tra le novità più rilevanti ci sono aggiornamenti ai comandi, supporto per la definizione di tipi MIME negli allegati tramite Resend, aggiornamenti alle migrazioni del database e molto altro.
Miglioramenti e Novità
Introduzione delle Generics
Una delle aggiunte più interessanti è l'introduzione delle generics, che offrono un'autocompletamento e un'intellisense migliori all'interno dell'IDE, senza la necessità di utilizzare Larastan per aggiungere generics alle classi tramite stubs. Questa funzionalità facilita anche ai pacchetti di terze parti la definizione dei tipi interni nelle loro relazioni personalizzate.
Contributi Significativi
- Caleb ha apportato miglioramenti a Larastan e sta integrando queste funzionalità nel framework, migliorando l'analisi statica in Laravel. Maggiori dettagli sono disponibili nella Pull Request #51851.
- Christoph Rumpel ha aggiornato il comando che richiede all'utente di specificare il tipo di vista da creare.
- Muhammed Sari ha aggiunto un trait alla classe, consentendo di scrivere codice in modo più intuitivo.
- Hafez Divandari ha contribuito con aggiornamenti alle migrazioni del database, in particolare per SQLite, introducendo miglioramenti alla qualità della vita. La Pull Request #51373 include le seguenti modifiche:
- Aggiunta e rimozione della chiave primaria su SQLite.
- Jayan Ratna ha implementato il supporto per la definizione dei tipi MIME negli allegati all'interno di una classe mailable di Resend, come dimostrato nella pull request.
Elenco Completo delle Novità
Di seguito è riportato un elenco completo delle nuove funzionalità e degli aggiornamenti, insieme al confronto tra le versioni 11.14.0 e 11.15.0 su GitHub:
- [10.x] Imposta l'eccezione precedente da @hafezdivandari in Pull Request
- [11.x] feat: aggiungi generics a Eloquent Builder e Relations da @calebdw in Pull Request
- Aggiungi asserzioni phpstan a Collection isEmpty e isNotEmpty da @johanrosenson in Pull Request
- [11.x] Aggiungi supporto per i tipi MIME nel trasporto di posta Resend da @jayanratna in Pull Request
- [11.x] feat: aggiungi metodi virtuali al trait SoftDeletes da @calebdw in Pull Request
- [10.x] Correggi Http::retry affinché throw sia rispettato per la firma della chiamata Http::retry([1,2], throw: false) da @paulyoungnb in Pull Request
- [10.x] Imposta application_name e character set come stringa DSN PostgreSQL da @sunaoka in Pull Request
- [11.x] Migliora i doc block della classe Migrator da @imanghafoori1 in Pull Request
- [11.x] Usa l'operatore nullsafe per il dispatcher degli eventi da @seriquynh in Pull Request
- [11.x] Aggiungi test per garantire il comportamento lazy del metodo LazyCollection da @lmottasin in Pull Request
- [11.x] Consenti la creazione di studly da @cosmastech in Pull Request
- [11.x] Aggiungi proprietà da @cosmastech in Pull Request
- [11.x] fix: findOr e firstOr generics da @calebdw in Pull Request
- [11.x] feat: migliora le generics di Factory, aggiungi generics a HasFactory da @calebdw in Pull Request
- [11.x] Chiedi informazioni sulla vista accanto al nome per il comando di creazione della posta da @christophrumpel in Pull Request
- [11.x] Aggiunto @throws docblock per il metodo da @siarheipashkevich in Pull Request
Conclusione
Queste novità rappresentano un passo avanti significativo per il framework Laravel, migliorando l'esperienza di sviluppo e ampliando le possibilità per gli sviluppatori. È possibile consultare il changelog completo per ulteriori dettagli e scoprire come queste modifiche possono influenzare i progetti futuri.