alex-storozhenko/eloquent-criteria
A lightweight Laravel package for applying reusable criteria to Eloquent queries. Encapsulate filters and query logic in dedicated criteria classes, then compose them on models or repositories for cleaner, testable, and more maintainable database code.
This is the first assessment for this package; v2.0.0 is the baseline to evaluate against.
composer.json). On a Laravel 9 application, composer require/composer update will fail or resolve to the older 1.x line.composer show <vendor>/<package> --all
composer why-not <vendor>/<package> "^2.0"
Look at the package’s composer.json for illuminate/*, PHP, and extension requirements.^2.0, run composer update <vendor>/<package> -W, then execute the application test suite before touching production configuration.UPGRADE.md/CHANGELOG.md, the service provider, published config file, and any Laravel-specific integration tests shipped by the package.^2.0 in composer.json and commit composer.lock. Because v2.0.0 also updates composer dependencies, avoid broad * constraints that could silently pull incompatible transitive packages.app() calls in domain code. This keeps tests fast and makes package replacement or decoration easier.config('package.key'). Do not call env() directly outside config files, especially if you use php artisan config:cache.^2.0.composer update <vendor>/<package> -W.php artisan config:clear, php artisan cache:clear, and the test suite.vendor/.--ignore-platform-reqs or by editing composer.json to allow Laravel 9. Either stay on the package’s 1.x line or upgrade the application to Laravel 10+ first.composer diagnose and check composer why-not if resolution fails. Update transitive dependencies with -W rather than forcing individual packages.php artisan config:clear
php artisan cache:clear
php artisan route:clear
php artisan view:clear
Then rebuild production caches with config:cache and route:cache.php artisan queue:restart after deployment.env() calls. If behaviour changes only in production, check whether the package reads environment variables outside a config file. Publish and edit the config instead.composer why-not <vendor>/<package> "^2.0" to identify the blocker before changing unrelated dependencies.composer show <vendor>/<package>, composer why-not, composer diagnose, application logs, and the package’s own test suite. If the package provides a facade, confirm it is registered in config/app.php only for legacy Laravel setups; modern Laravel uses package discovery.How can I help you explore Laravel packages today?