Download the PHP package jaydeep/laravel-preflight without Composer

On this page you can find all versions of the php package jaydeep/laravel-preflight. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-preflight

Laravel Preflight

Latest Version Total Downloads PHP Laravel

The fastest way to find every breaking change before you upgrade Laravel.

One Artisan command scans your entire codebase and reports only the upgrade issues that actually exist in your project — across PHP files, composer.json, config files, and .env. Supports upgrading from Laravel 8 through 13 with 70+ checks covering every major breaking change.


Why Laravel Preflight?

The official Laravel upgrade guide lists every possible breaking change — but most of them won't affect your app. Reading through the full guide, manually searching your code, and checking config keys wastes hours.

This tool does it in seconds:


Installation

Auto-discovered. No service provider registration needed.


Quick Start

The command auto-detects your current Laravel version from composer.json. Multi-version upgrades are fully supported — scanning from Laravel 8 to 13 covers all intermediate breaking changes in a single run.


Screenshots

Console Output

HTML Report


How It Works

1. Detect — Reads your composer.json to determine the current Laravel version and the target you specify.

2. Scan — Runs four analyzers across your codebase:

Analyzer Scans Checks
ComposerAnalyzer composer.json Deprecated, removed, or replaced packages
CodeAnalyzer app/, routes/, config/, database/, resources/, tests/ Regex pattern search across all .php files
ConfigAnalyzer config/*.php Missing or renamed config keys
EnvAnalyzer .env.example / .env New required environment variables

3. Report — Prints a grouped, colour-coded console report. Use --report to also write storage/upgrade-report.md and storage/upgrade-report.html.


Supported Upgrade Paths

Target From Key Breaking Changes Checked
Laravel 9 Laravel 8 PHP 8.0 required, SwiftMailer removed, fruitcake/laravel-cors deprecated, facade/ignition replaced, $dates property deprecated, Flysystem 3.x, dispatch_now() removed, mail config default key
Laravel 10 Laravel 9 PHP 8.1 required, Bus::dispatchNow() removed, assertDeleted() removed, $dates fully removed, Predis 2.x required, native return types enforced, getQueueableRelations() return type
Laravel 11 Laravel 10 PHP 8.2 required, slim skeleton (Http/Kernel.php removed, Console/Kernel.php removed), service providers consolidated, routes/api.php not auto-loaded, routes/channels.php not auto-loaded, Carbon 3.x
Laravel 12 Laravel 11 doctrine/dbal dropped, Model::reguard() removed, Response::json() throws on invalid JSON, Collection::groupBy() key preservation, whereRelation() signature, Str::password() removed, spatie/laravel-ignition ^2.0
Laravel 13 Laravel 12 VerifyCsrfTokenPreventRequestForgery, cache serializable_classes, DB::upsert() validation, cache key prefix format, polymorphic pivot names, JobAttempted event property, array_first()/array_last() conflicts

Example Output


Report Files

Add --report to generate both a Markdown and a self-contained HTML report:

File Description
storage/upgrade-report.md Markdown — commit to your repo or share in a PR
storage/upgrade-report.html Interactive HTML — severity filters, collapsible cards, one-click copy for fix commands, animated readiness score

Severity Levels

Level Meaning
CRITICAL Will break your application — must fix before upgrading
WARNING Likely to cause bugs or unexpected behaviour — review required
INFO Behavioural change to be aware of — may or may not affect your app

CI / CD Integration

The command exits with code 1 when any issues are detected, and 0 when the codebase is clean — making it easy to gate deployments or upgrade PRs in any CI pipeline.


Extending: Adding a New Laravel Version

  1. Create src/VersionRegistry/Laravel{N}Upgrade.php extending BaseUpgrade
  2. Implement getBreakingChanges() returning an array of BreakingChange objects
  3. Register it in VersionRegistry::$upgrades and bump $latestVersion

Each breaking change supports four detection strategies:

Property Detected By Example
$searchPattern CodeAnalyzer — regex over PHP files '/VerifyCsrfToken/'
$composerPackage ComposerAnalyzer — checks composer.json 'facade/ignition'
$configKey ConfigAnalyzer — checks config/{file}.php 'cache.serializable_classes'
$envKey EnvAnalyzer — checks .env.example 'CACHE_PREFIX'

Architecture


Requirements

Version
PHP ^7.4 | ^8.0
Laravel ^8.0 through ^13.0

FAQ

Does it modify any files? No. The scan is entirely read-only. Nothing in your project is changed.

Can I run it on a project that is already on a newer version? Yes — the command detects your current version and skips checks that don't apply. If you're already on the target version it exits immediately.

How is it different from Rector or Laravel Shift? Rector and Shift modify your code. This tool only reports — it tells you what needs to change and where, so you can make the changes yourself with full control.

Can I use it in a pre-upgrade CI check? Yes. It returns exit code 1 when issues are found. Add it to your CI pipeline to block merges until the codebase is compatible with the target version.

What if a check fires but doesn't apply to my app? The results are informational. Review the listed file paths and decide whether the fix applies to your specific usage.


Contributing

Contributions are welcome — especially new breaking change definitions for existing or future Laravel versions.

  1. Fork the repository
  2. Add your breaking changes to the relevant Laravel{N}Upgrade.php file
  3. Test by running php artisan upgrade:check against a project that uses the pattern
  4. Open a pull request with a brief description of the breaking change and a link to the official Laravel upgrade guide

Related Packages


License

MIT — Jaydeep Gadhiya


All versions of laravel-preflight with dependencies

PHP Build Version
Package Version
Requires php Version ^7.4|^8.0
illuminate/console Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/support Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/filesystem Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package jaydeep/laravel-preflight contains the following files

Loading the files please wait ...