diff --git a/lib/application.js b/lib/application.js index 9520afd0f8..4d3b86f3dd 100644 --- a/lib/application.js +++ b/lib/application.js @@ -1,6 +1,8 @@ 'use strict'; -var Proto = require('uberproto'); +var Proto = require('uberproto').extend({ + create: null +}); var _ = require('lodash'); var mixins = require('./mixins'); @@ -8,11 +10,6 @@ var stripSlashes = function (name) { return name.replace(/^\/|\/$/g, ''); }; -// We do not want to support Uberproto's create functionality -// Since our service methods have a method with the same name -Proto._create = Proto.create; -delete Proto.create; - module.exports = { init: function () { _.extend(this, { diff --git a/lib/mixins/promise.js b/lib/mixins/promise.js index 6588599231..4449250614 100644 --- a/lib/mixins/promise.js +++ b/lib/mixins/promise.js @@ -19,8 +19,10 @@ var makeWrapper = function() { module.exports = function (service) { if (typeof service.mixin === 'function') { - var mixin = _.transform(_.pick(service, this.methods), function(result, num, key) { - result[key] = makeWrapper(); + var mixin = _.transform(_.pick(service, this.methods), function(result, value, key) { + if(typeof value === 'function') { + result[key] = makeWrapper(); + } }); service.mixin(mixin); diff --git a/package.json b/package.json index a871e57d49..9322334fc5 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "express": "^4.0.0", "body-parser": "^1.0.2", "feathers-errors": ">=0.2.0", - "lodash": "^2.4.1", + "lodash": "^3.1.0", "primus": "^2.4.0", "primus-emitter": "^3.0.2", "rubberduck": "^1.0.0", @@ -55,7 +55,6 @@ "q": "^1.0.1", "request": "^2.x", "socket.io-client": "^1.0.0", - "sockjs": "^0.3.9", - "sockjs-client-node": "^0.1.1" + "ws": "^0.7.1" } } diff --git a/test/mixins/event.test.js b/test/mixins/event.test.js index 744b6bb9af..dbf20dc7a0 100644 --- a/test/mixins/event.test.js +++ b/test/mixins/event.test.js @@ -5,7 +5,7 @@ var _ = require('lodash'); var Proto = require('uberproto'); var mixinEvent = require('../../lib/mixins/event'); var EventMixin = mixinEvent.Mixin; -var create = Proto._create; +var create = Proto.create; describe('Event mixin', function () { it('initializes', function () { diff --git a/test/mixins/promise.test.js b/test/mixins/promise.test.js index 6bd63f7df9..e8e1927ea4 100644 --- a/test/mixins/promise.test.js +++ b/test/mixins/promise.test.js @@ -2,7 +2,7 @@ var assert = require('assert'); var Proto = require('uberproto'); -var create = Proto._create; +var create = Proto.create; var q = require('q'); var _ = require('lodash'); diff --git a/test/providers/primus.test.js b/test/providers/primus.test.js index 0cd851032e..56a236329b 100644 --- a/test/providers/primus.test.js +++ b/test/providers/primus.test.js @@ -12,13 +12,13 @@ describe('Primus provider', function () { var server, socket, app, socketParams = { user: { name: 'David' }, - provider: 'sockjs' + provider: 'websockets' }; before(function () { app = feathers() .configure(feathers.primus({ - transformer: 'sockjs' + transformer: 'websockets' }, function(primus) { socket = new primus.Socket('http://localhost:7888');