Repository navigation
Releases: juslintek/fast-xdebug
Release list
fast-xdebug 0.4.0 — easy install + smart auto-config
Focus: make it headache-free to install and configure.
Install everywhere — PIE (prefers a prebuilt binary, falls back to source), prebuilt Linux .so attached to this release (PHP 8.2-8.5, NTS/ZTS), a zero-config install.sh, manual source build, or a PECL .tgz. See the README install matrix. (Prebuilt binaries are attached by the release-binaries CI workflow shortly after this tag.)
Smart auto-config (heuristic, opt-in) — xdebug.mode=auto resolves coverage/profile from environment signals (test runner, XDEBUG_* env); explicit modes always win. fast_xdebug_recommended_settings() advises settings from memory_limit/CPU/opcache; fast_xdebug_resolved_mode() shows what auto chose.
Automatic memory guard — path-enumeration cap scales with memory_limit and is skipped above 85% live usage (branches + lines stay intact), so large suites never OOM. Disable with fast_xdebug.memory_guard=0.
Validated: 12/12 tests on PHP 8.2-8.5, valgrind-clean, php-code-coverage Cobertura unchanged. Step debugging still not implemented (documented).
fast-xdebug 0.3.0 — saturation fast-path
Performance: a saturation fast-path short-circuits the per-opcode handler once an op_array is fully covered. Line coverage on the benchmark is ~1.9x faster than 0.2.0 (0.031s vs 0.058s) — now below pcov and ~4.8x faster than Xdebug — while still doing branch/path that pcov can't. Adds opt-in ./configure --enable-fast-xdebug-native (-O3 -march=native; default build stays portable). Line output byte-identical to pcov/Xdebug; valgrind-clean; 9/9 tests on PHP 8.2-8.5.
fast-xdebug 0.2.0 — coverage + profiler
Adds a Cachegrind profiler (~5x faster than Xdebug's profiler) via zend_observer, alongside line/branch/path coverage. Step debugging (DBGp) is specified in docs/debugger-spec.md but not yet implemented. Install: pie install juslintek/fast-xdebug, pecl install (from source), or build from source. PHP 8.2-8.5, NTS/ZTS.
fast-xdebug 0.1.0
Alpha: Xdebug-API-compatible line/branch/path code coverage, ~15x faster branch coverage than Xdebug. Coverage only in this release. Install with pecl (source tarball), PIE (pie install juslintek/fast-xdebug), or from source.