Commit Graph

323 Commits

Author SHA1 Message Date
Raymond Feng 347926ea13 2.38.0
* Support embedded query in memory connector. Fix memory connector bug (Laurent Villeneuve)

 * Use idEquals when comparing ids in relation definitions (Laurent Villeneuve)

 * Handle possible undefined id (Laurent Villeneuve)

 * Fix id copmarison by using strings (Laurent Villeneuve)

 * Refactor idEquals to utils (Raymond Feng)
2015-08-18 14:40:51 -07:00
Raymond Feng 84c4d0e922 2.37.0
* Do not coerce RegExp objects to strings (Simon Ho)

 * Indicate result of destroyById/protototype.destroy (Fabien Franzen)

 * Removed extra ")" (Chris Finn)

 * Fixed typo & added the filter units (Chris Finn)
2015-08-14 09:32:18 -07:00
Raymond Feng de5c63fc1e 2.36.0
* Report deferred exceptions via callback (Raymond Feng)

 * fixes issue 673: Include hasMany of relation does not return empty array (Kenta Fried)
2015-08-05 11:19:21 -07:00
Raymond Feng a41fabef70 2.35.3
* Fix the test case with automigrate (Raymond Feng)
2015-07-30 11:25:07 -07:00
Raymond Feng 78bb13db97 2.35.2
* Fix regexp error for the memory connector (Simon Ho)
2015-07-30 09:15:21 -07:00
Raymond Feng ff6a2228f2 2.35.1
* Fix error handling (Raymond Feng)
2015-07-29 10:22:04 -07:00
Raymond Feng b7042b982f 2.35.0
* Remove test for unused utility function (Simon Ho)

 * Remove try/catch from find function (Simon Ho)

 * Add support for regex operator (Simon Ho)

 * Async 'loaded' hook for find (Pradnya Baviskar)

 * Promisify all 'discover' methods (Pradnya Baviskar)

 * Fix 'persist' hook for updateAttributes() (Pradnya Baviskar)
2015-07-29 07:49:56 -07:00
Raymond Feng 5e192bda23 2.34.0
* Don't enforce strictness if allowExtendedOperators: true (MongoDB) (Fabien Franzen)

 * Take strict: validate and throw settings into account (Fabien Franzen)

 * Filter attributes when strict: true (Fabien Franzen)
2015-07-22 08:36:00 -07:00
Raymond Feng 4151302e9e 2.33.3
* Make sure done() is called within the callback (Raymond Feng)
2015-07-21 09:08:56 -07:00
Raymond Feng b9e32bf811 2.33.2
* Add NOTICE (Raymond Feng)

 * prevent upsert overwriting default values with applyDefaultValues option (Bryan Clark)

 * use fromDb to deserialize data after save in Memory connector (Bryan Clark)

 * Correctly handle validatesUniquenessOf(idName) (Fabien Franzen)
2015-07-18 22:28:15 -07:00
Raymond Feng 64b6aef924 2.33.1
* Fix object merge (Raymond Feng)
2015-07-10 14:15:33 -07:00
Raymond Feng 9d653c1a45 2.33.0
* Make sure base property definitions are cloned (Raymond Feng)
2015-07-10 10:40:29 -07:00
Raymond Feng f3b2a97c84 2.32.0
* Fix the regression for date conversion (Raymond Feng)

 * Don't cache static scope method results #575 (Fabien Franzen)
2015-07-03 09:29:58 -07:00
Raymond Feng 88229fb5cf 2.31.1
* Fix the regexp value for like/nlike (Raymond Feng)
2015-07-02 23:22:56 -07:00
Raymond Feng 62a429b2a6 2.31.0
* Assert the existence of instance (Raymond Feng)

 * Make sure operator/options are honored (Raymond Feng)

 * Fix coercion from ObjectID to String (Raymond Feng)

 * Fix #623 - use actual id order (Fabien Franzen)

 * test: fix persistence-hooks failures in MySQL (Miroslav Bajtoš)

 * Includes with transaction support (Rus1)

 * Fix updateOrCreate transaction propagation (Rus1)

 * Fix promise chaining in case of error (Rus1)

 * Promisify 'autoupdate' (Pradnya Baviskar)

 * Add new hook 'loaded' (Pradnya Baviskar)
