UNPKG

9.29 kBMarkdownView Raw
1## 0.12.3 (2016-11-04)
2Bugfixes:
3 - Merged PR that allows changes to persist in `postValidate` and `preSave` hooks ([#85](https://github.com/scottwrobinson/camo/pull/85)). Fixes [#43](https://github.com/scottwrobinson/camo/pull/43).
4
5## 0.12.2 (2016-06-27)
6Bugfixes:
7 - Merged PR that prevents methods from being serialized in `toJSON()` ([#79](https://github.com/scottwrobinson/camo/pull/79))
8
9## 0.12.1 (2016-03-02)
10Features:
11 - Updated README to warn about frequently changing API
12 - Added Contributing and Contact sections to README
13Bugfixes:
14 - Fixed issue that prevented `save()` from being aborted when `Promise.reject` was returned in a hook ([#57](https://github.com/scottwrobinson/camo/issues/57))
15 - Replaced all `.id` references to `._id` in README
16 - Fixed issue where schema types `Array` and `[]` were not properly being validated ([#53](https://github.com/scottwrobinson/camo/issues/53))
17 - In README, changed an incorrect reference of `.findMany()` to `.find()` ([#54](https://github.com/scottwrobinson/camo/issues/54))
18 - Fixed issue where updated nested data wasn't returned when using `.findOneAndUpdate()` with NeDB ([#55](https://github.com/scottwrobinson/camo/issues/55))
19
20## 0.12.0 (2016-02-24)
21Features:
22 - Added support for sorting with multiple keys ([#22](https://github.com/scottwrobinson/camo/issues/22))
23 - Added support for accepting strings as Dates ([#46](https://github.com/scottwrobinson/camo/issues/46))
24 - Deprecated `loadMany`, `loadOne`, `loadOneAndUpdate`, and `loadOneAndDelete` in favor of `find`, `findOne`, `findOneAndUpdate`, and `findOneAndDelete`, respectively ([#37](https://github.com/scottwrobinson/camo/issues/37))
25 - Added documentation on transpiler support for Camo
26Bugfixes:
27 - Changed 'schema({})' to 'this.schema({})' in README since original throws ReferenceError ([#52](https://github.com/scottwrobinson/camo/issues/52))
28
29## 0.11.4 (2016-01-19)
30Bugfixes:
31 - Fixed issue with saving/loading deeply nested embedded documents ([#35](https://github.com/scottwrobinson/camo/issues/35))
32 - Removed `_id` and `_schema._id` from `EmbeddedDocument` class ([#31](https://github.com/scottwrobinson/camo/issues/31))
33 - Allow user to specify a custom _id ([#29](https://github.com/scottwrobinson/camo/issues/29))
34
35## 0.11.3 (2015-12-29)
36Features:
37 - Added new `ValidationError` object
38Bugfixes:
39 - Improved some validation tests
40 - Fixed min validation
41 - Fixed validation for array of embedded documents
42 - Moved `collectionName` method to `BaseDocument` so `EmbeddedDocument` can use it ([#26](https://github.com/scottwrobinson/camo/issues/26))
43 - Deprecated `id` alias from document object ([#20](https://github.com/scottwrobinson/camo/issues/20))
44 - Fixed serialization test for MongoDB IDs
45
46## 0.11.2 (2015-12-15)
47Bugfixes:
48 - Fixed issue with running 'canonicalize' tests on travis-ci
49
50## 0.11.1 (2015-12-15)
51Bugfixes:
52 - Removed unused `harmony-reflect` dependency
53
54## 0.11.0 (2015-12-15)
55
56Features:
57 - `--harmony-proxies` flag is no longer required
58 - Class names now declared in `static collectionName()`. Declaration through constructor is depracated ([#16](https://github.com/scottwrobinson/camo/issues/16))
59 - Added new `required` schema property ([#18](https://github.com/scottwrobinson/camo/issues/18) and [#19](https://github.com/scottwrobinson/camo/pull/19))
60Bugfixes:
61 - Fixed some inconsistencies with `id` aliasing (partial fix to [#20](https://github.com/scottwrobinson/camo/issues/20))
62
63## 0.10.0 (2015-11-12)
64
65Features:
66 - Added support for setting the 'unique' index on a field
67 - Added support for specifying which reference fields should be populated in `loadOne()` and `loadMany()`
68Bugfixes:
69 - Fixed issue in `isNativeId` where we weren't returning a proper Boolean.
70
71## 0.9.1 (2015-11-06)
72
73Features:
74 - Added support for testing in travis-ci.org
75Bugfixes:
76 - Fixed issue #10 where IDs in queries had to be ObjectId. Now string IDs are automatically cast to ObjectId.
77
78## 0.9.0 (2015-10-30)
79
80Features:
81 - Added support for `sort` option on `.loadMany()`
82 - Added support for `limit` option on `.loadMany()`
83 - Added support for `skip` option on `.loadMany()`
84 - Added `.toJSON()` to `Document` and `EmbeddedDocument` for serialization
85 - Updated 'engines' property to '>=2.0.0' in package.json
86Bugfixes:
87 - Fixed issue #14 where `Document`s couldn't be initialized with an array of `EmbeddedDocument` objects via `.create()`
88
89## 0.8.0 (2015-10-12)
90
91Features:
92 - Added support for custom validation on schemas via `validate` property
93Bugfixes:
94 - Fixed issue #9 where no member values could be set as `undefined`
95
96## 0.7.1 (2015-08-21)
97
98Bugfixes:
99 - Fixed issue #8 where virtual setters were not used on initialization
100 - `loadMany()` now loads all documents if query is not provided
101 - `deleteMany()` now deletes all documents if query is not provided
102
103## 0.7.0 (2015-08-18)
104
105Features:
106 - Added `loadOneAndUpdate` static method to `Document` class
107 - Added `loadOneAndDelete` static method to `Document` class
108
109## 0.6.0 (2015-08-10)
110
111Features:
112 - Added in-memory support for NeDB
113 - Added regex validator to `Document`
114
115## 0.5.7 (2015-08-06)
116
117Bugfixes:
118 - Fixed issue where `schema()` wasn't canonicalizing schema definitions.
119 - Updated README to show an example of using `schema()`.
120
121## 0.5.6 (2015-07-20)
122
123Features:
124 - README additions
125 - New test for overriding schemas
126
127## 0.5.5 (2015-07-15)
128
129Bugfixes:
130 - Fixed issue where _id was being reassigned in Mongo, and fixed issue with populating references in Mongo.
131 - Fixed issue with Mongo driver where reference validation checks failed.
132 - Fixed test Issues.#4 for when running in Mongo.
133
134## 0.5.4 (2015-07-09)
135
136Bugfixes:
137 - Fixed issue where `Date`s were saved in different formats (integers, `Date` objects, etc). Added way to canonicalize them so all dates look the same in the DB and are also loaded as Date objects.
138
139## 0.5.3 (2015-07-01)
140
141Bugfixes:
142 - Fixed issue in `.loadMany()` where references in arrays were getting loaded too many times. ([#4](https://github.com/scottwrobinson/camo/issues/4)).
143 - Added test in issues.test.js
144 - Fixed issue in `.loadMany()` where muliple references to the same object were only getting loaded once. ([#5](https://github.com/scottwrobinson/camo/issues/5)).
145 - Added test in issues.test.js
146
147## 0.5.2 (2015-06-30)
148
149 - Version bump, thanks to NPM.
150
151## 0.5.1 (2015-06-30)
152
153Bugfixes:
154 - Fixed validation and referencing so `Document`s can be referenced by their object or ID.
155
156## 0.5.0 (2015-06-26)
157
158Features:
159 - Exposed `getClient()` method for retrieving the active Camo client.
160 - Added `options` parameter to `connect()` so options can be passed to backend DB client.
161 - Static method `Document.fromData()` is now a private helper method. Static method `.create()` should be used instead.
162
163Bugfixes:
164 - In `Document._fromData()`, added check to see if ID exists before assigning
165 - Changed `BaseDocument._fromData()` so it returns data in same form as it was passed.
166 + i.e. Array of data returned as array, single object returned as single object.
167 - Fixed bug where assigning an array of Documents in `.create()` lost the references.
168 - Stopped using the depracated `_.extend()` alias. Now using `_.assign()` instead. ([#1](https://github.com/scottwrobinson/camo/issues/1)).
169 - Fixed `get` and `set` issue with Proxy ([#3](https://github.com/scottwrobinson/camo/issues/3)).
170
171## 0.4.0 (2015-06-22)
172
173Features:
174 - Changed `.isModel()` to `.isDocument()`.
175 - Added `EmbeddedDocument` class and tests.
176 + The following features work with `EmbeddedDocument`s:
177 = Schema options: default, min, max, type, choices
178 = All types supported in `Document` also work in `EmbeddedDocument`
179 = Array of `EmbeddedDocument`s
180 = Pre/post validate, save, and delete hooks
181
182## 0.3.2 (2015-06-19)
183
184Bugfix:
185 - Added forked version of `harmony-reflect`. Only difference is it uses a global to ensure it runs only once.
186
187## 0.3.1 (2015-06-19)
188
189Bugfix:
190 - Moved Proxy/Reflect shim to index. Seems to fix problem where shim broke Proxies (even worse).
191
192## 0.3.0 (2015-06-18)
193
194Features:
195 - Added support for MongoDB using [node-mongodb-native](https://www.npmjs.com/package/mongodb) as the backend.
196 - Added `.toCanonicalId()` and `.isNativeId()` to `DatabaseClient` and its child classes.
197
198## 0.2.1 (2015-06-17)
199
200 - README fix.
201
202## 0.2.0 (2015-06-17)
203
204Features:
205
206 - Added the following Document hooks:
207 - `preValidate()`
208 - `postValidate()`
209 - `preSave()`
210 - `postSave()`
211 - `preDelete()`
212 - `postDelete()`
213
214## 0.1.1 (2015-06-17)
215
216Features:
217
218 - Updated README to include 'javascript' declaration for syntax highlighting.
219 - Added 'homepage' to package.json.
220 - Added 'repository' to package.json.
221 - Added 'email' to 'author' in package.json.
222
223## 0.1.0 (2015-06-17)
224
225Features:
226
227 - Minor version bump.
228 - No longer need to use `.schema()` in Document subclass. Now all public variables (any variable not starting with an underscore) are used in the schema.
229 - Implemented `.count()` in Document, Client, and NeDbClient to get Document count without retrieving data.
230 - Added `options` parameter to `.loadOne()` and `.loadMany()` to specify whether references should be populated.
231 - Added support for circular dependencies.
232 - Added README.
233 - Added CHANGELOG.
234
235
236## 0.0.1 (2015-06-15)
237
238Initial release.
\No newline at end of file