Runtime errors caused by Chrome extensions

Status Update

I finally found potential way to fix this problem. This patch should make elm/virtual-dom work safely with extensions (still WIP though). It works as follows:

  1. Mark the DOM node as created_by_elm
  2. If unknown nodes have been inserted, skip them.
  3. If existing nodes have been removed, re-create them by old vdom.
  4. If existing nodes have been replaced with unknown nodes, re-create them by old vdom.

See more details here. Also, you can try it online.

Since the elm/virtual-dom is the core of all Elm apps, enough tests should be done. Now I’m writing more tests (example output), but it’s still not enough.

If you find any downside of this fix, please reply in this thread.
(More information about extensions is still welcome too!)

6 Likes