react-native-community/discussions-and-proposals

[0.73] Experimental New Debugger — Known Issues and Feedback

huntie opened this issue · 0 comments

Introduction

In React Native 0.73, we're shipping a Technical Preview of our experimental new debugger experience (opt-in via npx react-native start --experimental-debugger).

This comes with:

  • A preview of our new debugger frontend.
  • A new j to debug shortcut in React Native CLI.
  • Some improvements to Hermes (providing the debugger backend) in 0.73.
  • (Foundational work that moves the debugger launch flow into the React Native repo, enabling us to iterate faster.)

image

The new debugger is experimental and does not represent the desired stable launch of this experience in future — which we will be holding to a higher quality bar than the existing debugging offerings.

What we haven't improved, yet!

The new debugger does not yet come with some fundamental improvements we are making to our backend debugging stack. Among other things, these future improvements aim to:

  • Improve debugger connection reliability.
  • Enable breakpoint persistence (and generally fix the behaviour of breakpoints).
  • Enable a correct debugger lifecycle across app reloads.
    • Specifically, introducing a React Native CDP server that maintains a debugging session for the native app instance, rather than for the currently executing JS bundle.
  • Enable us to build new debugging capabilities on top of this stack in future.

Discussion points

⬆️ So, as of 0.73, the new debugger shares some of the reliability issues and traps with the current debugging architecture(!). We want to use this thread to:

  • Proactively highlight the biggest pain points we know of (and have plans to address).
  • Take feedback from users on any issues and missing capabilities when using the new debugger frontend.