Download the PHP package goedemiddag/laravel-autodiscovery-lock without Composer
On this page you can find all versions of the php package goedemiddag/laravel-autodiscovery-lock. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download goedemiddag/laravel-autodiscovery-lock
More information about goedemiddag/laravel-autodiscovery-lock
Files in goedemiddag/laravel-autodiscovery-lock
Package laravel-autodiscovery-lock
Short Description Creates a lock file containing all the packages which are auto-discovered by Laravel.
License MIT
Informations about the package laravel-autodiscovery-lock
Laravel autodiscovery lock
This package allows you to monitor the autodiscovery of your Laravel application. By running the supplied command in the post-autoload-dump event, you can generate a file that contains all the autodiscovered packages. This file can then be used to check for unacknowledged autodiscoveries.
Installation
First use composer to install the package using the following command
This will register a command in your application. To use this command, you need to add it to the post-autoload-dump event in your composer.json file right under the package:discover
function laravel has already registered there.
It should look something like this:
Usage
The package has two main usages. Generating a lock file to keep track of the autodiscoveries and checking for unacknowledged autodiscoveries,
and Verifying that your lock file and autodiscovered packages are in sync.
Generating the lock file
To generate the first autodiscovery lock file, run the following command:
This will generate a file called autodiscovery.lock
in the root of your project. This file contains all the autodiscovered packages and which providers / aliases they provide.
After generating and committing this file, and registering the above command in the composer.json scripts you should be set for automatic updates each time composer installs or updates a package,
or dumps the autoload in general.
Verifying the lock file
Validating the lock file allows you to make sure installed packages did not change their autodiscoveries without you knowing. To validate the lock file, run the following command:
If there is a difference between the lock and the autodiscovered packages, the command will exit with a non-zero exit code. This allows you to use this command in your CI/CD pipeline with ease. Just run the command in the pipeline for your Pull Requests, and/or run the command in your build pipeline.
Pipeline examples
TBD
Contributing
Found a bug or want to add a new feature? Great! There are also many other ways to make meaningful contributions such as reviewing outstanding pull requests and writing documentation. Even opening an issue for a bug you found is appreciated.
If you would like to contribute code, please see our contributing guide
Credits
- Bonroyage - For helping out with the initial implementation.
- NiekKeijzer - For reviewing the code for the initial implementation.
- All Contributors
All versions of laravel-autodiscovery-lock with dependencies
laravel/framework Version ^8.0 || ^9.0 || ^10.0 || ^11.0
symfony/filesystem Version ^6.3