You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
And, due to the computed field, this would yield 'actual edit #3'
right = true
wrong = false
Further modified via the event reacting code into 'actual edit #4'
right = false
wrong = false
And again, due to the computed field, this would yield 'actual edit #5'
right = false
wrong = true
Which is in fact the same as 'actual edit #1'. We have created an infinite loop in the fixed-point calculation!
To prevent such 'unstable edits', we detect cycles of edits, and error out, hence rejecting the proposed edit as being invalid. (Implementation note: this must be done by comparing worksheets', not edits, since two different edits can yield the same worksheet transformation.)
The text was updated successfully, but these errors were encountered:
(Copied from README.)
Assume we have the worksheet
And we propose the edit
ws.right = false
. Due to the computed field, this would yield 'actual edit #1'Now, assume that we have edit reacting code which flips these fields around
We would then yield the 'actual edit #2'
And, due to the computed field, this would yield 'actual edit #3'
Further modified via the event reacting code into 'actual edit #4'
And again, due to the computed field, this would yield 'actual edit #5'
Which is in fact the same as 'actual edit #1'. We have created an infinite loop in the fixed-point calculation!
To prevent such 'unstable edits', we detect cycles of edits, and error out, hence rejecting the proposed edit as being invalid. (Implementation note: this must be done by comparing worksheets', not edits, since two different edits can yield the same worksheet transformation.)
The text was updated successfully, but these errors were encountered: