Xdebug Update: May 2022
In this monthly update I explain what happened with Xdebug development in this past month. These are normally published on the first Tuesday on or after the 5th of each month.
Patreon and GitHub supporters will get it earlier, around the first of each month.
You can become a patron or support me through GitHub Sponsors. I am currently 46% towards my $2,500 per month goal. If you are leading a team or company, then it is also possible to support Xdebug through a subscription.
In May, I spend 25 hours on Xdebug, with 27 hours funded.
Development
I continued my exploration of different set-ups that developers use, and have now merged the branch that adds support for the "pseudo-hosts" xdebug://gateway and xdebug://nameserver, which can be used with the xdebug.client_host setting instead of, and in addition to the Docker specific host.docker.internal. This pseudo-host automatically evaluates to the network gateway address, or name server as defined in /etc/resolv.conf, in the container, which will then allow Xdebug to connect to an IDE on the host machine.
I have not figured out how to do it will all different set-ups, so if you have extra information, or if I am still missing set-ups, feel free to comment on the Google Doc.
In the more complicated set-ups, it would likely be easier to use Xdebug Cloud as it has none of these networking complications.
The other big feature that I have worked on is the introduction of the capture of return values while debugging. This feature allows you to step into the "return value from function" phase, where PHP returns a value to the caller function. In this step, there will only be one variable available, which is the return value of that function.
Right now IDEs will have to opt into this new feature, with PhpStorm and the VS Code Plug-in teams confirming that they will make changes for this.
In this GIF you can see how this is useful with fluent interfaces:
Course
I have now recorded the first lesson of the course, and I am editing it with the plan to release this in the next few weeks. It will take a little time, as I need to get into the flow of editing and producing them; and of course, a new web site needs to be constructed as well. Stay tuned!
For further lessons I have started to draft outlines, and they are in different states of completion.
If you want to make sure that the course covers specific tasks that you find hard to do, or what you would like explained, please drop me an email, or leave a comment.
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.
If you want to be kept up to date with Xdebug Cloud, please sign up to the mailinglist, which I will use to send out an update not more than once a month.
Xdebug Videos
I have published one new video this month:
You can find all previous videos on my YouTube channel.
Business Supporter Scheme and Funding
In May, no new business supporters signed up.
If you, or your company, would also like to support Xdebug, head over to the support page!
Besides business support, I also maintain a Patreon page and a profile on GitHub sponsors.
Life Line
Merged pull request #1029
Reflow some comments
Add comments, add end of file newlines, fix php 8.5 compilation
Benchmark Xdebug performance
Merged pull request #1051
PHP 8.6: printf() is now optimised out if it only uses %s and %d (and…
PHP 8.6: The object IDs of objects changed in tests
PHP 8.6: ZSTR_INIT_LITERAL() no longer takes non-literals, so use zen…
PHP 8.6: WRONG_PARAM_COUNT has been removed in favour of zend_wrong_p…
PHP 8.6: zval_dtor() has been deprecated in favour of zval_ptr_dtor_n…
Update test for version constraints, as well as the error messages
I walked 7.4km in 1h38m15s
I just watched an interesting and lovely documentary on BBC Four: The Magical World of Moss.
It's on the iPlayer for another month:
https://www.bbc.co.uk/programmes/m001hqthI walked 8.2km in 1h26m34s
Merge branch 'xdebug_3_5'
Document to use PIE instead of PECL in the README
I walked 9.2km in 1h45m44s
I walked 10.1km in 1h40m23s
If we must show off a little…
In more info innocent times, the hat riots caused some spankings...
100 Years Ago Men and Boys Fought on the Streets of New York Over Wearing Straw Hats Past Summer | The New York Public Library
https://www.nypl.org/blog/2022/09/23/straw-hat-riots-nyc


Shortlink
This article has a short URL available: https://drck.me/xdebug-22may-h5k