Skip to content

fix: restore xdebug_execute_ex#57

Merged
carlos-granados merged 1 commit into
php-debugger:mainfrom
carlos-granados:fix/restore-execute-ex
May 3, 2026
Merged

fix: restore xdebug_execute_ex#57
carlos-granados merged 1 commit into
php-debugger:mainfrom
carlos-granados:fix/restore-execute-ex

Conversation

@carlos-granados

@carlos-granados carlos-granados commented Apr 16, 2026

Copy link
Copy Markdown
Collaborator

As part of the optimization of the debugger we had removed the xdebug_execute_ex function which is called for each php function. Unfortunately, this cannot be removed because this is needed for "include", "require" and "eval" as these are not covered by the observer api. This PR adds this function back. This will only be activated if the debugger is connected, so that the small performance penalty is not felt if it is not connected.

See this performance run which confirms that performance is not affected if the debugger does not connect:
https://github.com/php-debugger/php-debugger/actions/runs/24549308291

This fixes one of the remaining XFAIL tests, which was an actual bug

@carlos-granados carlos-granados added performance-check Add this label to run the performance CI workflow and removed performance-check Add this label to run the performance CI workflow labels Apr 16, 2026
@carlos-granados carlos-granados force-pushed the fix/restore-execute-ex branch from 32304e6 to aebe0e7 Compare April 16, 2026 21:57
@carlos-granados carlos-granados added performance-check Add this label to run the performance CI workflow and removed performance-check Add this label to run the performance CI workflow labels Apr 16, 2026
@carlos-granados carlos-granados force-pushed the fix/restore-execute-ex branch from a366c95 to d01ed38 Compare April 17, 2026 05:26
@carlos-granados carlos-granados added performance-check Add this label to run the performance CI workflow and removed performance-check Add this label to run the performance CI workflow labels Apr 17, 2026
@carlos-granados carlos-granados force-pushed the fix/restore-execute-ex branch from d01ed38 to 1019dd2 Compare April 17, 2026 05:36
@carlos-granados carlos-granados marked this pull request as ready for review April 17, 2026 05:38
@pronskiy pronskiy added performance-check Add this label to run the performance CI workflow and removed performance-check Add this label to run the performance CI workflow labels Apr 19, 2026
@carlos-granados carlos-granados force-pushed the fix/restore-execute-ex branch from 1019dd2 to 78c51d2 Compare April 19, 2026 19:36
@carlos-granados carlos-granados added performance-check Add this label to run the performance CI workflow and removed performance-check Add this label to run the performance CI workflow labels Apr 20, 2026
@carlos-granados carlos-granados force-pushed the fix/restore-execute-ex branch from 78c51d2 to 1e2f141 Compare April 22, 2026 16:19
@pronskiy

pronskiy commented May 1, 2026

Copy link
Copy Markdown
Member

Makes sense, altho I'm wondering if can drop eval support and get some benefits?

@carlos-granados

Copy link
Copy Markdown
Collaborator Author

Makes sense, altho I'm wondering if can drop eval support and get some benefits?

Given that this is not affecting performance when we are not connected, which is our main goal, I would say that we should go ahead with this. Then I can take a deeper look when I work on more optimizations for the case when you are connected to the debugging client

@carlos-granados

Copy link
Copy Markdown
Collaborator Author

@pronskiy do you think we could merge this one? I would like to update this other PR #65 with this updated code

@pronskiy

pronskiy commented May 3, 2026

Copy link
Copy Markdown
Member

Okay, let's goo 👍

@carlos-granados carlos-granados merged commit 45d0cb3 into php-debugger:main May 3, 2026
14 checks passed
@carlos-granados carlos-granados deleted the fix/restore-execute-ex branch May 3, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

performance-check Add this label to run the performance CI workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants