[PRES] [presentations] master: PHP Day 2026 talk
[email protected] (Derick Rethans) Wed, 13 May 2026 09:19:38 +0000
| Newsgroups | php.pres |
|---|---|
| Message-ID | <[email protected]> |
Author: Derick Rethans (derickr) Date: 2026-05-13T10:19:31+01:00 Commit: https://github.com/php/presentations/commit/ff4e17eae6d86df0b5145dfe265d7bd2c9130cff Raw diff: https://github.com/php/presentations/commit/ff4e17eae6d86df0b5145dfe265d7bd2c9130cff.diff PHP Day 2026 talk Changed paths: A slides/xdebug/log-january-2026.png A slides/xdebug/xdebug-native-path-mapping-todo.xml A xdebug-phpday26.xml M slides/xdebug/transparency.xml Diff: diff --git a/slides/xdebug/log-january-2026.png b/slides/xdebug/log-january-2026.png new file mode 100644 index 00000000..e51a1279 Binary files /dev/null and b/slides/xdebug/log-january-2026.png differ diff --git a/slides/xdebug/transparency.xml b/slides/xdebug/transparency.xml index f8234fcd..4fca3135 100644 --- a/slides/xdebug/transparency.xml +++ b/slides/xdebug/transparency.xml @@ -2,7 +2,7 @@ <title>Transparency</title> <div effect="fade-out"> -<image filename="log-november-2025.png"/> +<image filename="log-january-2026.png"/> </div> <div effect="fade-in"> diff --git a/slides/xdebug/xdebug-native-path-mapping-todo.xml b/slides/xdebug/xdebug-native-path-mapping-todo.xml new file mode 100644 index 00000000..09c48fc7 --- /dev/null +++ b/slides/xdebug/xdebug-native-path-mapping-todo.xml @@ -0,0 +1,40 @@ +<slide> +<title>Xdebug 3.6: Native Path Mapping Improvements</title> + +<blurb>*🗹* Add %EOF% for marking range from number to end-of-file: </blurb> +<example inline="2"> +remote_prefix: /usr/local/www +local_prefix: /home/derick/project +/example.php:5-*EOF* = /example.php:8 +/aop-created.php:1-10 = /example.php:1 +/aop-created.php:11-*EOF* = /example.php:2-*EOF* +</example> + +<blurb>Add %xdebug_add_source_map_directory()% function to dynamically add directories where will read mapping files from:</blurb> +<example> +xdebug_add_source_map_directory(__DIR__ . '/cache/templates/source-map'); +</example> + +<blurb>Come up with a better way to describe file/line ranges:</blurb> +<div effect="fade-out"> +<example> +elephpant-list-1b6ba908.php:1-20 = elephpant-list.ezt:1 +elephpant-list-1b6ba908.php:21-22 = elephpant-list.ezt:2 +elephpant-list-1b6ba908.php:23 = elephpant-list.ezt:3 +elephpant-list-1b6ba908.php:24-25 = elephpant-list.ezt:4 +</example> +</div> + +<div effect="fade-in-out"> +<example> +elephpant-list-1b6ba908.php:1-20,21-22,23,24-25 = elephpant-list.ezt:1,2,3,4 +</example> +</div> + +<div effect="fade-in"> +<example inline="2"> +|777777|# elephpant-list-1b6ba908.php:1-20,21-22,23,24-25 = elephpant-list.ezt:1,2,3,4| + elephpant-list-1b6ba908.php:AJAAA@AA = elephpant-list.ezt:A\@A\@A\@A\@ +</example> +</div> +</slide> diff --git a/xdebug-phpday26.xml b/xdebug-phpday26.xml new file mode 100644 index 00000000..b89864cd --- /dev/null +++ b/xdebug-phpday26.xml @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="utf-8"?> +<presentation css="derick.css"> +<topic>Debugging</topic> +<title>Saving Time by Using a Debugger</title> +<event>PhpDay 2026</event> +<location>Verona, Italy</location> +<date>M1y 15th, 2026</date> +<speaker>Derick Rethans</speaker> +<email>[email protected]</email> +<mastodon>@[email protected]</mastodon> +<twitter>derickr</twitter> +<url>https://derickrethans.nl/talks/xdebug-phpday26</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> --> +<slide>slides/xdebug/xdebug-native-path-mapping.xml</slide> +<slide>slides/xdebug/xdebug-native-path-mapping-todo.xml</slide> + + +<slide>slides/xdebug/dbgp-breakpoint-types.xml</slide> + +<slide>slides/xdebug/exception_value.xml</slide> +- exception value as pseudo-variable (VS Code) + +<slide>slides/xdebug/xdebug-native-path-skipping.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) --> + +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) + +<!-- <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) + +<!-- <sl ide>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-control-socket.xml</slide> + +<slide>slides/xdebug/xdebug-future-features.xml</slide> + +<slide>slides/xdebug/restaurant.xml</slide> + +<slide>slides/xdebug/why-cloud-same-host-01.xml</slide> +<slide>slides/xdebug/why-cloud-same-host-02.xml</slide> + +<slide>slides/xdebug/why-cloud-same-network-01.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-02.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-03.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-04.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-multiple-01.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-multiple-02.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-multiple-03.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-multiple-04.xml</slide> +<slide>slides/xdebug/why-cloud-same-network-multiple-05.xml</slide> + +<slide>slides/xdebug/why-cloud-foreign-network-ssh-01.xml</slide> +<slide>slides/xdebug/why-cloud-foreign-network-ssh-02.xml</slide> +<slide>slides/xdebug/why-cloud-foreign-network-ssh-03.xml</slide> +<slide>slides/xdebug/why-cloud-foreign-network-ssh-04.xml</slide> +<slide>slides/xdebug/why-cloud-foreign-network-ssh-05.xml</slide> +<slide>slides/xdebug/why-cloud-foreign-network-ssh-06.xml</slide> + +<slide>slides/xdebug/why-cloud-cloud-01.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-02.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-03.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-04.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-05.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-06.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-08.xml</slide> +<slide>slides/xdebug/why-cloud-cloud-09.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>