5c596c4 made any labels called "clear" in the serialization break. This can be seen on HEAD of mfiddle, when you expand the console to reveal the Clear button.
I believe it's because of this
[gh-1084] Serializer switch to Object.create(null)
Collections added specific properties to Object.prototype that made the (de)serializer brake, a change to Object.create(null) fixes all those issues.
Can we close this one?
Afraid not. I'm really sorry, I should have checked this issue was solved by your PR before merging.
The instances object used here: https://github.com/montagejs/montage/blob/master/core/deserializer.js#L1106 and then throughout the deserializer actually comes from here: https://github.com/montagejs/montage/blob/master/ui/component.js#L946 and so clear is still on the prototype.
This case is a pretty simple fix, but I'm now worried there are going to be more gotchas later...
Well spot, I think I'll just copy the properties over then, shouldn't trust the input.
You could just set __proto__ to null :) And perhaps this should be done for any public method that accepts instances
yeah, but that wouldn't work on IE :(
Still seems to be broken on montage master. See the Clear button on the console in mfiddle
Will this be solved by mousse?
I believe this problem won't exist anymore after FRB because we'll migrate from Object.prototype.clear to Object.clear, however, I'll make sure there's a test for that.
Any updates on this? (Feel free to close, I'm just spending some time trying to clear up old bugs)
I believe it is because the latest mfiddle shows the clear button styled,
however it's not responding to click, not sure if it's related. I'm
planning to check it out tomorrow as I want to publish it too.
Same issue but in another part of the code, it is fixed now!