DBGp

From Wikipedia, the free encyclopedia

Common DeBugGer Protocol as used by Xdebug[1] and potentially other implementations. DBGp is a simple protocol for use with language tools and engines for the purpose of debugging applications.[2] The protocol provides a means of communication between a debugger engine (scripting engine, Virtual Machine, etc.) and a debugger IDE.

Criticisms

DBGp has not received widespread adoption as a server protocol. Most implementations are client-side so that IDEs may be compatible specifically with Xdebug, which remains popular.

Criticisms have included:[3][4]

  • Performance (DBGp is a text-mode protocol)
  • Security (DBGp has a complex connection mechanism that could lead to buggy vulnerable implementations)
  • Generality (DBGp is designed to be compatible with multiple programming languages rather than being optimized for PHP)

A primary author of the DBGp specification has defended the design.[5]

References

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content.Rethans, Derick (10 March 2022). "Main contributor to DBGp". github.
  2. ^ Page Module:Citation/CS1/styles.css has no content."Xdebug: Documentation for DBGp". Xdebug.
  3. ^ Page Module:Citation/CS1/styles.css has no content."Support DBGP protocol for easy integration with IDEs and tools · Issue #105 · krakjoe/phpdbg". GitHub. Retrieved 2016-09-25.[permanent dead link]
  4. ^ Page Module:Citation/CS1/styles.css has no content."Guy Harpaz Blog: PHP IDE Debug Protocol". guyharpaz.blogspot.hu. Retrieved 2016-09-25.
  5. ^ Page Module:Citation/CS1/styles.css has no content.Rethans, Derick. "Debugging Protocol Shoot-out — Derick Rethans". derickrethans.nl. Retrieved 2016-09-25.