Fixed a bug that would still dispatch a SET event.
Removed an unnecessary action dispatch every time an attribute changed.
Better route interpolation: Added the ability for query object to assist in route generation. Passing in string or object as query will override existing properties in the record.
/* (Index route) /units/:unit_id/leads */
Lead.all({ unit_id: 123 }) /* /units/123/leads */
Lead.all({ unit_id: 123, foo: "bar" }) /* /units/123/leads?foo=bar */
Lead.all("?unit_id=123") /* /units/123/leads */
Lead.all("?unit_id=123&foo=bar") /* /units/123/leads?foo=bar */Better diffing of Arrays and Objects
Added more methods for Sugar.js
Fixed a bug that would always add updated members to the end of a collection, instead of updating them in the correct order.
Fixed a bug that would not generate the correct route for an index if INDEX was not specified on singleton-type models.
Fixed a bug that would resolve destroyed models instantly. Added the ability
to define an INDEX route override and permissable as part of Model-level
routes configuration.
Added more info on @FLUTE_REQUEST_INFO_* events like 404 status and body.
Fixed a bug that would prevent returning new records called with .create(),
no attributes.
Changed schema type Object to return empty object by default instead of null.
Added the ability to pass in URL parameters to .all and .find model
methods. Can be either a string or an object which is turned into a string.
Fixed a bug that would save no attributes on a new model because of diffing
Fixed a bug that diffed records before they had a chance to interpolate routes
Added a diffMode feature, enabled by default. This will only submit
changed/new attributes of a model. It can be switched off using the setAPI
method.
Started clearing Rails-style nested attributes in schema, so they don't persist across multiple requests.