Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 117 lines (78 sloc) 6.033 kB
f105006 @benpickles Version 0.6.0.
authored
1 # Changelog
2
30226d7 @benpickles Version 0.10.1.
authored
3 ## 0.10.1
4
5 * Add a simple plugin interface. Call with `MyModel.use(MyPlugin, "some", "args")`.
6 * Switch to prototypal inheritance instead of copying functions into a new object.
7 * `Model.each()`, `.map()` and `.select()` now behave more like their ECMA-262 equivalents except they return the class and call their iterators with the `this` value as the model by default.
8 * `Model.add()` now only takes a single argument.
9
2fb9ae6 @benpickles Update CHANGELOG.
authored
10 ## 0.10.0
11
12 * Add `extend()` and `include()` methods to add class and instance methods respectively.
13 * New declaration syntax - pass a function giving you access to the newly created class instead of two separate objects.
14 * A model with an id will be added to the collection when saved (like the docs said originally).
15 * `count()` now follows suit with the rest of js-model and returns the number of models in `all()` allowing you to overwrite `all()` with your own custom implementation - or "Eggs Fish Ham" as he put it ;) [Mark Evans]
16
a297316 @benpickles Version 0.9.4.
authored
17 ## 0.9.4
18
19 * Add `Model.map()` method.
20 * Protect the collection from accidental modification allowing you to safely `remove()` a model from within an `each` loop.
21 * Added configurable Model.unique_key, exposed as instance.id() and used in finders. Defaults to 'id'. [Ismael Celis and Oliver Nightingale]
22 * Protect an instance's initial attributes from accidental modification.
23
4c54e46 @benpickles Version 0.9.3.
authored
24 ## 0.9.3
25
26 * Add the ability to define a custom `initialize()` instance method that is called at the end of the initialization process. Thanks to Ismael Celis for the idea.
27
db6528b @benpickles Version 0.9.2.
authored
28 ## 0.9.2
29
30 * Ajax DELETE sends JSON body, including AjaxSetup data if available. [Ismael Celis]
31 * `Model.remove()` should include removed instance in event data. [Ismael Celis]
32 * Call the `Model.load()` callback with the scope of the class.
33
33c406a @benpickles Version 0.9.1.
authored
34 ## 0.9.1
35
36 * If defined, include jQuery.ajaxSetup data in REST parameters. [Ismael Celis]
37
fc2aed5 @benpickles Update CHANGELOG and README for v0.9.0.
authored
38 ## 0.9.0
39
40 * Finder methods now return `undefined` for a missing model.
41 * Remove #update method which you might guess acts like ActiveRecord's #update_attributes which is not the case - no calls are triggered on the persistence adapter.
42 * Model.RestPersistence renamed to Model.REST - Model.RestPersistence can still be used but will be removed in version 1.0.
43 * REST adapter now sends JSON instead of "application/x-www-form-urlencoded" (and so now requires the browser to be JSON-aware).
44 * Add `reverse` class method.
45 * Add Model.VERSION to allow inspection of js-model version.
46 * Add Model.localStorage persistence adapter.
47 * Stop jQuery's JSON parsing throwing an error when encountering Rails' none-empty " " JSON responses.
4a07a44 @benpickles Remove Underscore dependency. Model.remove method now takes a model i…
authored
48 * Remove Underscore dependency.
49 * `Model.remove` method now takes a model instance rather than an id.
d8932a5 @benpickles Rename `sort` to `sortBy` and add the ability to specify an attribute…
authored
50 * Rename `sort` to `sortBy` and add the ability to specify an attribute name as well as a custom function. Add `sort` method that acts on a collection just like `Array#sort`.
3d1946d @benpickles Add pluck method that takes an attribute name and returns an array of…
authored
51 * Add `pluck` method that takes an attribute name and returns an array of values.
07f790c @benpickles Fix for callbacks being wrongly called on multiple instances - they w…
authored
52 * Fix for callbacks being wrongly called on multiple instances - they were being stored on the prototype and thus being shared across instances. Thanks to Oliver Nightingale for identifying the bug and writing a test case.
53
c33ed77 @benpickles Version 0.8.4.
authored
54 ## 0.8.4
55
56 * Add named parameters to `Model.RestPersistence` so "/categories/:category_id/posts" will pick up the corresponding `category_id` attribute from your model and be converted to "/categories/2/posts". [Russell Jones]
57
86772ac @benpickles Version 0.8.3.
authored
58 ## 0.8.3
59
60 * Fix that `find`, `first`, `last` and `detect` return `null` when nothing is found.
61 * Add `unbind` method to unbind all callbacks for a particular event or a specific callback by passing a reference to the original function.
62 * Move callback functionality into a separate module and mix-in to class and instance.
63
fe28c8e @benpickles Version 0.8.2.
authored
64 ## 0.8.2
65
1d9d72a @benpickles Don't log an error when Rails returns a response of " " for a `head :…
authored
66 * Don't log an error when Rails returns a response of " " for a `head :ok` response.
fe28c8e @benpickles Version 0.8.2.
authored
67 * `jQuery.ajax` should use `dataType` "json" removing the need to set a global `beforeSend`. [Jason Lee]
1d9d72a @benpickles Don't log an error when Rails returns a response of " " for a `head :…
authored
68
c7ec181 @benpickles Version 0.8.1.
authored
69 ## 0.8.1
70
1d9d72a @benpickles Don't log an error when Rails returns a response of " " for a `head :…
authored
71 * Fix that custom class methods should be available after chaining.
578d0c1 @benpickles Custom class methods should be available after chaining.
authored
72
9123e4f @benpickles Version 0.8.0.
authored
73 ## 0.8.0
74
75 * Move model collection methods into a separate object allowing you to customise the defaults in a single place.
76 * Move model instance methods into a separate object. This allows you to redefine the defaults once rather than having to pass the same custom method to multiple models at declaration time.
77 * Defining a model now takes three arguments: name, class methods, instance methods.
78
79 ## 0.7.3
80
81 * Fix callbacks in IE.
82 * Fix broken Ajax tests in IE6 and IE7.
83
1160851 @benpickles Version 0.7.1.
authored
84 ## 0.7.1
85
86 * `Model.RestPersistence` now recognises a 422 response as validation failure and populates the model's errors object with the response data.
87 * `Model.errors` is now an object and has a similar interface to ActiveModel.
88 * Fix that `changes` should only be merged after a successful `save` (create/update).
89 * Calling Model#attr() with no arguments returns a combined object of attributes/changes.
90 * Fix that `Model.RestPersistence` Ajax failures should correctly run the supplied callback.
91 * Add `count` method to `Model.Collection`.
92 * Collection methods now access the collection through the `all` method so that `select`, `each`, etc work as expected if it's overwritten.
93
ceddb12 @benpickles Version 0.7.0.
authored
94 ## 0.7.0
95
96 * Events are now bound directly to a model rather than using jQuery `bind`. Collections also now have the concept of events with "add" and "remove" built-in.
97
98 ## 0.6.1
99
63f4a3a @benpickles `update` should trigger "update" event, add separate `merge` method.
authored
100 * `update` should trigger "update" event, add separate `merge` method.
6966778 @benpickles Fix that persistence failure should not trigger corresponding event.
authored
101 * Fix that persistence failure should not trigger corresponding event.
102
f105006 @benpickles Version 0.6.0.
authored
103 ## 0.6.0
104
105 * Pass only a single callback to save/destroy which is called with a boolean to indicate success/failure.
106 * Bundle release into a single, versioned Javascript file plus minified version.
107 * Change behaviour of `Model.Collection` and don't let duplicates (scoped by id) of the same model to be stored. [Laurie Young]
108
109 ## 0.5.1
110
111 * Fix that setting a null value with `attr` should be read back correctly from `changes`.
112 * `errors` array shouldn't have to be manually `reset` when implementing `validate`.
113
114 ## 0.5.0
115
116 * First tagged release.
Something went wrong with that request. Please try again.