mll-lab/laravel-query-log
Laravel Query Log records the database queries your Laravel app executes, helping you inspect SQL, bindings, and timing during development and debugging. A lightweight way to see what runs behind the scenes.
Evidence base: Two data points now — the v2.3.0 changelog entry ("Added: Support Laravel 9") and its publication timestamp, 2022-05-16T09:03:24Z. Still no repository metadata, dependency manifest, CI results, download volume, or license data. The prior assessment named the publication date as the single most important unknown; it is now resolved, and it materially changes the risk picture.
Architecture fit: Package-level domain fit remains unknown — the note does not describe what the package does, so alignment with our domain model still cannot be judged. Framework alignment, however, is now clearer. Laravel 9 reached general availability on 2022-02-08; this release landed roughly three months later. That is a prompt, healthy compatibility cadence and a positive maintainer signal. The caveat is directional: the release establishes Laravel 9 as the package's ceiling. Laravel 9 has since reached end of bug fixes (August 2023) and end of security fixes (February 2024). A package whose newest evidenced release targets Laravel 9 would, if adopted today, anchor us to an unsupported framework branch.
Integration feasibility: Structurally low-friction. Laravel packages of this shape integrate via Composer, service-provider auto-discovery, and optionally a publishable config and migrations. The minor version bump and the "Added" phrasing indicate a non-breaking, additive change. But feasibility must be split by audience:
composer update within the minor line; risk confined to lockfile resolution.require is ^9.0 only, it cannot be installed into a Laravel 10/11/12 application at all without --ignore-platform-reqs hacks we should not accept.Technical risk:
Key questions (discovery checklist):
^8.0 || ^9.0) or replace (^9.0 only)? Does it drop Laravel 8 or PHP 7 support we still depend on?Stack fit: Presumed Laravel/Lumen application stack, Composer-managed. Confirmed compatible with Laravel 9 as of v2.3.0. Compatibility with Laravel 10, 11, or 12 is unstated; given the release date, assume not supported until a newer release proves otherwise. The stack-fit decision therefore hinges on our own framework version — verify ours first, before spending spike time.
Migration path: No migration of the package, only evaluation and adoption. For an existing consumer, the upgrade is a routine composer update within the minor line. For a net-new consumer, the path is: install into a throwaway Laravel 9 skeleton, publish config, run the package's own tests, then exercise the specific feature we intend to use. Note that a Laravel 9 skeleton is now itself a legacy environment to stand up and maintain — factor that into the spike cost.
Compatibility: Three axes to verify explicitly — (a) our PHP runtime against the package's require.php, since Laravel 9 mandates PHP 8.0+ and we may already be on PHP 8.2/8.3 where Laravel 9 support is narrower; (b) the package's constraints against every other dependency in our lockfile, since a widened Laravel constraint can surface transitive conflicts a clean skeleton install will not reveal; (c) our target framework major against the package's constraint — the binary gate that determines whether this is even a decision.
Sequencing:
composer why output and the resolved dependency tree.composer.json between v2.2.x and v2.3.0 to confirm the change is a widening and nothing was dropped.Maintenance: Ongoing cost is low if the package is a leaf dependency and we pin it. The lifecycle risk has shifted shape: the original concern was a maintainer who moves slowly, and the release date largely rebuts that. The live concern is a maintainer who may have stopped moving at all. Adopting a package whose latest evidenced release targets an EOL framework branch means we either freeze our framework version or inherit ownership of a fork with no upstream test suite. Neither is acceptable as an unplanned outcome.
Support: No commercial support arrangement is evidenced. Assume community-only, best-effort, single-maintainer risk until proven otherwise. Identify an internal owner before adoption; an unowned third-party dependency is an orphaned dependency. With a three-year-old release, the probability that the maintainer responds to an issue in our timeframe should be assumed low.
Scaling: Runtime scaling characteristics are package-specific and unknown. The relevant scaling question at this stage is organizational: does the package's abstraction hold if our usage grows from one call site to many? Packages adopted for a single use case often become accidental platform components — and a platform component pinned to EOL Laravel is a compounding liability.
Failure modes to plan for:
Ramp-up: Low for any engineer fluent in Laravel package conventions — service provider, config publish, facade. Budget roughly half a day for a competent Laravel developer to reach productive use, plus spike time. The real ramp-up cost is institutional: documenting the pinning policy, the upgrade cadence we expect, and the trigger conditions for forking. If the package is abandoned, add the cost of standing up a Laravel 9 environment purely to service it.
Recommendation: Conditional proceed, gated on a currency check. The v2.3.0 change is low-risk, non-breaking, and — now that the date is known — was delivered on a healthy cadence relative to Laravel 9's launch. That resolves the specific worry the prior assessment raised. It does not resolve the newer one: three years have passed, and a package whose newest known release caps at Laravel 9 is not a safe long-lived dependency for an application we intend to keep current. Do not commit to adoption until the latest release and its supported framework range are confirmed; if v2.3.0 is in fact the current head, record a no-go on maintenance grounds and move on.
How can I help you explore Laravel packages today?