Quoi de neuf dans Laravel 10 : une plongée en profondeur dans les dernières mises à jour et fonctionnalités

Publié: 2023-01-25

Après plus d'une décennie depuis l'introduction du très populaire framework Laravel, vous êtes-vous déjà demandé : "Qu'est-ce que Laravel peut offrir d'autre aux développeurs PHP ?"

Étant donné à quel point il a déjà simplifié le développement PHP pour les développeurs débutants et professionnels, certains peuvent même affirmer qu'il a gâté les développeurs en leur faisant croire que PHP est le langage de programmation le plus simple qui soit.

Alors, Laravel réserve-t-il encore d'autres surprises aux développeurs Laravel ? Ou a-t-il épuisé tous les moyens possibles pour soutenir les développeurs PHP ?

Eh bien, à tout le moins, nous savons que Laravel 10 a beaucoup à offrir. C'est ce que nous découvrirons dans cet article en vous emmenant dans un voyage à travers les nouvelles fonctionnalités, les correctifs et les méthodes et packages récemment obsolètes de Laravel 10.

Calendrier de sortie de Laravel

L'équipe principale de Laravel publiait deux versions majeures par an, une tous les six mois.

Cependant, le cycle de publication a été modifié lorsque Taylor Otwell, le créateur de Laravel, a annoncé qu'une seule version majeure serait désormais publiée chaque année. Cela a permis à l'équipe principale et à la communauté de consacrer plus de temps et d'efforts à une version spécifique du framework et d'introduire de nouvelles fonctionnalités puissantes sans apporter de modifications radicales.

Avec Laravel 9 sorti le 8 février 2022, le calendrier de sortie prévu est le suivant :

  • Laravel 10 : 7 février 2023
  • Laravel 11 : 6 février 2024

De plus, selon la politique de support, des corrections de bogues sont proposées pendant 18 mois et des mises à jour de sécurité pendant deux ans pour toutes les versions de Laravel.

Voici les correctifs de bogues attendus et le calendrier des mises à jour de sécurité :

  • Laravel 9 continuera à recevoir des corrections de bogues jusqu'au 8 août 2023 et des correctifs de sécurité jusqu'au 6 février 2024.
  • Laravel 10 recevra des corrections de bogues jusqu'au 6 août 2024 et des correctifs de sécurité jusqu'au 4 février 2025.
  • Laravel 11 devrait recevoir des corrections de bogues jusqu'au 4 août 2025 et des correctifs de sécurité jusqu'au 2 février 2026.

Devriez-vous passer à Laravel 10 ?

Il est important de se rappeler que nous n'avons pas toujours besoin de mettre à niveau la version Laravel de notre application vers la dernière version dès qu'une nouvelle version est publiée.

Laravel est un framework open-source, ce qui implique que chaque fois que nous installons une nouvelle instance de Laravel sur notre machine, nous possédons la base de code du framework. Cela signifie que même si la version du framework que notre application utilise n'est plus prise en charge, l'application fonctionnera toujours ; nous devrons simplement l'entretenir nous-mêmes.

Par conséquent, il est largement suggéré que la stabilité des applications soit prioritaire par rapport aux mises à niveau du framework.

En bref, vous devriez envisager de passer à Laravel 10 lorsque :

  • L'application est stable avec sa version actuelle et fonctionne sans problème.
  • La nouvelle version ajoute une fonctionnalité requise par votre application ou résout un problème rencontré par votre application.
  • L'application sera bien testée avant que les modifications de mise à niveau ne soient mises en production.

Mises à jour à chaud de Laravel 10

Logo Laravel 10
Une image du logo Laravel 10.

Comme vous le savez déjà, Laravel 10 n'est pas encore sorti. Cependant, nous garderons cet article à jour avec toutes les nouvelles informations sur la sortie prévue. Par conséquent, nous vous recommandons de mettre cette page en signet et de la revisiter de temps en temps.

Nouvelles fonctionnalités et mises à jour dans Laravel 10

Il ne fait aucun doute que la partie la plus excitante de toute nouvelle version est l'ajout de nouvelles fonctionnalités. Alors sans plus tarder, commençons par jeter un œil aux nouvelles fonctionnalités et mises à jour de Laravel 10.

1. PHP 8.1 : Au cœur de Laravel 10

