This package contains a Laravel Health check that can report any known security issues with the installed PHP packages in your application.
The security advisories are fetched from Packages and are sources from GitHub, and other sources.
// typically, in a service provider
use Spatie\Health\Facades\Health;
use Spatie\SecurityAdvisoriesHealthCheck\SecurityAdvisoriesCheck;
Health::checks([
SecurityAdvisoriesCheck::new()->retryTimes(5),
]);By default, this package will make an HTTP request to Packagist every time the health check runs. To reduce API calls and improve performance, you can enable caching by calling cacheResultsForMinutes():
use Spatie\Health\Facades\Health;
use Spatie\SecurityAdvisoriesHealthCheck\SecurityAdvisoriesCheck;
Health::checks([
SecurityAdvisoriesCheck::new()
->retryTimes(5)
->cacheResultsForMinutes(60), // Enables caching for 1 hour
]);You can also provide your own PSR-16 compatible cache instance:
use Illuminate\Support\Facades\Cache;
use Spatie\Health\Facades\Health;
use Spatie\SecurityAdvisoriesHealthCheck\SecurityAdvisoriesCheck;
Health::checks([
SecurityAdvisoriesCheck::new(
packagistClient: null,
cache: Cache::store('redis') // Use Redis cache store
)->cacheResultsForMinutes(120), // Cache for 2 hours
]);SecurityAdvisoriesCheck::new()
->retryTimes(3) // Number of retry attempts on failure
->cacheResultsForMinutes(120) // Cache duration in minutes
->ignorePackage('vendor/package') // Ignore specific packages
->ignoredPackages([ // Ignore multiple packages
'vendor/package1',
'vendor/package2'
]);The documentation of this package is available inside the docs of Laravel Health.
We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.
composer testPlease see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.
