Releases: zonoid/dbug
Releases · zonoid/dbug
Joomla 5/6 Compatibility and Modern Debug Dock Release
📝 Release Notes
🚀 What’s new
- Modern bottom debug dock inspired by Joomla Debug & browser DevTools
- Safe buffered rendering (no more DOM corruption or layout breakage)
- Tabbed interface (Dump / Info / Request – extensible)
- Resizable, collapsible panel with persistent state
- Keyboard support (Esc to close)
- Automatic dump counter
- Dark-mode friendly CSS
- Joomla WebAssetManager integration (CSS/JS loaded correctly)
🧠 Architecture Improvements
- Renderer no longer echoes HTML directly
- Dumps are buffered and injected once in onAfterRender()
- Prevents invalid HTML, empty page sections, and DOM reflow issues
- Clear separation of concerns:
- Plugin → lifecycle, permissions, asset loading
- Renderer → formatting only
- Shim (dbug()) → backward compatibility
🔒 Safety & Control
- Renderer does nothing when plugin is disabled
- Prevents accidental dumps when plugin is unpublished
- Optional restriction support:
- Joomla debug mode
- IP address
- User / access level / user group
- Assets load only when at least one dump occurs
♻️ Backward Compatibility
- Legacy dbug($var) API preserved
- Existing code using dbug() continues to work
- Direct instantiation of the renderer is safely ignored unless plugin is enabled
⚠️ Breaking Changes
- dBug no longer outputs markup immediately
(all output is now buffered and injected at the end of the page) - Direct usage of new Dbug() outside the plugin lifecycle is discouraged
🧩 Minimum Requirements
- Joomla 5.x / 6.x
- PHP 8.1+
📌Notes
- Info & Request panels are placeholders for future expansion
- Designed as a foundation for advanced diagnostics (queries, memory, request data)