Miroslav Bajtoš
06b65ccf7e
PersistedModel: add remote method aliases
...
Ensure all loopback 1.x method names are available in loopback 2.x too.
2014-09-10 17:35:02 +01:00
Fabien Franzen
033e771528
Fix require
2014-09-06 10:55:16 +02:00
Ritchie Martori
6a604de157
Merge pull request #510 from strongloop/fix/remoting-type-conversion
...
Fix coercion for remoting on vanilla models
2014-09-03 11:55:04 -07:00
Ritchie Martori
58e36514d6
Fix coercion for remoting on vanilla models
2014-09-03 11:33:20 -07:00
Raymond Feng
43dbfa288e
Merge pull request #469 from britztopher/mailconnector-transports-issue460
...
Mailconnector transports issue460
2014-09-03 08:50:03 -07:00
Alexander Ryzhikov
58538f02b7
user#login include server crash fix
...
Signed-off-by: Alexander Ryzhikov <coobaha@gmail.com>
2014-09-03 09:58:49 +04:00
Clark Wang
2452dd1092
Add tests for hasManyThrough link with data
...
Signed-off-by: Clark Wang <clark.wangs@gmail.com>
2014-09-01 09:28:13 +08:00
Fabien Franzen
1067c94bf6
Tiny fix: correct url format
2014-08-30 17:00:36 +02:00
Fabien Franzen
33f3ba4549
Fix embedsMany/findById to return proper 404 response
2014-08-30 16:54:14 +02:00
Raymond Feng
9b97014b52
Merge pull request #504 from fabien/feature/embeds-one-remoting
...
Enable remoting for embedsOne relation
2014-08-29 09:30:49 -07:00
Raymond Feng
e856f81d09
Merge pull request #503 from fabien/feature/scope-where
...
Allow 'where' argument for scoped count API
2014-08-29 09:30:38 -07:00
Miroslav Bajtoš
26b67ba757
registry: warn when dataSource is not specified
...
Modify `registry.configureModel()` to log a warning when `dataSource`
optiont is not specified at all.
Users should provide `dataSource: null` when the model is intentionally
not attached to any data-source.
2014-08-26 18:04:06 +02:00
Ritchie Martori
7dde6466e5
Only validate dataSource when defined ( Fixes #482 )
2014-08-26 17:49:15 +02:00
Fabien Franzen
6cfd1bb523
Fix tests
2014-08-26 15:25:45 +02:00
Jaka Hudoklin
19155242c1
Enable remoting for embedsOne relation
...
Signed-off-by: Jaka Hudoklin <jakahudoklin@gmail.com>
2014-08-26 15:25:45 +02:00
Fabien Franzen
fc0c96bdc2
Allow 'where' argument for scoped count API
...
Note that the return value will be non-rooted, which is actually what
the
non-scoped /count method returns as well - fixes inconsistency.
2014-08-26 14:41:36 +02:00
britztopher
ba48d042b8
added test and fixed changing passed in object within ctor
2014-08-14 15:44:36 -04:00
Raymond Feng
1c61cedee7
Make sure scoped methods are remoted
...
See https://github.com/strongloop/loopback/issues/454 . It's regression in 2.x.
2014-08-08 15:55:47 -07:00
Raymond Feng
9fb0977433
Pass in remotingContext for ACL
...
See https://github.com/strongloop/loopback/issues/451
2014-08-07 22:19:27 -07:00
Raymond Feng
a9e77e0e23
Merge pull request #435 from fabien/feature/deep-remoting
...
Implement Model.nestRemoting
2014-08-07 10:38:09 -07:00
Raymond Feng
0affc65c67
Merge pull request #427 from fabien/feature/relation-paths
...
Allow custom relation path (http) - enable hasOne remoting access
2014-08-07 10:32:13 -07:00
Fabien Franzen
539702ab3d
Inherit hooks when nesting
...
Note that for now, the hook ctx.instance will be the root/entry object.
Added `mounted` event - should be useful in other ways too.
2014-08-05 12:14:39 +02:00
Fabien Franzen
18c647a9bb
Changed options.path to options.http.path
2014-08-05 09:10:43 +02:00
Fabien Franzen
42f938ed72
Fix test to be more specific
2014-08-04 18:47:15 +02:00
Fabien Franzen
9be8d11431
Implement Model.nestRemoting
...
Explicitly enable another level of nesting/accessing relations; limited
to a depth of 2 levels.
2014-08-04 18:27:50 +02:00
Raymond Feng
b66a36fd3c
Merge pull request #423 from strongloop/feature/add-remoting-for-exists
...
Feature/add remoting for exists
2014-08-04 08:44:16 -07:00
Fabien Franzen
66fe60e6ca
Allow custom relation path (http) - enable hasOne remoting access
2014-08-01 11:25:28 +02:00
Raymond Feng
ad43d03ebb
Expose Model.exists over HTTP HEAD
2014-07-30 21:57:45 -07:00
Raymond Feng
0590eaf278
Merge pull request #419 from fabien/feature/new-relations
...
Integration of the new juggler relations: embedsMany, referencesMany
2014-07-30 16:32:33 -07:00
Fabien Franzen
b9f27d71a8
Integration test: referencesMany
2014-07-30 15:01:22 +02:00
Fabien Franzen
514db0bc66
Integration test: embedsMany
2014-07-30 13:24:40 +02:00
Raymond Feng
e5b0e8cd70
Map exists to HEAD for REST
2014-07-28 09:37:50 -07:00
Raymond Feng
567e2530d7
Build the email verification url from app context
...
https://github.com/strongloop/loopback/issues/408
2014-07-26 22:39:42 -07:00
Raymond Feng
5bb4cde593
Update test case to remove usage of deprecated express apis
2014-07-26 14:37:13 -07:00
Raymond Feng
af26e09845
Emit a 'modelRemoted' event by app.model()
...
This event will be listened by loopback-explorer so that models remoted
after the explorer is initiated will be added to the api specs
2014-07-24 17:00:27 -07:00
Raymond Feng
ac1428eff5
Fix for email transports
2014-07-23 22:09:24 -07:00
Raymond Feng
13c876c154
Merge pull request #387 from strongloop/feature/fix-base-model
...
Set up the base model based on the connector types
2014-07-22 10:58:33 -07:00
Raymond Feng
7337f0a0de
Enhance the base model assertions
2014-07-22 10:57:42 -07:00
Raymond Feng
335bae4b46
Merge branch 'master' into feature/fix-issue-377
2014-07-22 10:49:20 -07:00
Raymond Feng
21b8609ee2
Report error for User.confirm()
...
See https://github.com/strongloop/loopback/issues/377
2014-07-22 10:42:22 -07:00
Raymond Feng
643293cc25
Set up the base model based on the connector types
2014-07-22 10:38:14 -07:00
Raymond Feng
74e9ff75e3
Merge pull request #385 from offlinehacker/master
...
Validate username uniqueness
2014-07-21 15:26:01 -07:00
Raymond Feng
0dae813d5f
Merge pull request #375 from strongloop/feature/upgrade-to-nodemailer-1.x
...
Upgrade to nodemailer 1.0.1
2014-07-21 11:58:17 -07:00
Miroslav Bajtoš
eb5ef04b6a
Remove `loopback.compat.usePluralNamesForRemoting`
...
The `usePluralNamesForRemoting` was added in January 2014 for users
upgrading from LoopBack 1.5 or older.
2014-07-21 16:56:46 +02:00
Jaka Hudoklin
90094e5e86
Validate username uniqueness
...
Signed-off-by: Jaka Hudoklin <jakahudoklin@gmail.com>
2014-07-19 14:18:21 +02:00
Raymond Feng
e5b64c6143
Upgrade to nodemailer 1.0.1
2014-07-16 12:40:15 -07:00
Raymond Feng
79f504a3c7
Merge branch 'master' into 2.0
2014-07-16 09:09:07 -07:00
Raymond Feng
7b36196561
Merge pull request #362 from strongloop/feature/remoting-add-remove
...
Add a test case for hasMany through add/remove remoting
2014-07-15 16:15:27 -07:00
Raymond Feng
54b13f4feb
Upgrade to loopback-datasource-juggler@1.7.0
2014-07-15 16:15:02 -07:00
Raymond Feng
c5c28aa634
Merge pull request #368 from strongloop/feature/loopback-base-model
...
Refactor modelBuilder to registry and set up default model
2014-07-15 08:38:43 -07:00
Raymond Feng
3c13ce5a8f
Refactor modelBuilder to registry and set up default model
2014-07-15 08:37:59 -07:00
Raymond Feng
76b6dc10d9
Add a test case for credentials/challenges
2014-07-15 08:20:47 -07:00
Miroslav Bajtoš
31ef6394b4
checkpoint: fix `current()`
...
Fix the query in `Checkpoint.current()` to correctly specify sorting
`seq DESC`. Before this change, the first checkpoint was returned as the
current one.
2014-07-11 17:07:22 +02:00
Raymond Feng
74a39f3fc2
Refactor email verification tests into a new group
2014-07-08 08:54:50 -07:00
Raymond Feng
0c67b1e781
Add an option to honor emailVerified
...
See https://github.com/strongloop/loopback/pull/215
2014-07-07 14:09:45 -07:00
Raymond Feng
f649c92bcf
Refine the test cases for relation REST APIs
2014-07-03 11:18:34 -07:00
Miroslav Bajtoš
f0cc5f7534
test: add check of Model remote methods
...
The test ensures that Model has all methods listed in docs:
http://docs.strongloop.com/display/LB/Exposing+models+over+a+REST+API
See also #359 .
2014-07-03 08:19:41 +02:00
Raymond Feng
0525f2c896
Adjust the REST mapping for add/remove
2014-07-02 23:06:11 -07:00
Raymond Feng
b221714b38
Add a test case for hasMany through add/remove remoting
2014-07-02 18:09:05 -07:00
Raymond Feng
217c9fa348
Fix the typo and add Bearer token support
...
See https://github.com/strongloop/loopback/issues/333
2014-07-02 09:02:13 -07:00
Miroslav Bajtoš
8ea11ea955
Merge branch 'master' into 2.0
...
Land the pull request #357
> app: update `url` on `listening` event
2014-07-01 16:18:00 +02:00
Miroslav Bajtoš
dfa8d7f49f
app: update `url` on `listening` event
...
Most applications report the URL when started (at least the apps we
are scaffolding using loopback-workspace). Constructing the URL in the
loopback core allows us to simplify the templates and reduce the amount
of repeated code.
2014-07-01 14:27:02 +02:00
Miroslav Bajtoš
50816ebbe3
Fix loopback in PhantomJS, fix karma tests
...
- Move configuration of Karma unit-tests from `Gruntfile.js` to a
standalone file (`test/karma.conf.js`).
- Add a new Grunt task `karma:unit-ci` to run Karma unit-tests in
PhantomJS and produce karma-xunit.xml file that can be consumed
by the CI server.
- Add grunt-mocha-test, configure it to run unit-tests.
- Add `grunt test` task that runs both karma and mocha tests,
detects Jenkins to produce XML output on CI server.
- Modify the `test` script in `package.json` to run
`grunt mocha-and-karma` (an alias for `grunt test`).
The alias is required to trick `sl-ci-run` to run `npm test`
instead of calling directly `mocha`.
- Add `es5-shim` module to karma unit-tests in order to provide
ES5-methods required by LoopBack.
- Fix `mixin(source)` in lib/loopback.js to work in PhantomJS.
`Object.getOwnPropertyDescriptor()` provided by `es5-shim` does not
work in the same way as in Node.
2014-06-26 13:30:09 +02:00
Miroslav Bajtoš
c896c78db0
Remove `app.boot`
...
Modify `app.boot` to throw an exception, pointing users to the new
module `loopback-boot`.
2014-06-25 14:09:06 +02:00
Raymond Feng
9eab7d62d3
Merge branch 'master' into 2.0
2014-06-20 23:48:46 -07:00
Raymond Feng
b44dac3c62
Merge branch 'master' into 2.0
2014-06-20 23:08:35 -07:00
Raymond Feng
9b5d7417a2
Remove relationNameFor
2014-06-20 21:25:27 -07:00
Raymond Feng
d5ed57e60d
Merge pull request #254 from strongloop/feature/role-id
...
Set the role id to be generated
2014-06-17 10:37:06 -07:00
Miroslav Bajtoš
7316048afc
lib/registry: `getModel` throws, add `findModel`
...
Rename `loopback.getModel` to `loopback.findModel`.
Implement `loopback.getModel` as a wrapper around `findModel` that
throws an error when the model as not found.
2014-06-16 16:13:24 +02:00
Miroslav Bajtoš
56c7a6b3c5
Merge branch 'master' into 2.0
...
Conflicts:
test/access-token.test.js
2014-06-16 10:20:22 +02:00
Miroslav Bajtoš
8826b6396a
Merge pull request #306 from karlmikko/master
...
Ability to return 401 and 403 response codes #301
2014-06-14 09:44:22 +02:00
Miroslav Bajtoš
d2517d8236
Merge branch 'master' into 2.0
2014-06-14 09:40:57 +02:00
Karl Mikkelsen
a90a5c7e58
Allow customization of ACL http status
...
emulate existing error on 404
new tests for model and app settings
Signed-off-by: Karl Mikkelsen <karl@karlmikko.com>
2014-06-14 11:31:15 +10:00
Miroslav Bajtoš
c4db83ad43
Expose loopback as `app.loopback`
...
The primary intention is to allow loopback plugins to determine
the version of the loopback framework from the `app` object.
2014-06-13 10:34:51 +02:00
Miroslav Bajtoš
d21669b844
Merge branch 'master' into 2.0
...
Conflicts:
docs.json
lib/application.js
lib/loopback.js
lib/models/data-model.js
lib/models/model.js
lib/models/user.js
lib/registry.js
package.json
test/app.test.js
2014-06-13 10:09:25 +02:00
Miroslav Bajtoš
362cceb70a
Merge createModelFromConfig with createModel
...
Merge the two methods `loopback.createModel` and
`loopback.createModelFromConfig` into a single method `createModel`.
2014-06-12 10:41:45 +02:00
Miroslav Bajtoš
f0ff40d3f7
test: add debug logs
...
Add debug logs to troubleshoot two unit tests failing
on the CI server only.
2014-06-12 10:41:44 +02:00
Miroslav Bajtoš
fc0fad4a9f
Add createModelFromConfig and configureModel()
...
Add new API allowing developers to split the model definition and
configuration into two steps:
1. Build models from JSON config, export them for re-use:
```js
var Customer = loopback.createModelFromConfig({
name: 'Customer',
base: 'User',
properties: {
address: 'string'
}
});
```
2. Attach existing models to a dataSource and a loopback app,
modify certain model aspects like relations:
```js
loopback.configureModel(Customer, {
dataSource: db,
relations: { /* ... */ }
});
```
Rework `app.model` to use `loopback.configureModel` under the hood.
Here is the new usage:
```js
var Customer = require('./models').Customer;
app.model(Customer, {
dataSource: 'db',
relations: { /* ... */ }
});
```
In order to preserve backwards compatibility,
`app.model(name, config)` calls both `createModelFromConfig`
and `configureModel`.
2014-06-12 10:41:44 +02:00
Miroslav Bajtoš
3deadcd180
test: fix ACL integration tests
...
Change the tests creating new users so that they send valid user data,
in order to prevent 422 "validation failed" responses.
Upgrade loopback-testing to 0.2.0.
2014-06-12 10:33:40 +02:00
Raymond Feng
e72ff61d99
Add a test case
2014-06-10 16:39:32 -07:00
Raymond Feng
7769174d58
Tidy up app.model() to remove duplicate & recusrive call
2014-06-09 23:53:01 -07:00
Raymond Feng
815ad53aa4
Register existing model to app.models during app.model()
2014-06-09 16:31:33 -07:00
Raymond Feng
6b4ebdf609
Allow the creation of access token to be overriden
2014-06-09 14:53:55 -07:00
Miroslav Bajtoš
56aab8dbdd
Merge createModelFromConfig with createModel
...
Merge the two methods `loopback.createModel` and
`loopback.createModelFromConfig` into a single method `createModel`.
2014-06-09 11:18:52 +02:00
Miroslav Bajtoš
1de6325a80
test: add debug logs
...
Add debug logs to troubleshoot two unit tests failing
on the CI server only.
2014-06-06 14:51:43 +02:00
Miroslav Bajtoš
5f1c3a86eb
Merge pull request #304 from strongloop/feature/createModelFromConfig
...
[2.0] Add createModelFromConfig and configureModel()
2014-06-06 10:27:03 +02:00
Miroslav Bajtoš
f844459311
Add createModelFromConfig and configureModel()
...
Add new API allowing developers to split the model definition and
configuration into two steps:
1. Build models from JSON config, export them for re-use:
```js
var Customer = loopback.createModelFromConfig({
name: 'Customer',
base: 'User',
properties: {
address: 'string'
}
});
```
2. Attach existing models to a dataSource and a loopback app,
modify certain model aspects like relations:
```js
loopback.configureModel(Customer, {
dataSource: db,
relations: { /* ... */ }
});
```
Rework `app.model` to use `loopback.configureModel` under the hood.
Here is the new usage:
```js
var Customer = require('./models').Customer;
app.model(Customer, {
dataSource: 'db',
relations: { /* ... */ }
});
```
In order to preserve backwards compatibility with loopback 1.x,
`app.model(name, config)` calls both `createModelFromConfig`
and `configureModel`.
2014-06-05 17:47:28 +02:00
Miroslav Bajtoš
ea5b9d16fc
Rename DataModel to PersistedModel
2014-06-05 09:56:00 +02:00
Miroslav Bajtoš
26874fc715
Make app.get/app.set available in browser
...
Implement settings object and methods in browser-express.
Add test/app.test.js to unit-tests run by karma.
2014-06-03 21:32:27 +02:00
Ritchie Martori
fea1cee1c4
!fixup only set ctx.accessType when sharedMethod is available
2014-06-02 14:41:08 -07:00
Ritchie Martori
a2f931ed3f
Refactor ACL to allow for `methodNames` / aliases
2014-06-02 14:41:08 -07:00
Raymond Feng
663e2d1903
Merge pull request #293 from strongloop/feature/express-4.x
...
Upgrade to Express 4.x
2014-06-02 08:26:35 -07:00
Miroslav Bajtoš
5b53da93db
test: Remove forgotten call of `console.log()`
...
The `console.log()` call was added by 94ec5c2
.
2014-06-02 08:34:08 +02:00
Raymond Feng
3c7cfcaca8
Clean up the tests
2014-05-29 10:18:14 -07:00
Raymond Feng
49380e490f
Upgrade to Express 4.x
2014-05-29 08:44:05 -07:00
Miroslav Bajtoš
18fd61a546
Merge branch 'master' into 2.0
2014-05-28 18:41:36 +02:00
Miroslav Bajtoš
94ec5c294a
app: implement `connector()` and `connectors`
...
Allow browserified applications to explicitly register connectors
to use in data-sources via `app.connector(name, exportsFromRequire)`.
Include built-in connectors like `Memory` and `Remote` in the registry.
Modify `dataSourcesFromConfig()` to resolve the connector via
`app.connectors` first and only then fall back to auto-require
the connector module.
2014-05-28 15:11:43 +02:00
Miroslav Bajtoš
7cfe450161
Make app.datasources unique per app instance
...
This removes a source of confusion in unit-tests.
2014-05-27 14:33:42 +02:00
Miroslav Bajtoš
227c2d05cd
app: flatten model config
...
Support flat structure of model config objects, where model options
are set as top-level properties.
Before:
Customer: {
dataSource: 'db',
options: {
base: 'User'
}
}
Now:
Customer: {
dataSource: 'db',
base: 'User'
}
2014-05-27 08:10:20 +02:00
Raymond Feng
ed0b568542
Fix the test for mocha 1.19.0
...
See 6c705cd4d4
2014-05-26 21:52:48 -07:00