v0.3.2: Windows Compatibility & JSON Output Improvements
Fixed
-
Standalone Execution Support: Fixed MCP server to work when invoked from any working directory (#27)
- Replaced relative paths (
./bin/*) with absolute paths usingdirname(__DIR__) - Enables Claude Code to invoke xdebug-mcp tools regardless of current working directory
- All MCP tools (x-trace, x-debug, x-profile, x-coverage) now work standalone
- Replaced relative paths (
-
Profiler Filename Placeholder: Fixed cachegrind output filename to display actual process ID (#28)
- Changed placeholder from
%s(script name) to%p(process ID) in profiler_output_name - Output now shows
/tmp/cachegrind.out.12345instead of/tmp/cachegrind.out.%s - Makes profile files easy to identify and use with analysis tools
- Changed placeholder from
-
JSON Output Parsing: Fixed
xdebug-profile --jsonto suppress script output for clean JSON (#28)- Script stdout/stderr now automatically suppressed in JSON mode
- Enables clean piping to jq:
... | jq '.["🎯 bottleneck_functions"]' - Human-readable mode unchanged (still shows script output)
-
Windows Compatibility: Cross-platform output suppression in JSON mode
- Detect platform using
PHP_OS_FAMILY - Use 'NUL' on Windows, '/dev/null' on Unix for output redirection
- Fixes
xdebug-profile --jsonto work on Windows systems
- Detect platform using
Quality Assurance
- All PHPUnit tests passing (97 tests, 270 assertions)
- Coding standards compliance verified