485 Commits

Author SHA1 Message Date
Casey Foster
74ae40ea72 Fix #1915 - parse ordering in update 2012-12-13 12:56:11 -08:00
Phil Freo
dc0bfe40d8 failing unit tests with 'defaults' 2012-12-13 14:54:44 -05:00
Jeremy Ashkenas
daf6892d22 Fixes #1912 -- Collection#fetch only parses once. 2012-12-13 13:54:59 -05:00
Jeremy Ashkenas
50be4423f1 Fixes #1913 -- updates Backbone defaults semantics to use _.defaults. 2012-12-13 13:23:13 -05:00
Tim Griesser
cc164563d6 fixing issue in patch not sending data 2012-12-12 19:42:21 -05:00
Jeremy Ashkenas
69b3c1382d optimize computeChanges() by removing a splice, and fix a bug with multiple falsy values being set for an attribute 2012-12-12 16:48:33 -05:00
Jeremy Ashkenas
6ea96c167d unset does *not* need to fire a change for undefined attributes 2012-12-12 16:29:29 -05:00
Jeremy Ashkenas
02a78ac9ae adding a test to ensure that changes are triggered in the appropriate order. 2012-12-12 16:24:22 -05:00
Jeremy Ashkenas
a5299f8058 removing escape handling of undefined in favor of an upgraded Underscore.js 2012-12-12 16:19:07 -05:00
Jeremy Ashkenas
36c3e44e19 you shouldn't be able to set(model), instead set(model.attributes) 2012-12-12 16:02:40 -05:00
Jeremy Ashkenas
b2b014228c merged in casey's events optimizations ... tweaking to follow 2012-12-12 12:00:55 -05:00
Jeremy Ashkenas
9de1ddd1c1 back to previous 'once' implementation ... tbd 2012-12-12 11:33:26 -05:00
Jeremy Ashkenas
aa4c056ef6 renaming once'd event callback for clarity -- new failing test. 2012-12-12 11:15:17 -05:00
Jeremy Ashkenas
f0da2ebec5 Merge pull request #1890 from braddunbar/once
Implement once with minimal change to other Events methods.
2012-12-12 07:43:26 -08:00
Casey Foster
2a7a45a6a5 Account for once("all", ...) 2012-12-11 14:53:26 -08:00
Casey Foster
842f48f224 Events revamp alternative version 2012-12-11 14:51:20 -08:00
Casey Foster
9e07557c24 Revamped events
- Fix awkward event order in test
- Remove all slice/splice calls (too slow)
- Break out of loops/functions ASAP
2012-12-11 14:51:20 -08:00
Jeremy Ashkenas
7e7b214269 revised update implementation with inline id/cid map instead of using an inline Collection for speed. Plus tests. 2012-12-11 17:10:02 -05:00
Jeremy Ashkenas
0494252446 Make event maps a bit more lenient about context, for internal convenience. 2012-12-11 14:02:37 -05:00
Jeremy Ashkenas
1191640d84 Fixes #1363, fixes #1461, removes View#dispose, adds Events#listenTo and Events#stopListening, and implements View#remove in terms of those. 2012-12-11 13:41:39 -05:00
Jeremy Ashkenas
d04c6182ef merged 2012-12-11 11:36:23 -05:00
Casey Foster
b9d0f8de44 #1894 sort option for add 2012-12-11 08:30:28 -08:00
Jeremy Ashkenas
a97880cb27 merged 2012-12-11 11:24:07 -05:00
Jeremy Ashkenas
5cab60be4f Defaulting remove:true for Collection#update 2012-12-11 11:20:19 -05:00
Brad Dunbar
6c0cda6707 Fix #1894, Collection#push should not sort. 2012-12-11 10:19:36 -05:00
Casey Foster
f71004fc7a Add failing test case for different idAttribute fields 2012-12-10 21:28:12 -08:00
Jeremy Ashkenas
a645760286 Change Collection#sort's event from 'reset' to 'sort', so you can optimize further if you wish. 2012-12-10 23:48:25 -05:00
Jeremy Ashkenas
d4d2daf891 Fixes #618 -- support for a simple version of PATCH 2012-12-10 16:31:02 -05:00
Jeremy Ashkenas
104e9baebb Merging in Collection#update -- revised implementation, some tweaks: models are retained by default, there's no new 'update' event. 2012-12-10 15:59:23 -05:00
Jeremy Ashkenas
d6d264bebd Merge branch 'collection-update' of https://github.com/caseywebdev/backbone 2012-12-10 14:47:35 -05:00
Brad Dunbar
1be8eb0847 Implement once with minimal change to other Events methods. 2012-12-10 13:26:22 -05:00
Genadi Samokovarov
188eb98ab6 Add asynchronous test for once 2012-12-10 19:05:02 +02:00
Casey Foster
c6ca92850c Merge branch 'master' into collection-update 2012-12-10 08:02:43 -08:00
Jeremy Ashkenas
4976b66652 Merge pull request #1889 from caseywebdev/global-events
Backbone extends Events
2012-12-10 07:58:01 -08:00
Casey Foster
d08611a504 Simplify test for Backbone Events inheritance 2012-12-10 07:52:21 -08:00
Casey Foster
a3da45efd5 Backbone extends Events 2012-12-10 07:46:00 -08:00
Genadi Samokovarov
631fd34dd7 Replace undefined with void 0 at router's test
Spotted these after commenting on the Change Log issue.
2012-12-10 11:06:09 +02:00
Casey Foster
bee1296053 Update update to merge cleanly 2012-12-08 17:55:15 -08:00
Casey Foster
c51b9cc5fd Rebasing update
Reuse prepared model in Collection#update

Remove extra whitespace

Trigger `update` after Collection#update unless silent

Don't create new models in Collection#update

Remove `slice` call from Collection#update

It isn't necessary since the array isn't being modified. `add` and
`remove` both slice the arrays they are passed, so simply reading
and passing on the pristine array to those functions is harmless.

Simplify excessive ternary in Collection#update

`update` supports simple add/remove/merge options

Cleanup `update`, support for any combination of add/merge/remove

Save a potentially useless `slice` in `update`

Add comments and more tests for Collection#update

Avoid splice and slice, they're too slow!
2012-12-08 17:48:55 -08:00
Jeremy Ashkenas
7dbfecc6c1 Fixes #697 -- Add 'once' to backbone events, supporting event maps, off, and all that jazz 2012-12-07 17:56:56 -05:00
Jeremy Ashkenas
62b80bfc32 Fixes #1340 -- reset events include previous list of models, for added convenience. 2012-12-07 16:20:24 -05:00
Jeremy Ashkenas
6dadc92765 Merge branch 'encoded-fragments' of https://github.com/braddunbar/backbone 2012-12-07 15:24:55 -05:00
Jeremy Ashkenas
23cc302a51 Fixes #1477 -- Changing Backbone's internal logic so that validation always happens, even when silent: true. Defining a validate should never allow state to become invalid, even during a silent change. 2012-12-06 16:48:29 -05:00
Jeremy Ashkenas
362b91c8e4 Fixes #1456. Enhances Backbone.Events to support jQuery-style event maps, in 'on' and 'off'. 2012-12-06 16:12:19 -05:00
Casey Foster
aefd78f949 Merge branch 'master' into collection-update
Conflicts:
	test/collection.js
2012-12-05 10:31:31 -08:00
Jeremy Ashkenas
828f15acc3 our noglobals flag to QUnit breaks the test suite in Safari (for whatever reason) ... removing it. 2012-12-04 17:58:01 -05:00
Jeremy Ashkenas
6d19aba9ee remove the Ender test suite. We never update it -- and I can't remember ever hearing about anyone actually using Ender w/ Backbone. 2012-12-04 17:57:08 -05:00
Jeremy Ashkenas
a7be84ef37 merged. 2012-12-04 17:41:57 -05:00
Casey Foster
beffc15a0b Add Collection#update to better use collection events 2012-12-01 12:26:11 -08:00
Brad Dunbar
0b2225655b Tweak sort test a bit. 2012-12-01 07:46:01 -05:00