Blog post

Laravel 7 został wydany!

26 marca 2020Larabox.pl

Laravel 7 został wydany i zawiera sporo nowych funkcji, w tym między innymi Laravel Airlock, lepszą wydajność routingu, niestandardowe Eloquent casts, tagi komponentów Blade, nowy klient HTTP, wsparcie dla CORS i wiele więcej.

Na wstępie również warto wspomnieć o tym, że Laravel od wersji 6, będzie wydawało nowe wersje co 6 miesięcy.

Laravel Airlock

Laravel Airlock dostarcza lekki sposób autentykacji dla aplikacji SPA, mobilnych aplikacji i prostych, opartych o tokeny autoryzacyjne API.

Airlock pozwala użytkownikowi na stworzenie wielu tokenów autoryzacyjnych dla swojego konta. Tokeny następnie mogą otrzymać uprawnienia i zakresy do wykonania jakiś akcji.

Niestandardowe Eloquent Casts

Mimo iż Laravel posiada sporo wbudowanych funkcji do prezentacji albo zmiany danych pobranych bezpośrednio z bazy danych, to od wersji 7, mamy możliwość stworzenia własnych castów.

Możemy to osiągnąć tworząc nową klasę, która będzie posiadała interface CastsAttributes.

Klasy które implementują ten interface, będą musiały posiadać metody get() i set().

Methoda get() będzie odpowiadała za transformacje wartości z bazy danych do „castów”, natomiast metoda set() będzie transformowała „casty” w dane do zapisania w bazie danych.

Tagi komponentów Blade

Aby stworzyć komponent, możemy wykonać polecenie:

php artisan make:component Alert

Komenda tworzy plik widoku który znajduje się w resources/views/components jak i również klasę w app/View/Components.

Następnie w szablonach możemy uruchomić komponent:

<x-alert type="error" :message="$message"/>

Więcej informacji o komponentach Blade można znaleźć w oficjalnej dokumentacji: https://laravel.com/docs/7.x/blade#components
Niedługo pojawi się również poradnik jak ich używać na Larabox.pl.

Nowy klient HTTP

Laravel 7 teraz oferuje szybkie i proste API oparte o bibliotekę Guzzle aby można było w sprawny sposób wykonywać requesty HTTP do innych aplikacji.

Wydajny routing

Laravel 7 wprowadza nową metodę porównywania tras i zapisu ich do cache, dzięki temu duże aplikacje, które posiadają >800 tras, mogą odczuć dwukrotne przyspieszenie przy żądaniach na sekundę na prostej stronie „Witaj świecie”.

Laravel 7 będzie posiadał wsparcie do 3 marca 2021 roku.

VersionReleaseBug Fixes UntilSecurity Fixes Until
5.5 (LTS)August 30th, 2017August 30th, 2019August 30th, 2020
5.6February 7th, 2018August 7th, 2018February 7th, 2019
5.7September 4th, 2018March 4th, 2019September 4th, 2019
5.8February 26th, 2019August 26th, 2019February 26th, 2020
6 (LTS)September 3rd, 2019September 3rd, 2021September 3rd, 2022
7March 3rd, 2020September 3rd, 2020March 3rd, 2021

Szczegółowe informacje o wydaniu można znaleźć na oficjalnej stronie: https://laravel.com/docs/7.x/releases

Poprzedni wpis Następny wpis