Xdebug Log

September 2020

Time Funded
Time Spent
Day Type Description Hours
2
docs
Updating upgrading guide 1.00
3
xdebug3
PHP 8 support for match in tracing and code coverage 3.75
7
xdebug3
Checking out PHP 8/match patch for ASSIGN line; Fixed off-by-one error in cloud host generation (Xdebug, and dbgpClient) 4.25
8
xdebug3
Renaming remote_host and remote_port settings, adding support for XDEBUG_CONFIG for these new settings 4.25
8
docs
Update docs due to renamed settings; rename “remote” page to “step_debug” 1.75
9
xdebug3
Add deprecation warnings for renamed/removed settings; Issues with AppVeyor’s cache 3.00
9
docs
Update compatibility table 0.75
11
xdebug3
PHP 8 and fixing filename as zend_string changes; Fixed Azure pipelines ZTS tests; Profiler memory leaks 4.50
12
xdebug3
PHP 8 changes due to ASSIGN operator fixes; fixing filename as zend_string changes 4.75
13
xdebug3
Finalising changes due to script filename no longer be interned 2.50
16
xdebug3
Keepalive fixes for OSX, and adding log messages; Releasing 2.9.7; PHP 8 fixes due to error message changes 5.50
17
xdebug3
Change default port to 9003 (including docs) 1.50
21
xdebug3
PHP 8 test changes due to NOP being removed; Keepalive fix for FreeBSD; Fix logo on CLI 3.25
23
xdebug3
Only show open/close log when there is a message; #1781 (include “Xdebug” ins some error messages) 3.00
24
xdebug3
#1850 (Array syntax in output), #1837 (Associative variadics for PHP 8) 4.00
25
bug
#1851 (Paths and branches are not always covered with loops) 4.50
28
release
Release Xdebug 2.9.8 with keepalive and branch coverage fixes 2.00
29
talk
Xdebug 3 talk for PHP WVL 2.50
30
xdebug3
Rename xdebug.remote_connect_back and xdebug.remote_addr_header; PHP 8 test fixes due to argument renaming; keep alive conditional 4.00
30
docs
Document changes to remote connect back and header settings 0.50

For additional information, please see the monthly report.


August 2020

Time Funded
Time Spent
Day Type Description Hours
1
xdebug3
Reviewing profile PRS #618, #619, and #620; Making PR #621 to optimise the size of function_stack_entry 2.50
3
docs
Xdebug Cloud presentation 1.00
5
docs
Xdebug Cloud retake of video 1.25
6
xdebug3
clock_gettime/MONOTONIC is relative 2.50
6
ci
Azure Pipelines set-up for OSX 4.00
7
ci
Azure Pipelines set-up for OSX 3.00
7
xdebug3
PHP 8 compat, and refactoring collecting variables 6.00
8
xdebug3
PHP 8 compat, and refactoring collecting variables 2.00
10
xdebug3
Adding xdebug_info() 2.00
12
xdebug3
Extract logging into new mechanism 5.00
13
xdebug3
Diagnostics into xdebug_info() 5.00
14
xdebug3
Diagnostics into xdebug_info() 4.75
15
xdebug3
Extend logging into xdebug_info() with links to documentation; investigate #1830 5.25
16
docs
Rewriting “develop” docs 1.50
17
docs
Rewriting “develop” docs 1.50
17
xdebug3
Adding XDEBUG_MODE environment variable on stream; Issue #1834: Return type must be bool in overloaded set_time_limit 3.00
21
docs
Rewrite “develop” docs (and remove stack_trace, display, and basic pages) 3.00
22
xdebug3
variables names for internal functions in traces and stacktraces 3.50
23
xdebug3
variables names for internal functions in traces and stacktraces 2.00
24
xdebug3
#1836: variable names for internal function, #1810: Remove collect_vars and xdebug_get_declared_vars(), #1838: Remove collect_params setting 8.25
26
bug
Keepalive patch 0.75
27
talk
Preparing and giving Xdebug 3 talk for PHP UG Mannheim 4.00
28
docs
Adding documentation for errors through diagnostics log 5.00
29
bug
Keepalive patch 0.50