2015-07-02 14:57:11 -07:00
Raymond Feng 019705d32f 2.30.1
* Ping async to 1.0.0 to work around context propagation (Raymond Feng)

 * Fix the test case (Raymond Feng)
2015-06-16 13:43:28 -07:00
Raymond Feng 8302b2480d Ping async to 1.0.0 to work around context propagation 2015-06-16 13:43:06 -07:00
Raymond Feng 62f3f3af0d 2.30.0
* Promisify 'automigrate' (Pradnya Baviskar)

 * check object exists before setting __cachedRelations (ningsuhen)

 * Fix the test case as updateAll takes `where` directly (Raymond Feng)

 * Fix for issues #622 & #623 (ningsuhen)

 * Add new hook 'persist' (Pradnya Baviskar)

 * Create a script to describe operation hooks (Miroslav Bajtoš)

 * Allow 0 as the FK (Raymond Feng)

 * fix typo (Clark Wang)

 * Dedupe ids args of inq for include (Raymond Feng)
2015-06-16 09:00:08 -07:00
Raymond Feng 56344fe99e 2.29.2
* Fix the test case (Raymond Feng)
2015-05-29 09:29:05 -07:00
Raymond Feng 270fc4c247 2.29.1
* Update deps (Raymond Feng)

 * Don't silently swallow db errors on validation. (Samuel Reed)

 * adapt coding style @bajtos (mamboer)

 * addressing #603 (Patrick Perini)

 * enhancement on #588 (mamboer)

 * fix issue #587 (mamboer)

 * add test suit for scope - dynamic function (Nemo)
2015-05-28 14:53:28 -07:00
Raymond Feng d4d367e786 Update deps 2015-05-28 14:47:43 -07:00
Raymond Feng e8e3ce6688 2.29.0
* Enhance the apis and add more tests (Raymond Feng)

 * Fix for https://github.com/strongloop/loopback/issues/1401 (Raymond Feng)

 * Fix ReferenceError: definition is not defined (Dmitry Manannikov)

 * Mix in observer apis to the connector (Raymond Feng)

 * Enhance fieldsToArray to consider strict mode (Raymond Feng)
2015-05-27 11:09:03 -07:00
Raymond Feng 44bdeb7ae0 2.28.1
* Remove dep on sinon (Raymond Feng)

 * Update deps (Raymond Feng)
2015-05-20 09:14:42 -07:00
Raymond Feng cbb8d7c789 Remove dep on sinon 2015-05-20 09:13:56 -07:00
Raymond Feng 9705819972 Update deps 2015-05-18 14:29:54 -07:00
Raymond Feng 288e6e4c7e 2.28.0
* Make sure promise is returned (Raymond Feng)

 * Update deps to loopback-connector (Raymond Feng)

 * Fix comments (Raymond Feng)

 * Enable docs (Raymond Feng)

 * Add an optional `options` argument to relation methods (Raymond Feng)

 * Add transaction apis (Raymond Feng)

 * Refactor the observer functions into a plugin (Raymond Feng)

 * Add transaction (Raymond Feng)
2015-05-18 14:25:02 -07:00
Raymond Feng 9031400838 Update deps to loopback-connector 2015-05-18 09:36:46 -07:00
Raymond Feng 6ef7dc5914 2.27.1
* Make sure relation scope is applied during include (Raymond Feng)

 * Updated JSdoc for Datasource constructor (crandmck)
