Skip to content

Document the debugbar reading its data when the toolbar renders - #144

Merged
armanist merged 3 commits into
stagingfrom
docs/3.1-debugbar
Oct 21, 2026
Merged

armanist merged 3 commits into
stagingfrom
docs/3.1-debugbar

Conversation

@armanist

Copy link
Copy Markdown
Collaborator

Documents taking the debugbar out of the app flow and the packages that feed it, as in quantum-php/framework#592 (#539).

What changed

  • packages/debugger/architecture.md: rewritten around reading the tabs when the toolbar renders: the render flow, a table of where each tab's data comes from and when, an example routes entry, the store holding only direct writes, and why a second render() duplicates entries.
  • packages/debugger/overview.md, usage.md, contracts.md, helpers.md: no boot step (InitDebuggerStage is gone, initStore() is optional); addToStoreCell() is the way to add an entry to any tab; getStoreCell() returns only direct writes; the store guarantee; the layouts are the only caller of debugbar() outside the package. Corrects the level contract: MessagesCollector::log() accepts any level string.
  • packages/logger/*: the debug-mode message adapter keeps messages in memory (getMessages()) and ignores the context, so a tab key no longer routes a message; "Route debug messages into a custom debugger tab" becomes "Check what was logged in debug mode". Also corrects the report() signature (string|Stringable) and when the logging config loads (during boot, for the error handler).
  • packages/mailer/*: new "Transport log" contract (getTransportLog() on MailerInterface: errors of failed sends and, in debug mode, the SMTP exchange); the "mirrored into the mails tab" sentences point there. Corrects the failure contract: a failed SMTP send throws, only the API adapters return false.
  • packages/app/architecture.md, overview.md, adapters.md, advanced-features/request-lifecycle.md: no debugger stage in the web boot, and preparing a request no longer writes to the debug bar.
  • packages/view/contracts.md, architecture.md, overview.md: new getViewFile(); the View no longer updates the debugger.
  • packages/event/architecture.md: the toolbar reads getRegistered() when it renders.

Changed paths

  • v3.0/packages/debugger/architecture.md
  • v3.0/packages/debugger/overview.md
  • v3.0/packages/debugger/usage.md
  • v3.0/packages/debugger/contracts.md
  • v3.0/packages/debugger/helpers.md
  • v3.0/packages/logger/overview.md
  • v3.0/packages/logger/usage.md
  • v3.0/packages/logger/contracts.md
  • v3.0/packages/logger/architecture.md
  • v3.0/packages/logger/adapters.md
  • v3.0/packages/logger/helpers.md
  • v3.0/packages/mailer/overview.md
  • v3.0/packages/mailer/usage.md
  • v3.0/packages/mailer/contracts.md
  • v3.0/packages/mailer/adapters.md
  • v3.0/packages/app/architecture.md
  • v3.0/packages/app/overview.md
  • v3.0/packages/app/adapters.md
  • v3.0/advanced-features/request-lifecycle.md
  • v3.0/packages/view/contracts.md
  • v3.0/packages/view/architecture.md
  • v3.0/packages/view/overview.md
  • v3.0/packages/event/architecture.md

SUMMARY.md: no change.

@armanist
armanist merged commit 4ad1a6b into staging Oct 21, 2026
@armanist
armanist deleted the docs/3.1-debugbar branch October 23, 2026 08:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant