Xdebug Update: November 2025
In this update I explain what happened with Xdebug development in the last month.
In the last month, I spent around 28 hours on Xdebug, with 24 hours funded.
Xdebug 3.5
Most of this month I spent on making Xdebug 3.5 ready, to coincide with the release of PHP 8.5.
First there were a few bug reports from the alpha releases, and I found some issues with the new Native Path Mapping myself. I also fixed a crash bug, and released the last pre-release version: 3.5.0alpha3.
After that release, I worked with the author of the PHP Debug Adapter for Visual Studio Code to bring Xdebug's control sockets to Windows. This held up the release of Xdebug 3.5 a little, as we wanted to get this right.
With this, I also created documentation for the Xdebug Control tool, which can be used to talk to Xdebug to initiate debugging sessions, and to force pausing running code without setting a breakpoint beforehand. This is only available on Linux and Windows.
Documentation Upgrades
While working on the documentation for the Xdebug Control tool, I went down the rabbit hole, and revamped the layout of the documentation's front page too. Instead of a single list with bullet points, there are now sections, and some images depicting the different features.
I also added a section on Flame Graphs. This feature that I added in Xdebug 3.3 was not yet documented.
PIE and PECL
I also documented how to install Xdebug with PIE, the new installer for PHP extensions based around the packagist ecosystem.
PIE is replacing the legacy PECL tool and website. Installing Xdebug with PECL is no longer the preferred installation method. Using PIE is strongly recommended.
In the future, there will no longer be new versions of Xdebug uploaded to the PECL website. In the mean time, releases through PECL will be delayed.
Xdebug Videos
I have created no new videos in the last months.
All Xdebug videos can be watched on my channel.
If you have any suggestions, feel free to reach out to me on Mastodon or via email.
Business Supporter Scheme and Funding
On GitHub sponsors, I am currently 42% towards my $2,500 per month goal, which is set to allow continued maintenance of Xdebug.
If you are leading a team or company, then it is also possible to support Xdebug through a subscription.
In the last month, no new business supporters signed up.
Besides business support, I also maintain a Patreon page, a profile on GitHub sponsors, as well as an OpenCollective organisation.
If you want to contribute to specific projects, you can find those on the Projects page.
Xdebug Cloud
Xdebug Cloud is the Proxy As A Service platform to allow for debugging in more scenarios, where it is hard, or impossible, to have Xdebug make a connection to the IDE. It is continuing to operate as Beta release.
Packages start at £49/month, and I have recently introduced a package for larger companies. This has a larger initial set of tokens, and discounted extra tokens.
If you want to be kept up to date with Xdebug Cloud, please sign up to the mailing list, which I will use to send out an update not more than once a month.
Life Line
Created 6 benches, a main entrance, and a bicycle_parking; Updated 2 main entrances
Created 4 trees, a balancebeam, and 3 other objects; Updated 5 benches and 2 waste_baskets
Merge branch 'xdebug_3_5'
Merged pull request #1092
Use actual PID here, as we use that to be able to connect
Created 2 main entrances; Updated a vacant shop, a furniture shop, and a cafe; Confirmed an estate_agent office, a laundry shop, and 4 other objects
Merged pull request #1091
PHP 8.6: Fixed test expectation for 'debugInfo' name in error
Add 'strace' to run-xdebug-tests.php command
Oystercatcher Parent and Chick
Standing on the edge of a lake in the Arundel Wetlands.
#birds #birdPhotography #Birdsoffediverse #Photography #Nature #Wildlife
Updated 2 main entrances
Fixed tagging and bollard location
I hiked 8.7km in 4h4m28s
Updated a restaurant
Updated a restaurant
Updated a restaurant
I walked 5.5km in 56m26s
Created an entrance
I walked 5.7km in 1h20m50s
Updated a fitness_centre; Confirmed a charging_station
I walked 4.0km in 47m13s
I walked 1.1km in 9m32s
Also, whatnow‽
`GET /icons/blank.gif HTTP/1.1" 200 398 "https://downloads.php.net/~windows/pecl/releases/?utm_source=chatgpt.com`
WTF does that need an `utm_source` for?
I sometimes wish cache expiries could be fuzzy, like 900±15 seconds. Y'know, to prevent the thundering herd effect.
Created a chemist shop


Shortlink
This article has a short URL available: https://drck.me/xdebug-25oct-joe