2015-05-16 11:51:45 -07:00
Raymond Feng 82ea32f319 2.27.0
* Fix the target id resolution (Raymond Feng)

 * DB Call Optimization in relation includes - Fixes #408 & #166 (ningsuhen)

 * Conditionally pass options to connector CRUD methods (Raymond Feng)

 * Pass-through options from save to create (Fabien Franzen)
2015-05-13 16:14:40 -07:00
ningsuhen d009557a76 DB Call Optimization in relation includes - Fixes #408 & #166 2015-05-14 00:19:43 +05:30
Miroslav Bajtoš d8ecea6111 2.26.4
* dao: support validateUpsert:false (Miroslav Bajtoš)

 * Changes to API docs per Dennis (Rand McKinney)

 * Add unit-test for "array" type (Miroslav Bajtoš)
2015-05-05 17:51:35 +02:00
Raymond Feng ef0a10dbb6 2.26.3
* Fix the test cases (Raymond Feng)

 * Add support for merging include filters (ningsuhen)

 * add test case for hasmanythrough bi-drectional relations (ningsuhen)

 * Fix for bug - https://github.com/strongloop/loopback-datasource-juggler/issues/571 (ningsuhen)
2015-04-24 17:04:00 -07:00
Raymond Feng b0e4312585 2.26.2
* Allow leading slash for `path` in model settings (Raymond Feng)
2015-04-24 08:47:23 -07:00
Miroslav Bajtoš 51265ba26e 2.26.1
* validations: treat `NaN` as a blank value (Miroslav Bajtoš)
2015-04-22 20:13:17 +02:00
Raymond Feng e4c602b098 2.26.0
* Allow custom name mapping for discovered models (Raymond Feng)
2015-04-22 08:44:02 -07:00
Miroslav Bajtoš 2a9a98415a 2.25.1
* Validate model on updateOrCreate (upsert). (Miroslav Bajtoš)
2015-04-17 19:34:37 +02:00
Raymond Feng 0786dc563b 2.25.0
* Extend findById to accept an optional filter object (Raymond Feng)
2015-04-16 11:04:36 -07:00
Miroslav Bajtoš dc54d02485 2.24.0
* Add new strict mode "validate" (Miroslav Bajtoš)

 * Promisify model relation methods (Partap Davis)

 * Deprecate property names containing a dot (Miroslav Bajtoš)

 * Allow nesting properties to be queried for memory connector (Raymond Feng)
2015-04-14 19:10:43 +02:00
Miroslav Bajtoš 0002aaedef 2.23.0
* Fix test for "after save" called on save/CREATE (Miroslav Bajtoš)

 * Code cleanup in lib/dao.js (Miroslav Bajtoš)

 * Save parent model of embedded relations (Fabien Franzen)

 * Pass options in operation hooks context. (Fabien Franzen)

 * check if id does not exist a bit more explicitly (Pulkit Singhal)

 * Fix persistUndefinedAsNull tests w/ SQL connectors (Miroslav Bajtoš)

 * Implement scope.updateAll (Fabien Franzen)

 * Fix the test cases so that they be run with the mssql connector (Raymond Feng)

 * Add model setting "persistUndefinedAsNull" (Miroslav Bajtoš)

 * Add abilities to remove and clear observers - Operation Hooks. (0angelic0)
