Become a Patron!

My Amazon wishlist can be found here.

Life Line

Contributing Advent 22: Documenting changes

Probably one of the easier things to contribute to an Open Source project when you don't really have much experience, or simply don't know the language well enoughβ€”or in Xdebug's case, PHP's internals, is documentation. In the past a few people, such as Wim Godden and Jarl Ostensen have already contributed some documentation fixes.

In the last few months I have added support for serialized "collect params", XDEBUG_TRACE_NAKED_FILENAME (issue #971), XDEBUG_STACK_NO_DESC (issue #1003), and the ability to halt on warning/notice (issue #1004). And neither of those are documented now. So this article is about adding the documentation of these new features.

Xdebug's documentation is part of the website, which has a project on GitHub. However, it's not in any standard format. Functions are documented in single files, such as here for xdebug_start_trace(), and in a rather rudimentary format that some other tools I have use to generate stuff as well. So a bit tricky, and this is something I'd like to improve, however it's rather easy to add to.

Configuration settings are all in one file and stored as an nested PHP array. I have now added a new supported value (5) for xdebug.collect_params which needs documenting too, which is as simple as adding a new line to it. Of course, I have also documented the changes to xdebug_print_function_stack() and the addition of xdebug.halt_level.

Xdebug's documentation is (I think pretty good), but if you have sugggestions I would be more than happy to get suggestions, or of course even better would be a pull request.


This article has a short URL available:


No comments yet

Add Comment


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

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