Commit Graph

357 Commits

Author SHA1 Message Date
Kevin Delisle 00cf01f901 3.14.0
* Allow new transaction method in postgresql (#1493) (zbarbuto)
 * Fix bug in utils uniq function (#1526) (Peter Bouda)
 * Fix query for related models (#1522) (Joost de Bruijn)
 * chore:update license (#1521) (Diana Lau)
 * Allow customizing embedded relation property (#1513) (zbarbuto)
 * 📖 Typo on README.md (#1517) (JP Ventura)
 * CODEOWNERS: move @lehni to Alumni section (Miroslav Bajtoš)
2017-12-14 11:33:39 -05:00
Peter Bouda 6bd9fca080 Fix bug in utils uniq function (#1526)
The uniq function does currently not work when the database is mongodb.
In the case of mongodb, the function will receive an array of bson
object of bson type ObjectID. The indexOf function will return a
different index, even if the mongodb ID is the same, as it is wrapped
in the ObjectID. This commit first transforms any ObjectID in the array
to a string representation. We can then use indexOf to check for
uniqueness.
2017-12-04 15:39:58 -05:00
Diana Lau a9051ef991 3.13.0
* update strong-globalize to 3.1.0 (#1505) (Kyusung Shim)
 * Fix basic-querying (#1509) (Janny)
 * translation return for Q4 drop1 (tangyinb)
 * Allow passing null to base model ctor (Zak Barbuto)
 * CODEOWNERS: add zbarbuto (Miroslav Bajtoš)
 * update globalize string (Diana Lau)
2017-10-17 23:24:07 -04:00
Kyusung Shim b926f28c74 update strong-globalize to 3.1.0 (#1505)
* update strong-globalize to 3.1.0

* update other dependencies
2017-10-17 15:57:00 -04:00
Kevin Delisle 6d4cb6c3ad 3.12.0
* Add a better way to handle transactions (Jürg Lehni)
 * validations: use new regex per evaluation (#1479) (Joost de Bruijn)
 * Transaction: Bind timeout to tx instance (#1484) (Jürg Lehni)
 * CODEOWNERS: add lehni (#1483) (Miroslav Bajtoš)
 * Add node8 support for travis (loay)
 * Add nyc coverage, report data to coveralls.io (Miroslav Bajtoš)
 * Update translations from TVT (Allen Boone)
 * Add test coverage for hasAndBelongsToMany (loay)
 * package: use qs@6.5.0 (#1471) (Kevin Delisle)
2017-09-07 10:27:15 -04:00
Jürg Lehni 0ce1fa9f87 Add a better way to handle transactions 2017-09-06 07:10:57 +02:00
Miroslav Bajtoš d49806a78b
Add nyc coverage, report data to coveralls.io 2017-08-30 14:17:27 +02:00
Kevin Delisle 65f6beb00b package: use qs@6.5.0 (#1471)
Fix for advisory: https://snyk.io/vuln/npm:qs:20170213
2017-08-23 15:17:00 -04:00
rashmihunt 1fa89d6fb9 3.11.0
* Flag id as updateOnly when forceId is in effect (#1453) (Rashmi Hunt)
 * Add stalebot configuration (Kevin Delisle)
2017-08-22 13:47:21 -07:00
Kevin Delisle 3128c9395c 3.10.0
* Catch err using Callback (loay)
 * Update Issue and PR Templates (#1462) (Sakib Hasan)
 * Update translated strings Q3 2017 (Allen Boone)
 * test: call true/false in isValid checks (Tom Kirkpatrick)
 * fix: support numbers in validatesFormatOf (Tom Kirkpatrick)
 * Fix undefined properties in where (Raymond Feng)
 * Honor backwards compatability with validate update (ssh24)
 * Fix update validation callback (ssh24)
 * Validate updateAll (ssh24)
 * Sort arrays before testing (ssh24)
 * update translation file (Diana Lau)
 * Missing the option argument (#1426) (dmellonch)
 * Add CODEOWNER file (Diana Lau)
 * use connector flag throughout tests (biniam)
2017-08-21 14:11:24 -04:00
Kevin Delisle bebac1ee3f 3.9.3
* Catch errors using cb (loay)
 * Rename getAsync() methods to find() and get() (Jürg Lehni)
 * #1386 Allow empty values when allowBlank is true (Simo Moujami)
 * Skip imcompatible tests (#1420) (Janny)
 * Run juggler tests for Cloudant (#1414) (Janny)
2017-07-26 10:37:13 -04:00
Kevin Delisle 5da8170d9e 3.9.2
* Fix the case where qWhere[idKey] is null (Tetsuo Seto)
 * test/helpers: annotate skipped tests (Kevin Delisle)
 * Fix mixins/validatable docs (ssh24)
2017-06-22 17:03:33 -04:00
Kevin Delisle a54064b989 3.9.1
* Update translated strings Q2 2017 (Allen Boone)
 * Fix updateAttributes cb (ssh24)
 * Apply iteration on the model object (ssh24)
 * Remove spurious extra options arg (#1390) (Rand McKinney)
 * include: remove JSDoc refs to recursive calls (Kevin Delisle)
 * Fix count of properties (ssh24)
 * hooks: add JSDoc for .trigger (Kevin Delisle)
 * model-builder: JSDoc tidy-up (Kevin Delisle)
2017-06-01 11:37:49 -04:00
Raymond Feng b34b6e0ad4 3.9.0
* Return promise for batch create (Raymond Feng)
 * Use correct data on replace callback (ssh24)
2017-05-19 16:44:40 -07:00
Raymond Feng 22428cd58c 3.8.0
* fix assert, make the test case more clear (rashmihunt)
 * code review, better asserts (rashmihunt)
 * test case to exclude base props (rashmihunt)
 * handle excludeBaseProperties (rashmihunt)
2017-05-15 09:09:55 -07:00
Kevin Delisle a4be61377a 3.7.0
* Remove unnecessary tests for adhocSort !== false (Tetsuo Seto)
 * Fix the test case to avoid duplicate userId (Tetsuo Seto)
 * Support include rework for C* connector (Tetsuo Seto)
 * Overall review of polymorphic relations (ebarault)
 * configurable model merge (ebarault)
 * Fix assertion errors (Loay)
 * Update modelbaseclass api docs (Loay)
 * Add caseInsensitive opt to validatesUniquenessOf (Bram Borggreve)
2017-05-15 11:20:28 -04:00
Tetsuo Seto c07f46000d Support include rework for C* connector
- Remove supportNonPrimaryKeyIN
- Add C* Uuid in build call
- Implement smartMerge in scope.js
2017-05-12 22:43:21 -07:00
Kevin Delisle 6b43378396 3.6.1
* docs: add DateString definition (Kevin Delisle)
2017-05-02 18:55:44 -04:00
Kevin Delisle 6bbad5e9a9 3.6.0
* create sequence for nosql id (#1354) (Janny)
 * Fix order of query results (Loay)
 * Add DateString type (Kevin Delisle)
 * datatype.test: use predefined date (Kevin Delisle)
 * Update api documents (Loay)
 * Datasource documentation tune-up (Kevin Delisle)
 * Added unit tests specific to DateType where null (#1349) (Andrew McDonnell)
 * Fix/geo null (#1334) (paulussup)
 * replace exception thrown for invalid dates (Diana Lau)
 * Revert PR #1326 (#1336) (Sakib Hasan)
 * Make lib peerDepend on loopback-connector (#1326) (Russ Tyndall)
 * Add test case using updateAttributes (Loay)
 * Fix forceId bug for updateOrCreate (Loay)
 * Fix typo in description (jannyHou)
 * Fix relations test case (loay)
2017-05-02 18:34:11 -04:00
Sakib Hasan bcc5b559a3 Revert PR #1326 (#1336)
Make lib peerDepend on loopback-connector (#1326)

This reverts commit 67e8f3708a.
2017-04-19 14:14:50 -04:00
Russ Tyndall 67e8f3708a Make lib peerDepend on loopback-connector (#1326) 2017-04-18 16:11:18 -04:00
jannyHou 7010986643 Fix typo in description 2017-04-17 21:18:25 -04:00
Candy 432a2e15db 3.5.0
* Add instructions for running the tests (#1330) (Andrew McDonnell)
 * handle deep geo-near queries (#1314) (Eric Barault)
 * Unskip test case (Loay)
 * Make tests work for other connectors as well as C* (Tetsuo Seto)
 * Remove debugger statement (Tetsuo Seto)
 * Fixup test support for Cassandra connector (Tetsuo Seto)
 * Add test support for Cassandra connector (Tetsuo Seto)
 * package: use loopback-connector@^4.0.0 (Kevin Delisle)
 * Revert "handle deep geo-near queries (#1216)" (Sakib Hasan)
 * Revert "Allow `after save` hook to see count of records changed (#1231)" (Sakib Hasan)
 * Allow `after save` hook to see count of records changed (#1231) (Joshua Chaitin-Pollak)
 * handle deep geo-near queries (#1216) (Corentin H)
 * Fix model def column name method (#1224) (destillat)
 * Added notify flag for create and upsert (#1277) (Jonathan Sheely)
 * Custom Table Names on rels (#1303) (Waldemar Zahn)
 * Support multiple fk relations (#1308) (Sakib Hasan)
 * #1261 Property name "constructor" is not allowed in 'Model' data (#1284) (Thaer Abbas)
2017-04-17 16:22:13 -04:00
Kevin Delisle 044f999529 package: use loopback-connector@^4.0.0 2017-04-07 10:50:59 -04:00
Raymond Feng 2e6fbadd9e 3.4.1
* Use dataSource.connect to avoid duplicate connects (Raymond Feng)
 * remove equality value for user defined id (#1293) (Matteo Padovano)
2017-04-04 10:29:57 -07:00
Raymond Feng cac575398d 3.4.0
* Fix in-mem connector file operation racing condition (Raymond Feng)
2017-04-04 08:43:04 -07:00
Kevin Delisle 966d5daed7 3.3.0
* make geo nearFilter support minDistance (#987) (Vincent Wen)
 * Disallow regexp string in arrays for coerce (#1279) (Mikhail)
 * Fix - `_targetClass` on scope function (#1280) (Clark Wang)
 * Fixes #1275. `Include` filter transforms fields property into array. (#1276) (Nick Oikonomou)
 * Included models from include operations do not change defined `strict` model option (#1259) (Dimitris)
 * Using a filter with exclusion of a non existent property, removes an existing one (#1257) (Dimitris)
 * Clean version of PR 1272 (#1273) (Sakib Hasan)
 * Replicate new issue_template from loopback (Siddhi Pai)
 * Replicate issue_template from loopback repo (Siddhi Pai)
 * Update README.md (Rand McKinney)
 * FindOrCreate missing error callback (Diana Lau)
 * Fixes #1230 coerceArray converts empty Objects (#1269) (Dimitris)
 * override collection name for arangodb (#1243) (Matteo Padovano)
 * Add test coverage for `validatesInclusionOf` (#1249) (Rémi Bèges)
 * dao: catch errors on Model creation in find (Kevin Delisle)
 * dao: catch sync errors on setAttributes (Kevin Delisle)
 * Update error message (Loay)
 * Fix Order query test case (Loay)
 * Doc:Add option for discoverModelDefinitions (jannyHou)
 * Add tests for validatesExclusionOf (#1248) (Rémi Bèges)
 * Fix id update error message formatting (Rémi Bèges)
 * Add test case for all connectors (jannyHou)
 * Add proper statusCode for duplicate (Loay)
 * Fix datasource to report connector-loading errors (Miroslav Bajtoš)
 * Ensure replaceById returns 404 when id not found (Loay)
 * Upgrade eslint-config, fix new violations (Miroslav Bajtoš)
 * Fix option propagation in relation methods (Miroslav Bajtoš)
 * Refactor logic of options.allowExtendedOperators (Matteo Padovano)
 * Fix forceId validation error (Loay)
 * Add two basic tests for "inq" operator (Miroslav Bajtoš)
2017-03-31 10:28:23 -04:00
Miroslav Bajtoš e8a977f55b Fix datasource to report connector-loading errors
Before this change, when resolving full connector path, all errors were
ignored. As a result, when the connector was installed but not
correctly built (e.g. loopback-connector-db2 which uses a native addon),
a very confusing message was reported by LoopBack.

In this commit, I am fixing the code handling `require()` errors
to ignore only MODULE_NOT_FOUND errors that contain the name
of the required module.
2017-02-03 20:29:11 +01:00
Miroslav Bajtoš d809260799 Upgrade eslint-config, fix new violations 2017-02-01 12:45:56 +01:00
Raymond Feng cf7f05db8b 3.2.0
* Fix should dep (Raymond Feng)
 * Upgrade dependencies to remove npm install warnings (Raymond Feng)
 * Add missing return for KVAO delete all (Simon Ho)
 * Add missing return in KVAO keys test suite (Simon Ho)
 * Detect deleteAll support in KVAO tests (Simon Ho)
 * Coerce array-like objects into arrays (Heath Morrison)
 * Refactor flush to deleteAll (Simon Ho)
 * Upgrade eslint-config to 7.x (Miroslav Bajtoš)
 * Throw error when model relation name is trigger (Brian Schemp)
 * Add flush operation to KVAO (Simon Ho)
 * Fix block padding (Siddhi Pai)
2017-01-19 10:28:38 -08:00
Raymond Feng 315c2774cb Fix should dep 2017-01-19 10:27:48 -08:00
Raymond Feng 0c76bd21b9 Upgrade dependencies to remove npm install warnings 2017-01-17 09:45:51 -08:00
Miroslav Bajtoš 454bf93aaf Upgrade eslint-config to 7.x
Also upgrade eslint itself to 3.x.
2017-01-06 13:33:54 +01:00
Miroslav Bajtoš 0ad75bd93e 3.1.1
* Update package.json for LB3 release (Simon Ho)
 * Fix eslint errors reported by the latest eslint (Miroslav Bajtoš)
 * Fix HasOne.update to propagate options arg (Miroslav Bajtoš)
 * Fix linter errors for CI (Simon Ho)
 * Replicate .github from loopback repo (Siddhi Pai)
 * Update ko translation file (Candy)
 * Honour allowExtendedOperators in "DAO.find" (Miroslav Bajtoš)
 * Fix MySql CI server Failure (Loay)
 * Upgrade eslint & config to latest (Miroslav Bajtoš)
2016-12-21 16:04:41 +01:00
Simon Ho b60e09756d Update package.json for LB3 release 2016-12-21 10:44:55 +01:00
Miroslav Bajtoš 0f7a567f18 Upgrade eslint & config to latest
- eslint ^3.11.1
 - eslint-config-loopback: ^6.0.0
 - fix linter errors (mostly no-undef)
2016-12-05 15:14:09 +01:00
Miroslav Bajtoš 0fea9ebef0 3.1.0
* Apply hasManyThrough filter on target model (jannyHou)
 * Remove valid connectors from downstream ignores (Simon Ho)
 * Add some connectors to ignoreList (jannyHou)
 * Tests cleanup (Amir Jafarian)
 * Fixed example for creating ValidationError (Boštjan Pišler)
 * Correct tests for DAO.Create (Amir Jafarian)
 * Add downstream ignore list config (Simon Ho)
 * Remove duplicate "engines" from package.json (Miroslav Bajtoš)
 * Drop support for Node v0.10 and v0.12 (Miroslav Bajtoš)
 * Fix a test (Amir Jafarian)
 * Add more robust OH tests for find method (Amir Jafarian)
 * Add support for `loaded` hook (Amir Jafarian)
 * Use imperative mood for tests (Amir Jafarian)
 * Continue _coerce after logical operators (Heath Morrison)
 * Make variable names more clear (Amir Jafarian)
 * test/kvao: add connectorCapabilities options (Miroslav Bajtoš)
 * Fix validateNumericality, nullCheck & add tests (CerealGuy)
 * Add test for operation hooks (Amir Jafarian)
 * Add ilike and nilike operators (Nick Duffy)
 * Fix JSDoc issue (Amir Jafarian)
 * Update ja translation file (Candy)
 * Remove 3.0 RELEASE-NOTES (Miroslav Bajtoš)
 * Fix linting errors (Simon Ho)
 * Update validations.js (Rand McKinney)
 * Update translation files - round#2 (Candy)
 * Fix CI Failures in MySQL (Loay)
 * Add code review fixups (Simon Ho)
 * More descriptive name for model with shortid (Tim De Pauw)
 * Polish PR (Tim De Pauw)
 * Support {defaultFn: 'shortid'} (Tim De Pauw)
2016-12-05 10:18:01 +01:00
Simon Ho edb8fa393e Remove valid connectors from downstream ignores
- Remove Microsoft SQL connector
- Remove Oracle connector
2016-11-30 17:20:50 -08:00
jannyHou b8fb9cded3 Add some connectors to ignoreList 2016-11-30 13:18:07 -05:00
Simon Ho c352dcff7d Add downstream ignore list config 2016-11-25 10:33:00 -08:00
Miroslav Bajtoš 401b7e4296 Remove duplicate "engines" from package.json
The problem was introduced by 1fb7842
2016-11-15 15:45:24 +01:00
Miroslav Bajtoš 1fb78422fa Drop support for Node v0.10 and v0.12 2016-11-15 14:21:02 +01:00
Tim De Pauw be1d71f626 Support {defaultFn: 'shortid'} 2016-09-22 16:07:34 -07:00
Miroslav Bajtoš 8b835b1b5c 3.0.0
* Describe the change of forceId (jannyHou)
 * Add translation files (Amir Jafarian)
 * Add 'isNewInstance' for updateAttributes (Amir Jafarian)
 * Strict mode now always return validationError (David Cheung)
 * Add docs for KVAO (Simon Ho)
 * Skip test temporarily (Loay)
 * Fix BSON Object ID errors for CI (Simon Ho)
2016-09-22 12:15:54 +02:00
Miroslav Bajtoš a944244a7b 3.0.0-alpha.8
* Add missing "done" arg in test/kvao/ttl.suite (Miroslav Bajtoš)
 * Support nested queries for arrays (pponugo)
 * Refactor TTL tests for KV memory connector (Simon Ho)
 * Fix test case for expire (Simon Ho)
 * Fix failures of upsertWithWhere (Amir Jafarian)
 * Remove expired item before executing expire (Simon Ho)
 * Disable `strict` for a few files (Amir Jafarian)
2016-09-08 10:42:58 +02:00
Miroslav Bajtoš f816e52ac5 3.0.0-alpha.7
* test/memory: remove dummy findOrCreate impl (Miroslav Bajtoš)
 * Fix CI introduced by `use strict` (Amir Jafarian)
 * Fix manually (Amir Jafarian)
 * Auto-update by eslint --fix (Amir Jafarian)
 * Update eslint (Amir Jafarian)
 * kvao: implement key filter (Miroslav Bajtoš)
 * kvao: add iterateKeys() and keys() (Miroslav Bajtoš)
 * Globalize KeyValue Memory connector (Simon Ho)
 * upsertWithWhere feature support in juggler DAO (Sonali Samantaray)
 * Fix typo (Amir Jafarian)
 * Rename get test suite to match other test suites (Simon Ho)
 * Add TTL for KeyValue related features (Simon Ho)
2016-08-26 10:09:27 +02:00
Amir Jafarian df18af9ba0 Update eslint 2016-08-22 15:12:25 -04:00
Miroslav Bajtoš 3b653a192b kvao: implement key filter 2016-08-18 09:59:56 +02:00
Miroslav Bajtoš 01ce7df60f kvao: add iterateKeys() and keys()
Add a core implementation of KVAO.iterateKeys() which returns an
AsyncIterator, inspired by
 - https://github.com/tc39/proposal-async-iteration
 - https://www.npmjs.com/package/async-iterators

This way we can safely iterate even large sets of data.

Also add KVAO.keys(), a sugar API converting the result of iterateKeys()
into a single array.
2016-08-18 09:59:56 +02:00
Miroslav Bajtoš d7cf478b52 3.0.0-alpha.6
* Return error if the connector does not implement (Amir Jafarian)
 * kv-memory: fix crash in regular cleanup (Miroslav Bajtoš)
 * test/relation: add missing error handlers (Miroslav Bajtoš)
 * forceId=true with auto-increment db (jannyHou)
 * Fixup globalization (Amir Jafarian)
 * kvao: return 404 when expiring unknown key (Miroslav Bajtoš)
 * Implement KeyValue API and memory connector (Miroslav Bajtoš)
 * Disallow bulk updateOrCreate. (Richard Pringle)
 * Update globalization (Amir Jafarian)
 * Use g.f instead of utils.format (Amir Jafarian)
 * Optimize related model queries (Horia Radu)
 * Support for globalization (Amir Jafarian)
 * Update include.js (Rand McKinney)
 * Fix test case typo (Supasate Choochaisri)
 * Remove unused variables in model.js (Amir Jafarian)
 * Declare `definition` (Amir Jafarian)
 * Add test to catch invalid date property (Supasate Choochaisri)
 * Update URLs in CONTRIBUTING.md (#1002) (Ryan Graham)
 * Ensure stable order of items in DAO.find() (Miroslav Bajtoš)
 * Add test for updateOrCreate (Amir Jafarian)
 * Update validations.js (Rand McKinney)
 * Remove DataSource.registerType() (gunjpan)
 * give options to validators #984 (RobinBiondi)
 * Throw Error for property names with dots (gunjpan)
 * Update datasource.js (Ritchie Martori)
2016-08-11 13:19:54 +02:00