matthiasnoback/symfony-service-definition-validator
Validates Symfony service definitions at build time, catching misconfigured services, arguments, and references before they cause runtime errors. Useful in CI to keep your container configuration correct as the application grows, so broken service wiring fails fast instead of at deploy time.
bin/console lint:container, CheckTypeDeclarationsPass, and debug:container cover the highest-value checks. This package is best treated as a reference point, not an adoption candidate.Reasonable criteria:
lint:container and declaration-type checks are unavailable in core.Look elsewhere when:
lint:container in CI and add CheckTypeDeclarationsPass; zero new dependencies, first-party support.For executives (one paragraph): DI misconfiguration is a class of defect that surfaces as production errors and emergency fixes, and it is almost entirely preventable. This package is a small, MIT-licensed, community tool that pioneered validating service wiring before deployment. However, the capability now ships with the framework, and the package itself has not been released since early 2022 and has limited adoption. Recommendation: adopt the practice, not the package — turn on the framework's built-in container linting in CI, keep the third-party dependency out of our stack, and revisit this package only if we inherit a legacy Symfony codebase that predates those checks.
For engineering:
bin/console lint:container and the declaration-type check to the CI pipeline; fail the build on violations.matthiasnoback/symfony-service-definition-validator to composer.json for new work; if a specific legacy-only check proves necessary, vendor a fork under MIT with a named owner and a review date.How can I help you explore Laravel packages today?