PHP 8.1 est la version PHP minimale requise dans Laravel 10. Sur la base de la comparaison entre la branche Laravel 9 et la branche principale du framework sur GitHub, certaines fonctionnalités de PHP 8.1, telles que les propriétés en lecture array_is_list readonly devraient être introduites dans Laravel 10 .

2. Prise en charge de PHP 8.2

PHP 8.2 est sorti le 8 décembre 2022, deux mois seulement avant la date de sortie de Laravel 10. Pourtant, cela ne devrait pas vous empêcher d'utiliser les fonctionnalités de PHP 8.2, car sans rien faire de plus, Laravel 10 sera prêt pour PHP 8.2.

En fait, tout l'écosystème Laravel, y compris Forge, Vapor et Envoyer, prend en charge PHP 8.2, et vous pouvez même utiliser PHP 8.2 avec Laravel 9. C'est pas cool ? !

3. Mise à niveau des kits de démarrage Laravel

Laravel Breeze et Jetstream sont prêts à utiliser Laravel 10 dès sa sortie. De plus, ils sont déjà mis à niveau vers Inertiajs 1 avec une surprise pour JetStream d'avoir une prise en charge complète du mode sombre.

4. Mise à niveau de la version Predis

Predis est un client Redis robuste pour PHP qui peut vous aider à tirer le meilleur parti de la mise en cache pour offrir une expérience utilisateur fantastique. Laravel prenait auparavant en charge les versions 1 et 2, mais depuis Laravel 10, le framework ne prend plus en charge Predis 1.

Bien que la documentation de Laravel mentionne Predis comme package permettant d'interagir avec Redis, vous pouvez également utiliser l'extension PHP officielle. Cette extension fournit une API pour communiquer avec les serveurs Redis.

5. Déclarations de type natif

Laravel utilisait DocBlocks dans son squelette de code pour clarifier ce que fait un morceau de code et quels types de paramètres ou de réponses attendre. Cependant, grâce aux déclarations de type natives dans Laravel 10, cela va changer.

