github buggregator/server v2.8.0

one hour ago

Built with harnsy — the Buggregator team runs its AI agents in harnsy.

Before you upgrade

  • The server now checks GitHub for a new version. At start and every 12 hours it asks api.github.com for the latest release, so the UI can tell you when a new version is out. Turn it off with update_check.enabled: false (UPDATE_CHECK_ENABLED=false); then the server makes no network call at all. Development builds never check. (#406, closes #6)
  • A new module, Xdebug traces, is on by default. It accepts trace uploads on the HTTP port and adds 4 MCP tools: Buggregator now has 23 MCP tools (35 with the Xdebug proxy, 36 with allow_eval). Turn it off with modules.xdebug-trace: false. (#410, #411)
  • Use the matching UI. This release bundles frontend 1.37.0. The Xdebug traces section and the new-version notice need both. The UI also brings a keyboard shortcuts dialog (press ?).

Added

  • Xdebug function traces. Send a trace recorded by Xdebug (xdebug.trace_format=1, plain or .gz) to Buggregator and browse it without loading it whole: totals, the slowest calls, functions by self time, the call tree level by level, and search by function or file. Upload it over HTTP:
    curl -H 'X-Buggregator-Event: xdebug-trace' -H 'X-Buggregator-Trace-Url: GET /users' \
         --data-binary @trace.xt.gz http://127.0.0.1:8000/
    
    Uploads up to 100 MB (xdebug_trace.max_upload). Traces over 256 MB unpacked (max_size) are cut there and marked as cut. The 20 newest traces are kept (keep); pinned ones stay. Other trace formats are refused with a hint to set trace_format=1. Trace files live under storage.path/xdebug-traces in filesystem mode, otherwise in a temp folder that is removed on exit; folders left by a crashed server are removed at the next start. (#407, #410, #412, closes #288)
  • MCP tools for traces. xdebug_traces, xdebug_trace_summary, xdebug_trace_calls (one level of the call tree, or a search) and xdebug_trace_call let an AI agent find what made a request slow. They need mcp.enabled. (#411)
  • New-version check. GET /api/settings has a new update field: the running version, the latest release and a link to it. It is null when the check is off. update_check.interval (UPDATE_CHECK_INTERVAL, default 12h, at least 1h). (#406)

Fixed

  • Attachments are deleted with their events. Deleting an event, clearing a type or a project, or deleting over MCP left SMTP and HTTP dump attachments behind: in memory until a restart, on disk for good with filesystem storage. Now the files and their database rows go too. (#408, #409)
  • Xdebug traces hide when they cannot work. If the server cannot create the temp folder for traces (in-memory mode), the module stays off and the UI no longer shows «Xdebug traces». (#413)

Upgrade

Replace the binary or pull the new image. There are no new database migrations. Bundled UI: frontend 1.37.0.

Thanks to @XrestRus for the Xdebug trace request and @stas-bool for the VarDumper editor link idea (in frontend 1.37.0).

Full Changelog: v2.7.0...v2.8.0

Don't miss a new server release

NewReleases is sending notifications on new releases.