<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Chirag Patel</title>
    <description>The latest articles on Forem by Chirag Patel (@codementortech).</description>
    <link>https://forem.com/codementortech</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1038188%2Fa721e4b7-5c24-4bd3-aec6-bab467e1ded2.jpeg</url>
      <title>Forem: Chirag Patel</title>
      <link>https://forem.com/codementortech</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/codementortech"/>
    <language>en</language>
    <item>
      <title>What to expect in laravel 10</title>
      <dc:creator>Chirag Patel</dc:creator>
      <pubDate>Sat, 04 Mar 2023 03:12:52 +0000</pubDate>
      <link>https://forem.com/codementortech/what-to-expect-in-laravel-10-2k4l</link>
      <guid>https://forem.com/codementortech/what-to-expect-in-laravel-10-2k4l</guid>
      <description>&lt;p&gt;Originally published at &lt;a href="https://codementor.tech/posts/what-to-expect-in-laravel-10"&gt;codementor.tech&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Today, In this post we wanted to outline What to expect in laravel 10: An overview of upcoming features and changes.&lt;/p&gt;

&lt;p&gt;Laravel v10 is the next major version of Laravel after Laravel v9 and laravel v8, planned for release in February 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  Laravel 10 Release Date
&lt;/h2&gt;

&lt;p&gt;Before Laravel 9, major framework versions were released twice a year or roughly every six months. Starting with Laravel 9, the core team went to an annual schedule, shipping Laravel 9 in February 2022 (instead of the originally planned September 2021).&lt;/p&gt;

&lt;p&gt;This schedule going forward is one major release annually:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Laravel 9: February 8th, 2022&lt;/li&gt;
&lt;li&gt;Laravel 10: February 2023&lt;/li&gt;
&lt;li&gt;Laravel 11: February 2024
&lt;code&gt;Laravel 9&lt;/code&gt; will continue to get bug fixes until August 8th, 2023 and security fixes until February 6th, 2024.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can expect Laravel 10 bug fixes until August 6th, 2024 and security fixes until February 4th, 2025.&lt;/p&gt;

&lt;h2&gt;
  
  
  Process Layer
&lt;/h2&gt;

&lt;p&gt;The laravel process layer service like the HTTP facade makes working with APIs a cinch, The process service will make working with Testing and running CLI process a dream to work with. You can check following example from Pull request by &lt;code&gt;Taylor Otwell&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Usage
use Illuminate\Support\Facades\Process;

$result = Process::run('ls -la');

$result-&amp;gt;successful();
$result-&amp;gt;failed();
$result-&amp;gt;exitCode();
$result-&amp;gt;output();
$result-&amp;gt;errorOutput();
$result-&amp;gt;throw();
$result-&amp;gt;throwIf(condition)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Which includes the features such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fluent process methods to build a process instance before running it&lt;/li&gt;
&lt;li&gt;Process Pools&lt;/li&gt;
&lt;li&gt;Preventing stray processes during tests&lt;/li&gt;
&lt;li&gt;Rich testing features via fake()&lt;/li&gt;
&lt;li&gt;Asynchronous processes&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Laravel 10 drops support for PHP 8.0
&lt;/h2&gt;

&lt;p&gt;Laravel framework will drop support for PHP &amp;lt;=v8.0 in Laravel 10. The minimum required version is PHP ^8.1.&lt;/p&gt;

&lt;p&gt;Native type declarations in Laravel 10 skeleton&lt;br&gt;
Laravel 10 will use native PHP type declarations across any generated code that can exist in userland:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/taylorotwell/status/1592227118481805312"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Types are being added in a way that brings the latest PHP type-hinting features to Laravel projects without breaking backward compatibility at the framework level:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Return types&lt;/li&gt;
&lt;li&gt;Method arguments&lt;/li&gt;
&lt;li&gt;Allow user land types in closure arguments&lt;/li&gt;
&lt;li&gt;Does not include typed properties&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Invokable Validation rules are the default
&lt;/h2&gt;

&lt;p&gt;Starting in laravel 10, &lt;a href="https://laravel.com/docs/9.x/validation#using-rule-objects"&gt;Invokable Validation&lt;/a&gt; are now default.&lt;/p&gt;

&lt;p&gt;When you create a new validation rule via artisan, this is what you can expect:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;invokable
# Laravel 9 creates a rule class that implements the
# Illuminate\Contracts\Validation\Rule interface
artisan make:rule Uppercase

# Laravel 9 flag to create an invokable and implicit rule
artisan make:rule Uppercase --invokable
artisan make:rule Uppercase --invokable --implicit

# Laravel 10 creates an invokable rule by default
artisan make:rule Uppercase

# Laravel 10 implicit rule
artisan make:rule Uppercase --implicit
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Profile option for tests
&lt;/h2&gt;

&lt;p&gt;A new feature coming to Laravel 10 is a --profile option that will make it easy for you to find any slow tests in your application.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deprecations from Laravel 9
&lt;/h2&gt;

&lt;p&gt;Here are some deprecations found in the comparison of the Laravel framework's master branch to the 9.x branch at the time of writing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Remove &lt;code&gt;handleDeprecation&lt;/code&gt; method&lt;/li&gt;
&lt;li&gt;Remove deprecated &lt;code&gt;assertTimesSent&lt;/code&gt; method&lt;/li&gt;
&lt;li&gt;Remove deprecated &lt;code&gt;ScheduleListCommand's $defaultName&lt;/code&gt;property&lt;/li&gt;
&lt;li&gt;Remove deprecated &lt;code&gt;Route::home&lt;/code&gt; method&lt;/li&gt;
&lt;li&gt;Remove deprecated &lt;code&gt;dispatchNow&lt;/code&gt; functionality&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Testing Laravel 10
&lt;/h2&gt;

&lt;p&gt;If you want to start testing Laravel 10 now, you can install it in a fresh project by using the &lt;code&gt;--dev&lt;/code&gt; flag:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;laravel new &amp;lt;your-project-name&amp;gt; --dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We will be updating this post as those get announced. You can also check out the &lt;a href="https://laravel.com/docs/master/releases"&gt;official release page&lt;/a&gt; to look for updates.&lt;/p&gt;

&lt;p&gt;Thank You ! Cheers...&lt;/p&gt;

&lt;p&gt;Happy Coding!&lt;/p&gt;

</description>
      <category>codementor</category>
      <category>laravel</category>
      <category>php</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