2015-04-01 18:48:22 +02:00
Miroslav Bajtoš dac1899f59 2.22.0
* Code cleanup in updateAll/deleteAll (Miroslav Bajtoš)

 * Return scope object from DAO.scope (Fabien Franzen)

 * Remove all usages of lodash. (Miroslav Bajtoš)

 * Clean up delete and update tests (Simon Ho)

 * Clean up wording in update/delete tests (Simon Ho)

 * Fix wording in update test (Simon Ho)

 * Properly support embedsMany destroyAll (Fabien Franzen)

 * Clean up update/delete manipulation tests (Simon Ho)

 * test: fix test failure in MySQL connector (Miroslav Bajtoš)

 * Improve test failure messages (Miroslav Bajtoš)

 * Fix regression in prototype.save (Miroslav Bajtoš)

 * Enable more CRUD remoting methods for embedsOne (Fabien Franzen)

 * Implement scope.findOne (Fabien Franzen)

 * use findOrCreate for HasManyThrough#create (Clark Wang)

 * Enhance id comparision for updateAttributes (Raymond Feng)

 * Enable custom methods on singular relations (Fabien Franzen)

 * Implement scope.findById (Fabien Franzen)

 * Fix updateAll callback in "transient" connector (Miroslav Bajtoš)

 * Memory connector returns updated records count (Simon Ho)

 * Add ctx.isNewInstance for "save" hooks (Miroslav Bajtoš)

 * deleteAll returns number of deleted records (Miroslav Bajtoš)

 * Use the correct way to iterate over an array (Raymond Feng)

 * DAO: Fix updateOrCreate to set persisted:true (Miroslav Bajtoš)

 * Reject CREATE with a duplicate id (Miroslav Bajtoš)

 * add tests for between in memory connector (Daniel B. Vasquez)

 * enable between filter for memory db connector (Daniel B. Vasquez)

 * fix #429 Multiple Models can't mixin same class (Clark Wang)
2015-03-27 18:03:08 +01:00
Miroslav Bajtoš 5d8b3323ad Remove all usages of lodash.
This commit is dropping lodash in favour of hand-written implementation
based on ES5 Array methods. As a result, the size of the (unminified)
loopback browser bundle is decreased by approx 360KB.
2015-03-26 09:33:48 +01:00
Raymond Feng 53d694b429 2.21.0
* Fix the test case so that at least one property is to be changed (Raymond Feng)

 * Make sure id properties cannot be changed (Raymond Feng)
2015-03-16 09:54:06 -07:00
Raymond Feng 7dc0fcd26f 2.20.0
* Remove trailing spaces. (Miroslav Bajtoš)

 * Improve instance-level operation hooks (Fabien Franzen)

 * Fix the test case (Raymond Feng)

 * fix foreign key dataType bug (didikeke)

 * Reformat notifyObserversOf context argument (Fabien Franzen)

 * Implement operation hooks' context (Fabien Franzen)

 * Allow submodel to hide base properties (Raymond Feng)
2015-03-12 10:22:05 -07:00
Raymond Feng b7abb08da8 2.19.2
* Improved and corrected API docs (crandmck)

 * Fix problems in annotations that prvented validateAsync and validate functions from appearing in API docs. (crandmck)
2015-03-04 22:19:51 -08:00
Raymond Feng 666e15f8a4 2.19.1
* Make sure inclusion filter is applied to the target model (Raymond Feng)
2015-03-03 11:11:19 -08:00
Miroslav Bajtoš 4fb4e356af 2.19.0
* Deprecate DAO events (Miroslav Bajtoš)

 * Deprecate Model hooks (Miroslav Bajtoš)

 * Add Promises to DAO (Partap Davis)

 * test for updateAll (rudzon)

 * enhance the coercion for boolean/date types (rudzon)

 * enhance updateAll to coerce the data per property definitions (rudzon)

 * relation-definition: remove trailing whitespace (Miroslav Bajtoš)
2015-03-02 17:06:04 +01:00
Miroslav Bajtoš 03daaca9de Deprecate Model hooks
List of deprecated hooks:

 - beforeValidate
 - afterValidate
 - beforeCreate
 - afterCreate
 - beforeSave
 - afterSave
 - beforeUpdate
 - afterUpdate
 - beforeDestroy
 - afterDestroy

Also add a lightweight browser version of "depd", because the "depd"
does not support browser and it is not trivial to fix that.
This commits adds a lightweight implementation of depd's "deprecate"
function.
2015-02-27 16:58:24 +01:00
Raymond Feng fc0667fbf4 2.18.1
* Make sure models are migrated to avoid conflicts (Raymond Feng)

 * Add err checks (Raymond Feng)

 * Fix findByIds test cases (Raymond Feng)