For additional information, please see the monthly report.


July 2020

Time Funded
Time Spent
Day Type Description Hours
1
xdebug3
Changing all filenames from char* to zend_string* 5.25
2
xdebug3
PHP 8 compat; #1811: Remove xdebug.collect_includes; #1812: Remove show_mem_delta; #1819: Remove overloaded_var_dump 7.00
3
xdebug3
#1819: Remove overloaded_var_dump 1.00
3
docs
PhpStorm web cast issues 1.50
5
xdebug3
Use zend_string for variable names 1.75
7
docs
Xdebug Cloud/Player/3 docs for Jetbrains 1.50
8
ci
PHP 8 on Windows/AppVeyor compatibility 1.00
8
xdebug3
dbgpProxy (check for SSL, and build with no-cloud) updates, and deployment automation 3.00
8
xdebug3
Issue #1818: Switch to using zend_string for variable names 2.00
9
xdebug3
Improving performance 4.50
10
xdebug3
Improving performance 4.75
13
xdebug3
Streaming Xdebug performance enhancements 2.00
14
xdebug3
Improving performance 1.00
15
xdebug3
Switch alloc-less string formatting for building xdebug_str's 6.50
16
xdebug3
Merging and testing allocation patch 0.50
16
xdebug3
xdebug_func_format to use a static buffer, PHP 8 compat 3.50
16
docs
Stream with Matt about setting up Xdebug 2.50
17
xdebug3
Reviewing PR #602: Increate profile time precision 1.50
19
xdebug3
Reviewing PR #602: Increate profile time precision 0.75
19
xdebug3
Reviewing PR #604: Profiler + fflush after every function end 0.50
20
xdebug3
Converting stack llist to vector 2.75
22
xdebug3
Converting stack llist to vector 2.50
23
xdebug3
Converting stack llist to vector; Use early return as often as possible 6.00
24
xdebug3
Reviewing “timezone” PR; finalising timing precision patch; merging early return patch, and fixes; review profiler flush PR 7.00
25
xdebug3
Profiling Xdebug, and the profiler specifically; Making profiles of Xdebug for benchmarking purposes 3.00
26
xdebug3
Removing two lines in php-code-coverage and making it a lot faster 3.00
27
xdebug3
Profiler improvements 5.00
28
xdebug3
Profiler improvements; Code coverage benchmark graph 2.00
29
xdebug3
Profiler improvements (issues #1825 and #1826); PR and issue #1824 review; better precision timing 4.00
30
xdebug3
Finalising PR for issue #1820 (more precise timing), and benchmarks 4.50
31
xdebug3
Benchmarks and profiling 5.00

For additional information, please see the monthly report.


June 2020

Time Funded
Time Spent
Day Type Description Hours
1
xdebug3
Fixed issue #1762: Introduce feature modes 2.00
4
xdebug3
Documentation for feature modes, start_up_request and related changs 6.00
5
xdebug3
Documentation for feature modes, start_up_request and related changs 2.00
5
xdebug3
Initial Xdebug 3 upgrade guide 3.50
6
bug
Issue #1794: Replace the filter's blacklist/whitelist with exclude/include 1.50
6
xdebug3
Issue #1792: Change start_with_request=always/never to start_with_request=yes/no 0.75
7
xdebug3
Issue #1793: Add xdebug.start_upon_error setting to cover the removed xdebug.remote_mode=jit feature 3.00
8
xdebug3
Issue #1793 and docs/upgrade guide; remove version info from Xdebug 3 docs; rewriting things 4.50
8
xdebug3
PHP 8: zend_error_cb API changes 0.75
10
xdebug3
Stubs, and updating documentation to have the right types (and syntax) 4.00
10
xdebug3
Removing PHP 7.2 (and earlier) support 2.00
10
ci
Debugging CI environment 0.75
11
ci
Fixing parallelization with CI environment 0.50
11
xdebug3
Removing PHP 7.2 (and earlier) support; and updating all the tests 5.00
12
xdebug3
Separating more code into the modules so that less works gets done when not needed 4.50
13
xdebug3
Separating more code into the modules so that less works gets done when not needed 5.00
14
xdebug3
Separating more code into the modules so that less works gets done when not needed 3.75
15
xdebug3
Hunting down bugs in xdebugCloud 2.00
17
xdebug3
Separating more code into the modules so that less works gets done when not needed 3.00
18
xdebug3
Separating more code into the modules so that less works gets done when not needed 5.00
19
xdebug3
Separating more code into the modules so that less works gets done when not needed 5.00
21
docs
Making graphic/animation to illustrate how Xdebug interacts with browser and IDE 3.00
22
xdebug3
Testing and merging Prs; Renaming “display” mode to “develop”; rearringing header capturing 3.00
23
docs
Stream with Matt about setting up Xdebug with Valet and VS Code 1.25
23
docs
Improving xdebug.remote_log documentation, adding tickets for documentation tasks 0.75
24
xdebug3
Issue #1801: Rename mode 'display' to mode 'develop', and split out from 'base' 5.75
25
xdebug3
Issue #1801: Rename mode 'display' to mode 'develop', and split out from 'base' 5.25
26
xdebug3
Issue #1801 / #1816: Using an Exception breakpoint leaks memory 5.50
28
xdebug3
Changing all filenames from char* to zend_string* 2.75
29
xdebug3
Changing all filenames from char* to zend_string* 3.50
29
xdebug3
Discussing Xdebug 3 and Xdebug Cloud with JetBrains 1.00

For additional information, please see the monthly report.


May 2020

Time Funded
Time Spent
Day Type Description Hours
1
xdebug3
Reorganise logger infrastructure in dbgpTools/xdebugCloud 1.50
2
xdebug3
Timeouts with cloud client 4.00
4
xdebug3
Handling interrupts and safely shutting down of binaries 5.00
11
xdebug3
Timeouts and network read/write IO errors checking 4.00
13
xdebug3
Supporting multiple connections through dbgpProxy/xdebugCloud combination 4.50
13
xdebug3
Handle MongoDB connection/query timeouts for xdebugCloud 0.75
14
bug
Triaging #1783/#1784 0.50
14
xdebug3
Issue #1762: Introduce feature modes 6.00
15
xdebug3
Issue #1762: Introduce feature modes 5.00
16
xdebug3
Issue #1762: Introduce feature modes 3.00
17
xdebug3
Issue #1762: Introduce feature modes 1.00
18
xdebug3
Issue #1762: Introduce feature modes 5.00
18
bug
Triaging #1784: Values inside the array are being treated as non-executable code. 0.75
20
xdebug3
Issue #1785: Replace xdebug.remote_mode and xdebug.auto_trace with generic 'start-upon-request' setting 5.00
21
xdebug3
Issue #1785: Replace xdebug.remote_mode and xdebug.auto_trace with generic 'start-upon-request' setting 3.00
22
xdebug3
Issue #1791: Replace individual trigger mechanisms with global one 6.00
26
xdebug3
Issue #1791: Replace individual trigger mechanisms with global one 3.50
27
bug
Triaging, fixing, and testing fix for bug #1790: Segfault in var_dump() or while debugging with protobuf extension 4.00
27
bug
Bug #1787: Branch coverage data does not always follow the lines/functions format 1.50
27
bug
Triaging #1788: Branch coverage data does not always get returned in the lines/functions format (w/Opcache) 0.50
27
bug
Bug triage and bug system maintenance 0.75
29
release
Make Xdebug 2.9.6 release 1.00
29
xdebug3
Tests for Xdebug’s debug mode 2.00

For additional information, please see the monthly report.


April 2020

Time Funded
Time Spent
Day Type Description Hours
2
xdebug3
PHP 8: Warning format for “undefined variable” changed 0.75
2
support
Issue triage and StackOverflow 1.00
2
support
Trying to reproduce #1768: XDEBUG ignored by browser invocation (CentOS 8 - nginx 1.14.1 - PHP 7.4.4 - php-fpm (using socket) - xdebug 2.9.3) 3.00
2
xdebug3
Issue #1773: Replace all xdebug.*_output_dir settings with xdebug.output_dir 1.50
3
bug
Issue #1772: Crash with exception thrown inside a destructor 4.00
10
bug
Trying to reproduce #1775: Segfault when another extension compiles a PHP file during RINIT 3.00
11
bug
Trying to reproduce #1775: Segfault when another extension compiles a PHP file during RINIT (it was a duplicate) 5.00
12
xdebug3
Xdebug Cloud 4.50
13
xdebug3
Xdebug Cloud 3.50
13
bug
Triaging #1778: Running xdebug with php built in php server does not give always give trace file 0.50
15
xdebug3
Xdebug Cloud (the annoying “second request just hangs” issue) 4.00
16
bug
Triaging #1778: Running xdebug with php built in php server does not give always give trace file 0.50
16
bug
Fixing #1775: Segfault when another extension compiles a PHP file during RINIT 1.50
17
xdebug3
Allow for Xdebug to connect to Xdebug Cloud, add preliminary dbgpClient support 4.50
20
xdebug3
Migrating to go modules 5.00
21
xdebug3
Implementing logger interfaces for dbgpClient and dbgpProxy, and a database (mongoDB) logger for xdebugCloud 5.50
23
xdebug3
AccountInfo, only one session at a time 3.00
24
bug
Fixing #1779: Nested multi-line function showing 'Not executed' 1.50
25
release
Releasing 2.9.5 1.50
27
xdebug3
Fighting with go “nil != nil” idiosyncrazy, selection of right cloud host 5.00
28
xdebug3
Connection management 5.75
29
xdebug3
Detecting IDE connection closing for xdebugCloud 5.00
30
bug
Triaging older bug reports 0.75

For additional information, please see the monthly report.


March 2020

Time Funded
Time Spent
Day Type Description Hours
1
xdebug3
Removing debugclient from Xdebug source, and fixing DOM test due to changes in PHP 8 1.00
1
website
Fixed Xdebug’s websites config and redirection 0.50
2
docs
Document dbgpClient, dbgpProxy, and rewrite README 2.50
2
docs
Write monthly update report 1.50
2
bug
Checking out issue #1701 and blog post https://joshbutts.com/posts/patching-xdebug-docker-for-mac/ 0.50
2
xdebug3
Investigating and fixing timeout issues with dbgpProxy 1.50
3
support
StackOverflow 0.50
4
xdebug3
Added rendering of “eval” output to dbgpClient 0.25
4
bug
Investigating issue #1753: Xdebug behaviour depends on a number of empty lines in another file 1.50
5
bug
Investigating and fixing issue #1753: Xdebug behaviour depends on a number of empty lines in another file 4.00
5
support
StackOverflow and issue triaging 1.00
6
bug
Finalizing for for issue #1753: Xdebug behaviour depends on a number of empty lines in another file 1.00
6
website
Fixed issue #1746: Have wizard show both CLI and Apache php.ini paths 0.50
6
bug
Investigating issue #1754: Incorrect code coverage in nested ifs 0.50
6
bug
Investigating issue #1757: Pause-execution feature degrades performance 0.50
6
xdebug3
Reviewing PR #556: Only check the pid and restart the debugger when running pcntl_fork 0.75
7
bug
Fixing issue #1759: User registered opcode handlers should call ones already set by other extensions 4.00
8
bug
Fixing issue #1759: User registered opcode handlers should call ones already set by other extensions 2.00
9
bug
Fixing issue #1759: User registered opcode handlers should call ones already set by other extensions 5.00
9
docs
Document how to do opcode handlers in PHP for http://www.phpinternalsbook.com/php7/extensions_design/hooks.html#replacing-opcode-handlers 1.00
11
xdebug3
PHP 8 compat, due to changes in comparison function 1.00
11
bug
Investigating #1758: Xdebug changes error_get_last results inside a try catch 1.00
12
bug
Investigating #1760: xdebug appears the line that's not exist at all (PHP 5 only) 0.50
12
bug
Triaging all open issues 4.00
13
bug
Investigating #1758: Xdebug changes error_get_last results inside a try catch 1.00
13
release
Releasing 2.9.3 1.00
16
xdebug3
SSL for dbgpClient and Xdebug 4.00
18
bug
Checking out test failures for #389 with PHP 8 0.50
18
bug
Finding and debugging #1766: detach doesn’t detach 2.00
19
bug
Fixing #1766: detach doesn’t detach 3.00
19
bug
Trying to reproduce #1763: Crashes with Xdebug 2.9.3 2.50
20
bug
Fixing #1766: detach doesn’t detach 0.50
20
docs
Fixing #1764: Undocumented coverage line constants and branch analysis format 1.00
20
xdebug3
SSL for dbgpClient and Xdebug 1.00
21
bug
Triying to reproduce #1763: apache 2.4.41 crashes with PHP 7.3.15 and xdebug 2.9.3 3.50
22
bug
Reproduced #1763: Xdebug 2.9.3 crashes in ZTS mode 1.50
23
release
Releasing 2.9.4 1.50
23
bug
Triaging bugs 0.50
23
xdebug3
Implemented #1712: Add unit to profiler data types (and tidied up profiler tests) 1.00
23
xdebug3
SSL for dbgpProxy to dbgpClient connections 2.00
24
bug
Trying to reproduce #1770: fpm child process crashes when there is a php error 3.00
26
bug
Trying to reproduce #1770: fpm child process crashes when there is a php error 1.50
27
website
Fixed xdebug.org issue #83 (Git clone on Windows), and allow website to be served with “php -S” 0.75
27
xdebug3
Finalize SSL for dbgpProxy to dbgpClient connections 2.00
28
bug
Fixed #1756 with a workaround for a bug in PhpStorm’s end-of-debug-request handling 3.00
28
bug
Reviewed, tested, and merged fix for #1755: Overload pcntl_fork() to prevent performance degradation by calling xdebug_get_pid often 2.00

For additional information, please see the monthly report.


February 2020

Time Funded
Time Spent
Day Type Description Hours
1
ci
Fixing links, rename download files, and making sure AppVeyor generates the right file names 1.00
2
xdebug3
PHP 8: Making it compile again 3.00
2
xdebug3
PHP 8: Assert tests 1.00
2
xdebug3
PHP 8 compat 3.00
3
xdebug3
PHP 8 compat 7.00
4
xdebug3
Testing and merging PHP 8 compat patch 0.50
5
ci
Fixed CI runs with missing USER env (which meant a missing idekey element in some test runs) 0.50
5
xdebug3
Testing and merging PHP 8 compat patch 0.50
5
support
Triaging and answering StackOverflow questions, and IRC query about function traces 1.00
5
talk
Preparing Sunshine PHP Xdebug talk 4.00
8
talk
Giving Xdebug 3.0 talk and interviews 2.00
9
ci
Fix tests that rely on specific settings to have been set 1.00
9
xdebug3
Review and test PR #1743: Check ZEND_ACC_CLOSURE flag instead of string comparison 1.00
11
support
StackOverflow, and triaging bugs 2.00
14
xdebug3
Debug client unregistering with proxy 1.50
14
support
StackOverflow, and triaging bugs 1.00
15
xdebug3
Proxy’s client side – piping and copying 4.00
16
xdebug3
SSL support for dbgpProxy and dbgpClient 4.50
16
xdebug3
Researching SSL library for Xdebug side 1.00
17
xdebug3
Researching SSL library for Xdebug side 5.00
19
xdebug3
Researching and vendorizing BearSSL 3.00
22
xdebug3
Researching certificates 2.50
23
xdebug3
Reviewing and testing PR #477: Fixed issue #1016: Support for pause-execution 3.50
24
xdebug3
Testing PR #477, and adding async support to dbgpClient 5.00
25
support
StackOverflow 0.50
27