Open nolanlawson opened 3 years ago
@nolanlawson this is a good find. Thank you!! I will try to see what the dep graph provides in order for the tool to treat the relation of WeakMap -> key as a weak reference. The tool calls into:
this.disconnectEdgesWithType('weak');
which supposes to treat this correctly but I guess that for WeakMap/WeakSet it is handled differently. Feel free to try and contribute, I will try to look into this in the next couple of days though.
First off, thank you for creating this tool! It works amazingly well, and solves many of the problems with working with heap snapshots that I mentioned in my blog post and this issue I opened on Chromium.
One issue I notice, though, is that when identifying the retainers for an object with a given ID, it doesn't properly take WeakMaps/WeakSets into account. For instance:
Thanks again for the tool! I would be excited to see it integrated into the Chrome DevTools themselves, and to improve the handling of WeakMaps/WeakSets. 🙂