2015-02-20 21:51:15 -08:00
Raymond Feng d5e71f1157 2.18.0
* Fix the idType so that it works with both MongoDB and RDBs (Raymond Feng)

 * Tidy up tests so that they will work with RDBs (Raymond Feng)

 * Fix JS style issues (Raymond Feng)

 * Add a new property option `defaultFn` (Miroslav Bajtoš)

 * Fix the null/undefined check (Raymond Feng)

 * Fix createdAt type so that it won't overflow SQL server int (Raymond Feng)

 * ModelBaseClass: promise mode for notifyObserversOf (Miroslav Bajtoš)

 * ModelBaseClass: support promise-based observers (Miroslav Bajtoš)

 * use lodash to update the findBelongsTo which now returns an array of matches (Bryan Clark)

 * Add $now as shortcut default value for date property (Pradnya Baviskar)

 * Fix `deleteById(id)` and other test failures (Miroslav Bajtoš)
2015-02-20 17:08:01 -08:00
Miroslav Bajtoš ba0f3c1616 Add a new property option `defaultFn`
The property allows developers to specify that the default value
should be retrieved via a named function.

Only two built-in functions are supported at the moment:

  "guid", "uuid" - generate a new GUID/UUID
  "now" - use the current date and time

Support for custom (user-provided) functions is not implemented yet.
2015-02-20 20:08:25 +01:00
Miroslav Bajtoš a2836fbb56 ModelBaseClass: support promise-based observers
Allow the observer functions passed to `ModelBaseClass.observe`
to return a promise instead of calling the callback.
2015-02-17 17:31:42 +01:00
Bryan Clark 98fcf6b52c use lodash to update the findBelongsTo which now returns an array of matches 2015-02-16 15:36:51 -08:00
Raymond Feng b4189bf997 2.17.0
* Add an optional `options` argument to all CRUD methods (Raymond Feng)

 * Upgrade deps (Raymond Feng)

 * Remove workaround for perfomance degradation (Denis Bardadym)

 * Change equal to eql to support mongodb ObjectID (Raymond Feng)

 * Enhance the coercion for boolean/date types (Raymond Feng)

 * Make sure base properties/settings are merged into the submodel (Raymond Feng)

 * support optimized findOrCreate (Clark Wang)

 * Fix the perf around should.not.equal for complex objects (Raymond Feng)

 * testcase for #420 (Andrey Loukhnov)

 * use findOrCreate in hasOne#create (Clark Wang)

 * Create model foreign key matching type of opposite part of relation (even if it has a custom field type) (Andrey Loukhnov)

 * minor formatting issues (trailing spaces and such) and .editorconfig (Andrey Loukhnov)
