Xdebug Update: June 2019
This is another of the monthly update reports in which I explain what happened with Xdebug development in this past month. It will be published on the first Tuesday after the 5th of each month. Patreon supporters will get it earlier, on the first of each month. You can become a patron here to support my work on Xdebug. More supporters, means that I can dedicate more of my time to improving Xdebug.
In June, I worked on Xdebug for 20 hours, a little bit less than normal as I spend some time on holidays and conferences. I worked on the following things:
2.8.0alpha1 Release
I made the 2.8.0alpha1 release just when the month was running out.
This alpha release adds preliminary support for PHP 7.4, but also addresses some other issues. It also includes a major overhaul on how I do SKIPIF sections in the phpt tests that I used to test Xdebug.
Instead of having complicated sections such as:
<?php if (!version_compare(phpversion(), "7.0.12", '>')) echo "skip > PHP 7.0.12, < PHP 7.1 needed\n"; ?>
<?php if (!version_compare(phpversion(), "7.1", '<')) echo "skip > PHP 7.0.12, < PHP 7.1 needed\n"; ?>
<?php if (!extension_loaded('zend opcache')) echo "skip opcache required\n"; ?>
I now have:
check_reqs('PHP > 7.0.12,< 7.1; opcache');
This makes it a lot easier to maintain Xdebug's tests among multiple PHP versions. After all, I still support PHP versions since PHP 7.0—although I am considering dropping support for PHP 7.0 and only support PHP 7.1 and up.
This release also features the Resolving Breakpoints feature, which the folks at Jetbrains have sponsored. After their last review, I made a few modifications to run the resolver for newly set breakpoints as well. I am intending to create a separate blog post on what this new feature solves.
I also found an already existing bug with return breakpoints, where a return breakpoint would not cause a break immediately. A fix for this is also in the alpha1 release.
32-bit Support
I am considering to stop creating Windows binaries for 32-bit installations of PHP. It duplicates the amount of time that it takes to create Windows binaries, slowing down, testing on CI, and the creation of releases as it takes ~2 hours to build them all on AppVeyor.
The reasoning behind this is that very few people still use 32-bit Windows installations, and I am not sure it's still worth spending time on it. I ran a little Twitter poll about this.
Although even if I would drop 32-bit binary creations, users that still need these binaries can get them on the PECL website. PECL builds extensions for all the supported PHP versions, such as here for Xdebug 2.8.0alpha1
Podcast
I have been continuing with the PHP Internals News podcast. In this weekly podcast, I discuss in 15-30 minutes, proposed new features to the PHP language with fellow PHP internals developers. It is available on Spotify and iTunes, and through an RSS Feed. Let me know if you are a listener!
Life Line
I walked 7.4km in 1h26m49s
Good job antivaxer shit heads:
BBC News: UK loses measles elimination status
I walked 8.2km in 1h24m04s
We're about to celebrate the most famous Scottish poet!
I hiked 8.3km in 1h30m41s
Created a waste_basket
Created 2 waste_baskets
Created a bench
Created 4 benches
Created a waste_basket and a bench; Updated a toilet
Created a bench
Created an information
Updated a restaurant
Created 2 grit_bins
Created 2 waste_baskets
I hiked 20.5km in 3h52m17s
Updated a post_box
I walked 3.9km in 38m24s
I walked 5.0km in 47m13s
Merge branch 'xdebug_3_5'
Merged pull request #1060
Style fixes, and make log message type and text consistent
Fixed issue #2395: Change Windows Named Pipe control socket implement…
I walked 8.2km in 1h26m27s



Shortlink
This article has a short URL available: https://drck.me/xdebug-19jun-evm