This gist describes a challenge I've encountered while maintaining the React DevTools browser extension, and briefly explores one possible way to address that challenge. I would be happy to talk more in depth about this topic with anyone from Chrome/Firefox/Edge who would be interested in exploring.
The React DevTools browser extension supports all versions of react-dom
released after 16.0.0-alpha
(2017). We do this because developers often switch between projects built with different versions of React, and installing/enabling multiple versions of the extensions would be cumbersome.
This has a cost though: It adds a lot of complexity to the extension.
The implementation details of a library change frequently. Sometimes they change in a [straightforward way](https://github.com/facebook/react/blob/57768ef90bdb0110c7b9266185a8f6446934b331/packages/react-devtools-shared/src