2015-02-11 20:59:24 -08:00
Raymond Feng 770c69b1d4 Upgrade deps 2015-02-10 09:49:54 -08:00
Denis Bardadym 32e534732c Remove workaround for perfomance degradation 2015-02-10 13:28:47 +03:00
Miroslav Bajtoš aca258f7e0 v2.16.0 2015-02-05 12:47:33 +01:00
Miroslav Bajtoš 3593127ef3 Update to `should` to the latest version 4.6.3 2015-02-03 11:44:15 +01:00
Miroslav Bajtoš b169650618 v2.15.0 2015-02-02 19:10:36 +01:00
Miroslav Bajtoš f9b0ac482c Upgrade `should` to the latest 1.x version 2015-01-29 08:41:19 +01:00
Miroslav Bajtoš 825b4d5ba3 v2.14.1 2015-01-15 08:53:57 +01:00
Raymond Feng 0ff7e3de91 v2.14.0 2015-01-14 12:44:22 -08:00
Raymond Feng 0c4bc5e40e v2.13.0 2015-01-07 13:58:06 -08:00
Raymond Feng 01e578be15 v2.12.0 2014-12-08 16:19:09 -08:00
Raymond Feng 7e69d7c691 Bump version 2014-11-13 12:57:35 -08:00
Raymond Feng c43783f78c Bump version 2014-11-04 22:11:12 -08:00
Raymond Feng 354b843bf0 Bump version 2014-10-21 10:58:32 -07:00
Raymond Feng 0335d0a7b9 Bump version 2014-10-15 09:19:36 -07:00
Raymond Feng f2ed39cb2d Bump version 2014-10-13 08:34:24 -07:00
Raymond Feng 8ad25a179a Bump version 2014-09-12 22:49:59 -07:00
Raymond Feng 05d9d91463 Bump version 2014-09-04 10:23:30 -07:00
Raymond Feng 9cad519d97 Bump version 2014-08-27 11:15:57 -07:00
Raymond Feng debcc3d831 Bump version 2014-08-25 22:18:19 -07:00
Raymond Feng b26dc8207b Bump version 2014-08-22 11:07:24 -07:00
Raymond Feng 9e25cf1cd3 Bump version 2014-08-21 13:50:15 -07:00
Raymond Feng 76119e1f56 Bump version 2014-08-21 10:59:31 -07:00
Raymond Feng 6f680f92fc Bump version 2014-08-20 15:08:33 -07:00
Raymond Feng b47197e854 Bump version 2014-08-18 20:36:45 -07:00
Raymond Feng 4df1f52c47 Bump version 2014-08-15 23:31:19 -07:00
Raymond Feng 5baf05c237 Bump version 2014-08-15 13:49:09 -07:00
Raymond Feng c53dc74d16 Fix a name conflict in scope metadata 2014-08-08 15:52:30 -07:00
Raymond Feng 366ff3bf62 Bump version 2014-08-08 09:30:16 -07:00
Raymond Feng 3efd758658 Bump version 2014-08-07 10:36:49 -07:00
Raymond Feng 1cb4ea2ff0 Upgrade qs 2014-08-07 10:35:13 -07:00
Raymond Feng 5a2bb6548a Upgrade qs version 2014-08-04 16:37:21 -07:00
Raymond Feng e89a79916a Bump version 2014-08-04 15:29:45 -07:00
Raymond Feng 79af219618 Bump version 2014-07-30 09:19:40 -07:00
Raymond Feng 08070aab76 Bump version 2014-07-27 00:40:10 -07:00
Raymond Feng 4f80890489 Bump version 2014-07-26 23:58:51 -07:00
Miroslav Bajtoš cbab9d754a 2.0.0 2014-07-22 20:29:42 +02:00
Raymond Feng f9e31de7c8 Bump version 2014-07-21 11:34:38 -07:00
Raymond Feng 671b32dd43 Add missing inflection dep back 2014-07-16 12:31:44 -07:00
Raymond Feng 523db2fbad Bump version 2014-07-15 17:11:22 -07:00
Raymond Feng fc710ca55a Merge branch 'master' into 2.0 2014-07-15 17:09:20 -07:00
Raymond Feng f406c32b33 Bump version 2014-07-15 12:55:40 -07:00
Miroslav Bajtoš 1e3be7f474 1.6.3 2014-07-03 08:41:31 +02:00
Raymond Feng e7a97da3bf Bump version and update deps 2014-06-27 10:12:10 -07:00
Miroslav Bajtoš a7124c4821 2.0.0-beta2 2014-06-24 08:29:21 +02:00
Raymond Feng 44de2da21f Merge branch 'master' into 2.0 2014-06-20 23:02:37 -07:00
Raymond Feng 58131029cf Bump version 2014-06-20 21:16:39 -07:00
Raymond Feng 8087e4b1e7 Bump version 2014-06-04 15:26:04 -07:00