La meilleure façon d'expliquer ce changement est avec un exemple simple. Au lieu d'une fonction ressemblant à ceci :

 /** * Determine whether the user can create models. * * @param \{{ namespacedUserModel }} $user * @return \Illuminate\Auth\Access\Response|bool */ public function create({{ user }} $user) { // }

… il ressemblera plutôt à ceci :

 /** * Determine whether the user can create models. */ public function create({{ user }} $user): bool { // }

Ce changement est purement pour le bénéfice de l'expérience du développeur, car les IDE connaîtront la forme du paramètre et de la réponse attendus. Il fournira une meilleure clarté de type lorsque cela n'est pas possible via les types natifs PHP. Par conséquent, cela aidera les éditeurs de code à mieux fonctionner avec les fonctionnalités de saisie semi-automatique.

6. Toutes les règles de validation invocables par défaut

Si vous deviez créer une règle de validation invocable dans Laravel 9, vous devrez ajouter l'indicateur --invokable après la commande artisan. Ce n'est plus nécessaire car toutes les règles de Laravel 10 sont invocables par défaut. Ainsi, vous pouvez exécuter la commande suivante pour créer une nouvelle règle invocable dans Laravel 10 :

 php artisan make:rule CustomRule

7. Prise en charge de la modification de la colonne native

Dans une tentative d'éliminer le besoin du package doctrine/dbal lors de l'utilisation change() pour modifier les colonnes, une nouvelle fonctionnalité arrive dans Laravel 10. Cette fonctionnalité permettra aux développeurs d'utiliser la méthode change() et de modifier les colonnes sur MySQL, PostgreSQL et SQL Server sans avoir besoin de packages supplémentaires. Il s'agit d'un changement de rupture important et risqué, mais nous pensons qu'il en vaut la peine car il supprimera la nécessité d'un package supplémentaire.

Pour mieux comprendre la nouvelle fonctionnalité, consultez l'exemple ci-dessous :

 $table->integer('user_balance')->unsigned()->default(0)->comment('balance'); // `user_balance` is an integer, unsigned, defaults to '0', and column comment is 'balance'

Maintenant, nous supposons que nous avons une colonne pour user_balance et nous voulons changer son type. À partir de Laravel 10, nous pouvons simplement faire ceci :

 $table->bigInteger('user_balance')->change(); // This will change `user_balance` to bigInteger instead of just integer

Le code ci-dessus modifiera avec succès le type de la colonne, mais supprimera également les UNSIGNED , DEFAULT et COMMENT . Par conséquent, il est important de se rappeler d'ajouter tous les attributs lorsque vous modifiez le type d'une colonne :

 $table->bigInteger('user_balance')->unsigned()->default(0)->comment('balance')->change();

Dans le cas où vous avez plusieurs connexions à la base de données et que vous avez déjà installé doctrine/dbal , il est recommandé d'appeler la méthode Schema::useNativeSchemaOperationsIfPossible() dans la méthode de boot dans App\Providers\AppServiceProvider pour pouvoir utiliser les opérations de schéma natives et utiliser opérations natives avant de s'appuyer sur le package (SQLite, par exemple, ne le supporte pas encore):

 use IlluminateSupportFacadesSchema; class AppServiceProvider extends ServiceProvider { public function boot() { Schema::useNativeSchemaOperationsIfPossible(); } }

8. Récupération native du type de colonne

Une autre caractéristique remarquable de Laravel 10 est la possibilité d'utiliser la méthode Schema::getColumnType sans avoir à s'appuyer sur le paquet doctrine/dbal . Nous utilisons actuellement Schema::getColumnType avec doctrine/dbal pour obtenir le type de colonne. doctrine/dbal mappe chaque type de colonne natif à son équivalent de type doctrine/dbal , et il ne prend pas en charge de nombreux types de colonnes utilisés par Laravel dans diverses bases de données.

Dans Laravel 10, en revanche, la nouvelle méthode Schema::getColumnType renverra le type de colonne réel plutôt que son équivalent doctrine/dbal . Il vous permet également d'écrire des tests d'intégration pour la nouvelle fonctionnalité de modification de colonne native. Vous pouvez utiliser cette fonctionnalité pour obtenir soit le nom du type de données, soit la définition complète du type de la colonne spécifiée :

 Schema::getColumnType('products', 'price'); // decimal

9. Algorithme de hachage plus rapide

xxHash est un algorithme de hachage incroyablement rapide. Il présente un caractère aléatoire et une dispersion de sortie exceptionnels, ainsi qu'un caractère unique pour réduire les collisions. Étant donné que PHP 8.1 prend en charge xxh128 et que Laravel 10 fonctionne sur PHP 8.1, disposer d'un algorithme de hachage aussi fiable dans Laravel 10 est idéal.

Il convient de mentionner que Taylor a souligné lors de son examen de ce changement que certains packages tiers peuvent s'appuyer sur le fait que les noms de fichiers sont au format exact du hachage SHA-1, qui est l'algorithme utilisé par Laravel pour le hachage. Par conséquent, si vous prévoyez une mise à niveau vers Laravel 10, il serait sage de vérifier cela dans tous les packages tiers que vous utilisez dans votre application.

10. Prise en charge de la méthode whereExists() pour Eloquent Builder

Actuellement, l'utilisation whereExists() nécessite de configurer la requête imbriquée à l'aide d'une fermeture. Heureusement, avec Laravel 10, il est désormais possible d'inclure un Eloquent Builder en tant que requête imbriquée. Il permet l'utilisation de méthodes de générateur personnalisées, de portées de modèle, etc.

Par exemple, nous le faisons normalement si nous voulons utiliser whereExists() :

 Order::whereExists(function ($query) { $query->from('products')->whereColumn('products.order_id', 'orders.id'); });

Avec Laravel 10, nous pouvons faire simplement ceci à la place :

 Order::whereExists( Product::whereColumn('products.order_id', 'orders.id') );

11. Optimisation du chargement impatient

L'une des nouvelles fonctionnalités intéressantes de Laravel 10 est l'optimisation du chargement rapide lorsqu'il n'y a pas de clés à charger. Ce changement est plus un correctif qu'une fonctionnalité, car il résout un problème actuel dans lequel les relations de chargement hâtives entraînent l'exécution d'un grand nombre de requêtes impossibles.

Actuellement, lors du chargement rapide de relations qui n'ont aucune clé à charger, Laravel exécutera toujours une requête similaire à celle-ci, select \* from `table_name` where 0 = 1 . Cependant, la nouvelle mise à jour de Laravel 10 vérifie s'il existe des clés disponibles en premier lieu, et si ce n'est pas le cas, fournit une collection vide, éliminant ainsi le besoin de requêtes inutiles dans la base de données.

Méthodes et packages obsolètes dans Laravel 10

Laravel 10 dit au revoir à PHP 8.0

Le framework Laravel supprimera la prise en charge de PHP 8.0 dans Laravel 10. Par conséquent, si vous envisagez de mettre à niveau votre application vers Laravel 10, vous devez d'abord mettre à jour la version PHP vers PHP 8.1 ou PHP 8.2.

Suppression des méthodes obsolètes

Nous pouvons voir que l'équipe principale de Laravel supprime les méthodes obsolètes dans Laravel 9 de la branche Laravel 10. Nous prévoyons que l'équipe mettra à jour le guide de mise à niveau de la documentation pour inclure toutes les méthodes et tous les packages obsolètes dès la sortie de Laravel 10.

Si vous envisagez de migrer un projet actuel vers Laravel 10, tout code utilisant une méthode obsolète doit être réécrit dans une nouvelle approche pour obtenir le même résultat.

Voici une liste de toutes les dépréciations et suppressions que nous avons trouvées en comparant Laravel 9 à la branche master :

  • La méthode Route::home (obsolète dans Laravel 9)
  • Les fonctions et méthodes obsolètes autour de dispatchNow . Il s'agit d'encourager les développeurs à utiliser dispatchSync qui est le seul moyen pris en charge pour envoyer immédiatement.
  • Le getBaseQuery car il a un équivalent toBase
  • La classe MaintenanceModeException qui n'était plus utilisée
  • Le trait MocksApplicationServices
  • La méthode Mail::failures du faux mail
  • La propriété obsolète $dates , il est recommandé d'utiliser $casts la place
  • La méthode assertTimesSent()
  • Abandon du support pour Predis 1 et doctrine/dbal 2
  • Toutes les dépréciations associées dans doctrine/dbal depuis que Laravel a abandonné la prise en charge de la version 2

Comment installer Laravel 10

Laravel 10 est déjà disponible pour que vous puissiez faire un tour et tester ses fonctionnalités. L'indicateur –dev dans le programme d'installation de Laravel installe la branche principale à partir du référentiel laravel/laravel . Tout ce que vous aurez à faire est de lancer cette commande dans votre terminal :

 laravel new example-kinsta-app --dev

Ou, si vous préférez utiliser Composer :

 composer create-project --prefer-dist laravel/laravel example-kinsta-app dev-master

Pour mieux comprendre la commande Composer, voici une explication rapide :

  • laravel/laravel : Le package pour l'installation de Laravel
  • example-kinsta-app : Le nouveau répertoire pour votre nouveau projet (peut être modifié)
  • dev-master : La prochaine version de Laravel (dans ce cas, Laravel 10)

Après avoir installé Laravel 10, vous pouvez confirmer la version en naviguant vers le nouveau répertoire example-kinsta-app et exécuter la commande artisan :

 $ php artisan --version Laravel Framework 10.x-dev

Comment mettre à niveau un projet vers Laravel 10

Êtes-vous tenté de passer à Laravel 10 ? L'équipe principale de Laravel travaille dur sur la documentation pour fournir un guide de mise à niveau transparent et simple tout en couvrant tous les changements de rupture possibles. N'hésitez pas à consulter le guide de mise à niveau de Laravel 10, car certaines informations sur le processus de mise à niveau sont maintenant disponibles.

Vous devez également garder un œil sur Laravel Shift une fois que Laravel 10 est sorti. Il offre une approche simple et automatisée pour mettre à niveau votre version de Laravel.

En plus de la documentation Laravel et de Laravel Shift, chez Kinsta, nous publierons un guide de mise à niveau complet avec des exemples concrets. Alors, n'oubliez pas de mettre cette page en signet et d'y revenir une fois que Laravel 10 est sorti.

Comment déployer des projets Laravel 10

Le déploiement de Laravel 10 ne devrait pas être si différent du déploiement du projet Laravel 9. Voici ce que nous attendons de la configuration requise pour le serveur :

  • PHP >= 8.1
  • Extension PHP BCMath
  • Extension PHP Ctype
  • cURL Extension PHP
  • Extension PHP DOM
  • Extension PHP Fileinfo
  • Extension PHP JSON
  • Extension PHP Mbstring
  • Extension PHP OpenSSL
  • PCRE Extension PHP
  • Extension PHP AOP
  • Extension PHP Tokenizer
  • Extension PHP XML

Vous pouvez déployer et héberger votre projet Laravel 10 sur Kinsta en quelques minutes puisque Laravel fait partie d'une longue liste de frameworks pris en charge pour les applications hébergées.

Déployer Laravel 10 sur Kinsta : Guide étape par étape

L'hébergement et le déploiement de vos applications sur Kinsta présentent plusieurs avantages, notamment le fait de ne pas avoir à se soucier de la configuration du déploiement.

Kinsta fournit un outil convivial mais puissant pour déployer des applications, se connecter à des bases de données et surveiller les performances en direct. Cet outil est connu sous le nom de MyKinsta, et dans cette section, nous vous guiderons à travers les étapes pour déployer une application Laravel 10 en l'utilisant.

1. Application Laravel 10

Page d'accueil de l'application Laravel 10
La page d'accueil d'une application Laravel 10 déployée sur Kinsta.

En supposant que vous ayez une application Laravel 10 localement, nous devons nous assurer qu'elle dispose d'un référentiel github disponible. Nous utiliserons ce référentiel pour déployer l'application plus tard.

Vous pouvez inclure un fichier .htaccess dans le répertoire racine de votre application qui contient les éléments ci-dessous :

 <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)$ public/$1 [L] </IfModule>

Pour Laravel, cela redirige toutes les requêtes vers public/index.php. Cependant, si nécessaire, vous pouvez mettre à jour cette commande lors de l'ajout de votre application (étape Configurer vos processus ) ou après le déploiement sur la page Processus de l'application. Vous pouvez utiliser:

  • heroku-php-apache2 /public
  • php artisan serve --host 0.0.0.0 --port 8080

2.Connectez-vous à MyKinsta

Page de connexion MyKinsta
Capture d'écran de la page de connexion MyKinsta.

Rendez-vous sur la page de connexion MyKinsta et entrez votre adresse e-mail et votre mot de passe. Si vous n'avez pas encore de compte, vous pouvez créer un nouveau compte et obtenir 20 $ de réduction sur votre premier mois d'abonnement à un plan tarifaire.

3. Autoriser Kinsta sur GitHub

Une fois connecté, vous remarquerez que le tableau de bord propose 3 options pour créer un site WordPress, créer une application ou créer une base de données. Nous allons appuyer sur le bouton Connect GitHub pour intégrer GitHub.

Tableau de bord MyKinsta
Une capture d'écran pour le tableau de bord MyKinsta.

Ensuite, cliquez sur le bouton Continuer avec GitHub . Si vous n'êtes pas déjà connecté à GitHub, vous verrez l'option de vous connecter. Ensuite, vous pouvez autoriser l'application Kinsta GitHub à accéder à votre compte GitHub en sélectionnant Autoriser Kinsta .

Enfin, GitHub redirigera votre navigateur vers MyKinsta afin de continuer la configuration de l'application.

Connecter MyKinsta avec GitHub
Capture d'écran pour connecter MyKinsta à GitHub.

Une fois connecté à GitHub, la fenêtre contextuelle/modale Ajouter une application s'affiche, qui comporte un menu déroulant pour sélectionner un référentiel GitHub. Cliquez sur le champ Référentiel GitHub et sélectionnez Modifier les autorisations GitHub dans la liste déroulante.

Ajouter une application à MyKinsta
Capture d'écran pour ajouter une application à MyKinsta.

Cela ouvrira un nouvel onglet dans votre navigateur sur la page Web GitHub où vous pourrez choisir les données auxquelles Kinsta pourra accéder. Au lieu d'autoriser l'accès à tous les référentiels, pensez à ne choisir que celui que vous souhaitez que Kinsta utilise. Cliquez sur Sélectionner uniquement les référentiels et choisissez le référentiel que vous souhaitez déployer.

Installer MyKinsta sur GitHub
Une capture d'écran pour installer MyKinsta sur GitHub.

Ensuite, cliquez sur Installer , et vous êtes prêt !

Lorsque vous revenez sur MyKinsta et cliquez sur le champ Référentiel GitHub , le référentiel autorisé devrait être visible. De plus, vous pouvez cocher la case Déploiement automatique lors de la validation pour permettre à la fonctionnalité de MyKinsta de déployer automatiquement votre application dès que vous apportez des modifications au référentiel GitHub.

Sélection de la branche du référentiel pour MyKinsta
Capture d'écran pour la sélection de la branche du référentiel pour MyKinsta.

4. Ajouter les détails de base de l'application

Vous pouvez maintenant donner à l'application un nom qui ne sera utilisé que dans le tableau de bord et choisir parmi 25 emplacements de centres de données, vous permettant de placer votre application dans l'emplacement géographique le plus proche de vos utilisateurs. Si vous avez besoin d'aide pour déterminer quel centre de données est idéal pour votre application, consultez notre guide pour choisir le bon emplacement de centre de données.

Ajout des détails de base de l'application
Capture d'écran pour ajouter les détails de base de l'application.

5. Ajouter des variables d'environnement

La section suivante concerne l'ajout de variables d'environnement et la variable la plus importante est APP_KEY .

Si vous n'avez pas encore de clé dans votre fichier .env , vous pouvez en générer une à l'aide d'un générateur de clé Laravel en ligne. Ensuite, insérez APP_KEY dans le champ Clé 1 et insérez la clé d'application générée dans le champ Valeur 1 .

Enfin, sélectionnez Disponible pendant l'exécution et Disponible pendant le processus de construction .

Ajouter des variables d'environnement à l'application MyKinsta
Capture d'écran pour ajouter des variables d'environnement à l'application MyKinsta.

5. Configurer l'environnement de construction

La chose magique ici est que vous n'avez rien à configurer ! Vous pouvez continuer en cliquant sur le bouton Continuer , et voilà ! Vous avez terminé la configuration de l'environnement intégré. Cependant, si vous souhaitez améliorer les ressources de construction pour assurer une construction plus rapide, vous pouvez choisir le choix préféré dans le champ Ressources de construction .

Le champ Chemin de construction est facultatif — vous pouvez le laisser vide et MyKinsta utilisera le dossier racine.

Environnement de construction d'applications MyKinsta
Configuration de l'environnement de construction de l'application.

6. Configurer les processus et le mode de paiement

Pour la section Ressources , remplissez chaque champ avec les informations suivantes :

  • Nom du processus : Le nom affiché dans la liste des processus de votre application.
  • Type de processus : choisissez avec soin, car il ne peut pas être modifié une fois défini. Vous pouvez toutefois ajouter et modifier des processus supplémentaires, comme une tâche en arrière-plan, sur la page Processus de votre application après le déploiement.
  • Commande de démarrage : La commande "Démarrer" pour votre processus (non obligatoire).
  • Taille du pod : la capacité de pod dont vous pensez avoir besoin pour votre processus.
  • Nombre d' instances : le nombre d'instances pour votre processus (max. 50).

Notez que vous pouvez simplement cliquer sur Continuer sans remplir le champ Start command , car Kinsta détecte automatiquement la commande requise lors du premier déploiement.

Processus de configuration de l'application MyKinsta
Capture d'écran pour configurer le processus de l'application.

Pour la dernière étape, passez en revue les coûts d'utilisation mensuels calculés pour votre application, puis confirmez votre mode de paiement. Lorsque vous avez terminé, cliquez sur le bouton Confirmer le mode de paiement .

Confirmation des détails de paiement pour MyKinsta
Capture d'écran pour confirmer les détails du paiement.

Et tu as fini! Kinsta fera tout le travail en arrière-plan pour servir votre application.

Chargement du processus de déploiement de l'application
Capture d'écran du chargement du processus de déploiement de l'application.

Ensuite, vous aurez accès à tous les détails du processus de déploiement, ainsi qu'à l'URL temporaire de l'application en direct, que vous pourrez remplacer ultérieurement par votre propre domaine.

Déploiement réussi de l'application
Déploiement réussi de l'application Laravel10 sur MyKinsta.

Votre application Laravel 10 est maintenant en ligne sur Kinsta, mais que se passe-t-il si vous avez besoin de changer de production ? Que se passe-t-il si nous voulons modifier l'attribut href d'une balise d'ancrage ? Puisque nous avons activé la fonction Déploiement automatique lors de la validation, MyKinsta détectera toutes les modifications que nous apportons à la branche déployée et mettra automatiquement à jour l'application en direct en conséquence.

7. Connectez Laravel 10 à la base de données MySQL

Maintenant que nous avons déployé notre application Laravel 10, nous pouvons facilement construire une base de données et la lier à notre application. Tout ce que vous avez à faire est de cliquer sur Applications dans le menu de navigation à gauche, puis sur Ajouter un service et de sélectionner Base de données .

Ajouter une nouvelle base de données à MyKinsta
Capture d'écran pour ajouter une nouvelle base de données à MyKinsta.

Après avoir rempli tous les champs, cliquez sur Créer une base de données . Cela établira une nouvelle base de données prête pour les connexions internes et externes. Dans notre scénario, nous avons besoin d'une connexion interne au projet Laravel 10 que nous avons déployé.

Pour cela, il vous suffit de cliquer sur Ajouter une application dans la section Connexions internes et de sélectionner votre application. Vous pouvez cocher la case Ajouter des variables d'environnement à l'application et MyKinsta remplira toutes les variables .env votre application a besoin.

Connexion de la base de données à l'application Laravel 10
Capture d'écran pour connecter la base de données à l'application Laravel 10.

Avec juste cela, votre application Laravel 10 est déployée et connectée à une base de données.

Comment contribuer à Laravel 10

Bien que Laravel soit maintenu par une équipe centrale, il est activement développé par plus de 3 000 contributeurs bénévoles.

Voulez-vous être l'un de ces contributeurs et contribuer à façonner l'avenir de Laravel ? Si vous avez répondu oui, vous pourriez aider les développeurs du monde entier en ajoutant une nouvelle fonctionnalité, en corrigeant un bogue ou même en réécrivant une partie confuse de la documentation.

Pour contribuer à Laravel 10, voici ce que vous devez faire :

  1. Dirigez-vous vers le référentiel GitHub de Laravel et consultez les demandes d'extraction marquées avec [10.x] dans le titre. Cela vous fournira une image claire de toutes les demandes d'extraction pour Laravel 10. Si l'un des PR traite de la contribution que vous aviez l'intention d'apporter, voyez si vous pouvez l'améliorer.
  2. Si votre contribution prévue n'a pas encore été traitée par quelqu'un d'autre, vous pouvez créer vous-même un PR.
  3. Tout ne vaut pas la peine d'être ajouté à la base de code du framework. Par conséquent, efforcez-vous de n'implémenter que des améliorations qui seront faciles à maintenir à l'avenir et qui aideront la grande majorité de la communauté Laravel.
  4. Assurez-vous de respecter les directives de contribution de Laravel pour une meilleure chance de fusionner vos modifications avec le framework.

Une autre raison d'aimer Laravel 10 est qu'il vous permet de gagner de l'argent pour vos contributions avec des chasses aux bugs ! Nous les examinerons ensuite.

Concours de chasse aux bogues Laravel 10

Concours de chasse aux bugs Laravel 10
Concours de chasse aux bugs Laravel 10.

Laravel 10 a annoncé un excellent concours dans lequel un contributeur aléatoire a la chance de gagner 1 000 $.

Ce sera le premier concours de ce genre dans l'histoire de Laravel. Il a été conçu pour encourager la communauté à trouver et à corriger les bogues cachés dans Laravel 10.

Les règles sont simples :

  • Seuls les PR soumis à la branche 10.x du référentiel laravel/framework sont éligibles.
  • Seules les corrections de bogues "authentiques" seront prises en compte. Les nouvelles fonctionnalités, la refactorisation et les corrections de fautes de frappe ne sont pas prises en compte.
  • Chaque correction de bogue doit être appuyée par un test.
  • Les corrections de bogues acceptées seront étiquetées sur GitHub et un gagnant aléatoire sera annoncé à la fin du concours.

Le concours se terminera lorsque la première version stable de Laravel 10 sera publiée. Toutes les demandes d'extraction qui seraient encore en attente à ce moment-là ou soumises après la sortie de Laravel 10 ne seront pas éligibles.

Résumé

Ce n'est pas tout pour cet article ! Il y aura plus de changements jusqu'à la date de sortie. Mais pour le moment, Laravel 10 semble extrêmement prometteur, et nous sommes ravis de couvrir tous les cadeaux qu'il apporte au monde PHP.

En attendant, si vous cherchez d'autres moyens d'améliorer les performances de votre application Laravel, vous pouvez envisager de passer à un fournisseur d'hébergement premium. Les solutions d'hébergement d'applications de Kinsta sont parmi les plus rapides, les plus sécurisées et les plus faciles à utiliser de l'industrie, et elles sont spécialement conçues pour les développeurs, offrant une rationalisation de la production et un support expert 24h/24 et 7j/7 de nos propres développeurs chevronnés.