Become a Patron!

My Amazon wishlist can be found here.

Life Line

Xdebug Update: June 2023

In this monthly update I explain what happened with Xdebug development in this past two months. 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 38% 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, I spend around 10 hours on Xdebug, with 24 hours funded. This is much less than I wanted, but instead I have been busy implementing features for PHP, and been on holiday. I expect to spend a significantly more amount of time on Xdebug in July.

Towards Xdebug 3.3

Now PHP 8.3 has its first alpha releases made, it is time to have a look at what needs to be added to Xdebug to support these new features. At the moment, it looks like there are no actual breaking changes in PHP, and Xdebug's master branch on GIT compiles and runs fine with PHP 8.3.

I will have to investigate the following features to see if I can add things to Xdebug to make these more useful:

  • Typed Class Constants — I could perhaps show these as part of the representation of classes during debugging.

  • Readonly Amendments — PHP's classes can now also be marked as readonly, and having this reflected in xdebug_var_dump() and the debugging protocol would likely be useful too.

In addition to PHP 8.3 specific features, I have also done some research into Xdebug-side path mappings. As part of this, I have drafted a document "Native Xdebug Path Mappings" to collect ideas and a draft specification. This would allow for applications written in PHP to define their own path, file, and line mappings, instead of relying solely on IDEs to implement this. This is a large amount of work, and hence I am intending to "Crowd Fund" this in a specific way. I have already received pledges for about half of the time.

If you have comments, suggestions, or if your company wants to help fund this feature, please reach out, or leave comments on the document.

Xdebug Videos

I have published no new videos in the last few months.

I have continued writing scripts for videos about Xdebug 3.2's features, and am also intending to make a video about "Running Xdebug in Production", and the updated "xdebug.client_discovery_header" feature (from Xdebug 3.1).

Let me know what you'd like to see!

You can find all previous videos on my YouTube channel.

Business Supporter Scheme and Funding

In the last few months, three new business supporters signed up:

I have also reached out to all other existing supporters to ask for a logo, to replace their text only mentions on the Xdebug home page.

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, a profile on GitHub sponsors, as well as an OpenCollective organisation.

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 mailinglist, which I will use to send out an update not more than once a month.

Shortlink

This article has a short URL available: https://drck.me/xdebug-23jun-hyg

Comments

No comments yet

Add Comment

Name:
Email:

Will not be posted. Please leave empty instead of filling in garbage though!
Comment:

Please follow the reStructured Text format. Do not use the comment form to report issues in software, use the relevant issue tracker. I will not answer them here.


All comments are moderated