PaulUithol/Backbone-relational — pull request #330 by shoe (2013-04-16 15:38:49+00:00)
Title: Failing test case where BBR drops a 'change' event.

This demonstrates that BBR is silently swallowing 'change' events in some scenarios.

This is caused by BBR deferral of change events and the delay of checking model.hasChanged() until after other, non-deferred events (which may reset changedAttributes) have been triggered. Fundamentally, Backbone docs say that hasChanged() will only be valid within the callbacks triggered by change events, but BBR is calling hasChanged() from outside those callbacks, so this shouldn't be expected to work correctly.