I've been trying to figure this out for a bit, but perhaps someone a bit smarter than me already knows this one.
I'm using Backbone 1.0.0. I have a collection that is updated by a model's fetch method; in the model's parse stage one of the Ajax response attributes is actually a collection within, and I'm storing that out separately. I'm using the Backbone.Collection.set() method to update the collection; it comes in as an array of object literals.
I'm having some issues with the Backbone.Collection.set() method. Everytime, it seems to remove all the models in the collection and then adding them all back, even when none of them has changed. I can see all the events by binding to collection all.
How is Backbone determining whether or not a model is the same, changed, or removed or updated? I'm looking at the source but not really getting a sense of it. Is it looking for some kind of identifying attribute for each model?