Better Debugging for tek 25

This commit is contained in:
Derick Rethans
2025-05-14 10:15:30 +01:00
parent caec37002f
commit c53cd3c9a8
6 changed files with 119 additions and 6 deletions

View File

@@ -5,12 +5,15 @@
<blurb class="centre">Xdebug now finds the closest breakpoint line</blurb>
<div effect="fade-in">
<break lines="2"/>
<blurb class="centre">Now also in property hooks</blurb>
</div>
<div effect="fade-in">
<blurb class="big-centre">DEMO</blurb>
</div>
<div effect="fade-in">
<break lines="5"/>
<break lines="3"/>
<blurb class="centre">How does this work?</blurb>
</div>

View File

@@ -0,0 +1,9 @@
<slide>
<break lines="5"/>
<blurb class="big-centre">Exceptions?</blurb>
<div effect="fade-in">
<break lines="5"/>
<blurb class="big-centre">DEMO</blurb>
</div>
</slide>

View File

@@ -11,7 +11,7 @@
<list>
<bullet>Linux Only</bullet>
<bullet>Local System Only</bullet>
<bullet>Windows Support in Progress</bullet>
<bullet>Experimental Windows Support for Xdebug 3.5</bullet>
<bullet>IDE Support under Discussion</bullet>
</list>
</div>

View File

@@ -1,10 +1,15 @@
<slide>
<title>Xdebug 3.4: Native Path Mapping</title>
<title>Xdebug 3.5: Native Path Mapping</title>
<break lines="6"/>
<break lines="3"/>
<blurb class="big-centre">Using project specific file to map directories, files, and line ranges</blurb>
<break lines="6"/>
<break lines="2"/>
<blurb class="centre">%https://xdebug.org/funding/001-native-path-mapping%</blurb>
<div effect="fade-in">
<break lines="5"/>
<blurb class="big-centre">DEMO</blurb>
</div>
</slide>

View File

@@ -2,6 +2,9 @@
<break lines="5"/>
<blurb class="big-centre">%xdebug_notify( mixed $data )%</blurb>
<blurb class="centre">Send data over debugging protocol</blurb>
<div class="fade-in">
<blurb class="center">New in Xdebug 3.4.2: Multiple Levels of Data</blurb>
</div>
<div effect="fade-in">
<break lines="5"/>

93
xdebug-tek25.xml Normal file
View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<presentation css="derick.css">
<topic>Debugging</topic>
<title>Better Debugging with Xdebug</title>
<event>PHP Tek 2025</event>
<location>Rosemont, IL, USA</location>
<date>May 22nd, 2025</date>
<speaker>Derick Rethans</speaker>
<email>derick@xdebug.org</email>
<mastodon>@derickr@phpc.social</mastodon>
<twitter>derickr</twitter>
<url>https://derickrethans.nl/talks/xdebug-tek25</url>
<joindin>https://xdebug.org</joindin>
<slide>slides/xdebug/title.xml</slide>
<slide>slides/mongodb/me.xml</slide>
Code reorganisation
Modes
- only do what is needed
Reduce Configuration Options
Code Improvements (algorithms, memory, etc)
<!--<s lide>slides/xdebug/code-reorgnisation.xml</slide>-->
<!--< slide>slides/xdebug/modes.xml</slide>-->
<!--<s lide>slides/xdebug/config-settings-3.xml</slide>-->
<!--<s lide>slides/xdebug/config-settings-3b.xml</slide>-->
<!--<s lide>slides/xdebug/xdebug-3-speedup-1.xml</slide>-->
- xdebug_info() (demo, VS Code or PhpStorm)
- an API through xdebug_info() for mode detection (VS Code or PhpStorm)
'mode'
'extension-flags'
<slide>slides/xdebug/xdebug_info.xml</slide>
<!-- <s lide>slides/xdebug/xdebug_info-2.xml</slide> -->
- xdebug_notify() (demo, VS Code)
<slide>slides/xdebug/xdebug_notify.xml</slide>
- file_link_format (demo, PhpStorm)
<!-- <s lide>slides/xdebug/xdebug_file_link_format.xml</slide>-->
-> ticket
<!--<s lide>slides/xdebug/diagnostic-log.xml</slide> (Also console output) -->
<slide>slides/xdebug/xdebug-recent-new-features.xml</slide>
Step debugging improvements
Step debugging improvements
<slide>slides/xdebug/breakpoint_resolving.xml</slide>
- breakpoint resolving (demo, PhpStorm)
<slide>slides/xdebug/return_value.xml</slide>
- return value debugging (demo, VS Code or PhpStorm)
<slide>slides/xdebug/exception_value.xml</slide>
- exception value as pseudo-variable (VS Code)
<!-- <s lide>slides/xdebug/breakpoint_not_resolving.xml</slide> -->
- Xdebug will now also log a warning if an IDE attempts to set a breakpoint on
a file that does not exist on the file system. (demo, PhpStorm)
<slide>slides/xdebug/xdebug_connect_to_client.xml</slide>
- xdebug_connect_to_client() (demo, PhpStorm)
<!-- <s lide>slides/xdebug/xdebug_pseudo_hosts.xml</slide> -->
- xdebug://gateway and xdebug://nameserver (explain)
<slide>slides/xdebug/xdebug-recent-new-features.xml</slide>
<slide>slides/xdebug/xdebug-control-socket.xml</slide>
<slide>slides/xdebug/xdebug-future-features.xml</slide>
<slide>slides/xdebug/xdebug-native-path-mapping.xml</slide>
<slide>slides/xdebug/restaurant.xml</slide>
<slide>slides/xdebug/xdebug-cloud-announcement.xml</slide>
<slide>slides/xdebug/donate.xml</slide>
<slide>slides/xdebug/business-support.xml</slide>
<slide>slides/xdebug/transparency.xml</slide>
<!-- <s lide>slides/xdebug/phpinternalsnews.xml</slide> -->
<slide>slides/mongodb/questions.xml</slide>
<slide>slides/xdebug/resources.xml</slide>
</presentation>