Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Typo3 Debug Dump Pass Laravel Package

ssch/typo3-debug-dump-pass

A lightweight TYPO3 extension that adds a debug dump compiler pass, letting developers use Symfony VarDumper-style dump output to inspect variables during development. Simple to install and handy for debugging TYPO3 sites.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

  • This is developer tooling, not runtime infrastructure: it adds a container debug-dump compiler pass so that dump()-style calls in TYPO3 code are visible to PHPStan and TYPO3-Rector instead of being reported as undefined or untyped. It belongs in require-dev and a CI analysis stage, never in a production dependency graph.
  • Fit is conditional on having TYPO3 in the portfolio. In a pure Laravel/Symfony codebase there is no container pass to hook and no static-analysis gap to close — adopting it would be cargo-culting. Value only appears in a monorepo or service catalog that includes TYPO3 extensions.
  • Conceptually it aligns with an existing quality gate (PHPStan level bumps, Rector rule sets), which is the strongest argument for a TPM to sponsor it: it improves signal-to-noise on an analysis pipeline the team already pays for.

Integration feasibility

  • Mechanically trivial: one Composer require-dev, one compiler-pass registration, and a PHPStan/Rector config touch. Realistic effort is well under a day for an engineer already fluent in TYPO3 DI.
  • The real cost is validation, not installation: you must capture a PHPStan baseline before and after to prove the pass actually changes the reported error set rather than silently no-op'ing.

Technical risk

  • Bus factor of one. 3 stars, 0 dependents, and a description that presumes deep TYPO3 container knowledge. There is no community to triage issues and no implied SLA on the 2026-02-04 release.
  • Version-coupling risk is the dominant one. A compiler pass binds to TYPO3's DI internals; PHPStan and Rector both ship breaking changes across majors. Any of those three moving can break the pass or, worse, make it a no-op that gives false confidence in a clean baseline.
  • Silent-failure mode beats loud-failure mode in severity. A crash in CI is cheap to notice; a pass that quietly stops covering dump() calls means the team believes the analysis is clean when it is not.
  • Supply chain is low-but-nonzero: dev dependencies still execute code in CI and on developer machines.

Key questions

  • Which TYPO3 majors are supported (v11 / v12 / v13), and which PHPStan and Rector majors?
  • Does it fix types or suppress errors? Suppression-only would be a hard no for a quality-gate use case.
  • Is the compiler pass opt-in per extension, or global to the container build?
  • What is the license, and is there a stated compatibility matrix in the README?
  • Who owns it internally if upstream goes quiet in six months?
  • What is the measured delta in PHPStan errors on a representative extension — the number that justifies the dependency at all?

Integration Approach

Stack fit

  • Adopt only inside a TYPO3 subproject. In a Laravel-first organization this is out of scope and should be rejected at intake rather than "parked," so it does not resurface in every future tooling review.
  • Where it does fit, position it as part of the static-analysis toolchain, not as a debugging utility — the name invites the wrong mental model and the wrong owner (someone will file it under "local dev conveniences" and it will rot).

Migration path

  • Add to require-dev on a throwaway branch, pin to an exact version, run the existing PHPStan and Rector jobs unchanged, and diff the reported error sets.
  • Ship only if the diff is non-empty and explainable. If the error count is identical before and after, the pass is inert on your codebase and the dependency should be dropped.

Compatibility

  • Pin TYPO3, PHPStan, Rector, and this package together in a compatibility note in the repo, because there is no upstream matrix to lean on.
  • Verify PHP constraint alignment with the extensions under analysis; a dev tool that forces a PHP minor bump across the monorepo is not worth the noise reduction.

Sequencing

  1. Inventory dump()/var_dump()/debug-utility call sites across TYPO3 extensions to size the actual problem.
  2. Pilot on one extension with the strictest existing PHPStan level.
  3. Measure baseline delta and CI wall-clock impact; decide go/no-go on evidence.
  4. If go, codify the pinned version and the pass registration in the shared CI template so it is not per-repo folklore.
  5. Record the decision and the fallback (hand-written PHPStan stub/bootstrap) in the tooling ADR.

Operational Impact

Maintenance

  • Treat it as vendored-adjacent: pin exact versions, review on every TYPO3/PHPStan/Rector upgrade, and pre-commit to an exit path (a small internal stub file replicating the pass) so an abandoned upstream is a one-day swap rather than a fire drill.
  • Assign a named owner in the platform/tooling group. Unowned dev dependencies are how CI quietly degrades.

Support

  • Community-only, effectively solo-maintainer. Do not assume issue response; budget for the team to read the source if it breaks. This is acceptable for a dev dependency under ~200 LOC and unacceptable if it becomes load-bearing for a release gate without an internal fallback.

Scaling

  • Runtime and production impact: zero (dev-only). CI impact is one extra container build pass and negligible analysis time.
  • Scales linearly and cheaply across N TYPO3 extensions, which is the case for standardizing it in the shared CI image rather than per-repo — but only after the pilot proves a measurable delta.

Failure modes

  • Container build breaks after a TYPO3 minor upgrade → CI red across every TYPO3 job at once; mitigate with version pinning and a canary repo.
  • PHPStan/Rector major bump makes the pass incompatible → analysis silently loses coverage; mitigate by asserting a known-bad fixture still fails the build.
  • Silent no-op → false confidence in a clean baseline; mitigate with the fixture assertion above.
  • Upstream abandonment → no security or feature response; mitigate with the exit-path stub.

Ramp-up

  • Low for the right engineer: roughly half a day to understand the pass, a day to validate end-to-end. It requires someone comfortable with TYPO3's DI container and PHPStan extension mechanics — a narrower skill set than "PHP developer," and the honest reason many teams will not get value from a 3-star package regardless of its technical merit.
  • Expect one engineer to carry it. Do not plan for broad team fluency; plan for documentation plus a single accountable owner.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle