kolodny/jsan

Circular dependency was not detected

Closed this issue · 6 comments

cvle commented

We have a circular dependency but jsan doesn't seem to detect it:

$.users[32].pm.users[0].pm.users[0].pm.users[0].pm.users[0].pm.users...

until we have:
screen shot 2017-03-09 at 14 21 02

We are using https://github.com/zalmoxisus/redux-devtools-extension.

I even made a equality check console to see if we did sth wrong:

users[32].pm.users[0] === users[32].pm.users[0].pm.users[0]
true

redux-devtools-extension version: 2.14.1
jsan version: 3.1.5

I guess it's because every reference of that map is treated individually. See #12 (comment).

I'll try to fix it. If you could share a test case, it would be much appreciated.

cvle commented

We just decided to remove all circular references from our store, so it won't affect us. I keep this issue open for others who might get bitten by it.

Some additional info in referenced issue (above), hope it will help.

I published v3.1.10 which should catch these errors from now on. Let me know if that works.

Should be fixed now, feel free to reopen if the problem still exists

@kolodny Unsure if this is the root cause, but given it was referenced last time, wanted to point this out here: zalmoxisus/redux-devtools-extension#649

My guess is that the react ref contains a circular reference to itself somewhere that is triggering this.