Laravel Packages

Larastan v1.0 Released

Published
Larastan v1.0 Released image

After initially writing about Larastan back in 2018, we are pleased to see the release of Larastan v1.0 this week, a package to help analyze Laravel application code:

Larastan is a development dependency that adds static analysis to Laravel, improving developer productivity and code quality. At the core, it's a PHPStan wrapper for Laravel and helps you find errors in your code through static analysis. It helps catch bugs before you even write tests for the code:

  • Adds static typing to Laravel to improve developer productivity and code quality
  • Supports most of Laravel's beautiful magic
  • Discovers bugs in your code without running it

You can use Larastan to analyze application code as well as use it to analyze your Laravel packages.

Getting started in your new or existing Laravel project is as easy as installing the package and configuring PHPStan:

composer require nunomaduro/larastan --with-dependencies --dev
 
# after setting up a `phpstan.neon` file in the root
# of your project, you can analyze your code:
./vendor/bin/phpstan analyse

If you find this package useful, consider sponsoring the developers Nuno Maduro and Can Vural on GitHub. The Larastan project page has links to all the ways you can sponsor their work.

You can learn more about this package, get full installation instructions, and view the source code on GitHub. I'd recommend checking out the rules specific to Laravel applications, with configurable options.


You can see the complete list of new features and updates below and the diff between v0.7.15 and v1.0.0. Also, the following release notes are directly from the changelog:

v1.0.0

Added

  • Dynamic method return type extension for Enumerable::filter in #981
  • New rule to check for relation existence in #985
  • rescue parameter of rescue function now accepts the Throwable by @sebdesign in #989
  • New CheckJobDispatchArgumentTypesCompatibleWithClassConstructorRule rule in #991
  • Added non-empty-string types in stubs. c5b81cf

Fixed

  • PHPStan 1.0 compatibility in #968
Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article