Skip to content

Warning: a promise was created in a handler but was not returned from it, see http://goo.gl/rRqMUw #2417

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
1 task done
Aabling opened this issue Dec 20, 2016 · 7 comments

Comments

@Aabling
Copy link

Aabling commented Dec 20, 2016

  • I understand that GitHub issues are not for tech support, but for questions specific to this generator, bug reports, and feature requests.
Item Version
generator-angular-fullstack x.x.x
Node 4.6.0
npm 4.0.2
Operating System Windows 10
etc etc
Item Answer
Transpiler Babel
Markup Pug
CSS SCSS
Router ui-router
Client Tests Mocha
DB SQL
Auth Y
etc etc

I just installed using yo angular-fullstack, when running the app I get an warning - any clue why?


Warning: a promise was created in a handler but was not returned from it, see http://goo.gl/rRqMUw
at Function.Promise.bind
(C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\bluebird\js\release\bind.js:65:20)
at processImmediate [as _immediateCallback] (timers.js:383:17)
From previous event:
at null.Model.findAll (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\sequelize\lib\model.js:1355:18)
at index (C:/Users/saa/OneDrive/Work/EUFREX/Website/EUFREX1/server/api/thing/thing.controller.js:68:16)
at Layer.handle [as handle_request]
(C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\route.js:131:13)
at Route.dispatch (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:277:22
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at Function.handle (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:176:3)
at router (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:46:12)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:91:12)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at checkCsrf (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\lusca\lib\csrf.js:74:20)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\lusca\index.js:48:21
at hsts (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\lusca\lib\hsts.js:25:9)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\lusca\index.js:48:21
From previous event:
at Promise.then (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\sequelize\lib\promise.js:21:17)
at E4Store.get (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express-sequelize-session\lib\e4store.js:56:12)
at session (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express-session\index.js:444:11)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at initialize (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\passport\lib\middleware\initialize.js:53:5)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at cookieParser (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\cookie-parser\index.js:70:5)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
at next (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:271:10)
at methodOverride (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\method-override\index.js:65:14)
at Layer.handle [as handle_request] (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:312:13)
at C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:280:7
at Function.process_params (C:\Users\saa\OneDrive\Work\EUFREX\Website\EUFREX1\node_modules\express\lib\router\index.js:330:12)
GET /api/things 304 51.262 ms - -
GET /assets/fonts/bootstrap/glyphicons-halflings-regular.woff 404 40.043 ms - 14
GET /assets/fonts/bootstrap/glyphicons-halflings-regular.ttf 404 11.941 ms - 14

@JoelParke
Copy link

JoelParke commented Dec 20, 2016

See #2412 for the answer and correction. Also, I believe that #2363 is a duplicate of this issue.

@Aabling
Copy link
Author

Aabling commented Dec 21, 2016

I tried that, but I am still getting the warning. I can see that I get the same warning whenever returning a sequelize model.

thing.controller.js:68

return Thing.findAll()
    .then(respondWithResult(res))
    .catch(handleError(res));

thing.controller.js:87

return Thing.create(req.body)
    .then(respondWithResult(res, 201))
    .catch(handleError(res));

thing.controller.js:125

return Thing.find({
    where: {
      _id: req.params.id
    }
  })
    .then(handleEntityNotFound(res))
    .then(removeEntity(res))
    .catch(handleError(res));

@Awk34
Copy link
Member

Awk34 commented Dec 26, 2016

This is an issue with Sequelize, please report it to them

@nstuyvesant
Copy link
Contributor

nstuyvesant commented Aug 13, 2017

@Awk34, I agree that the issue is upstream but it seems to be in express-sequelize-session 0.4.0 rather than sequelize.

In E4Store.get (express-sequelize-session/lib/e4store.js), the then() handler has two paths that make a callback without returning the promise. See lines 58 and 60 of e4store.js.

      E4Store.prototype.get = function(sid, callback) {
        return this.Session.findOne({
          where: {
            sid: sid
          },
          attributes: ['data']
        }).then(function(session) {
          if (session != null) {
            return typeof callback === "function" ? callback(null, JSON.parse(session.data)) : void 0;
          } else {
            return typeof callback === "function" ? callback(null, null) : void 0;
          }
        })["catch"](function(err) {
          return typeof callback === "function" ? callback(err, null) : void 0;
        });
      };

Changing

          if (session != null) {
            return typeof callback === "function" ? callback(null, JSON.parse(session.data)) : void 0;
          } else {
            return typeof callback === "function" ? callback(null, null) : void 0;
          }

to

          if (session != null && typeof callback === "function") {
            callback(null, JSON.parse(session.data));
          } else {
            callback(null, null);
          }
          return null;

fixes the warning.

I see Pull Request #3 from over a year ago was an attempt to address this but failed the checks.

Do you think this is the culprit other generator-angular-fullstack users are running into?

Here's the stack trace from my project:

(node:878) Warning: a promise was created in a handler at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13 but was not returned from it, see http://goo.gl/rRqMUw
    at Function.Promise.attempt.Promise.try (/Users/nates/dev/shy/node_modules/bluebird/js/release/method.js:29:9)
    at runCallback (timers.js:781:20)
    at tryOnImmediate (timers.js:743:5)
    at processImmediate [as _immediateCallback] (timers.js:714:5)
From previous event:
    at Function.findAll (/Users/nates/dev/shy/node_modules/sequelize/lib/model.js:1495:23)
    at index (/Users/nates/dev/shy/server/api/announcement/announcement.controller.js:19:23)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/Users/nates/dev/shy/node_modules/express/lib/router/route.js:112:3)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:281:22
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at Function.handle (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:174:3)
    at router (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:47:12)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:91:12)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at checkCsrf (/Users/nates/dev/shy/node_modules/lusca/lib/csrf.js:95:20)
    at /Users/nates/dev/shy/node_modules/lusca/index.js:59:28
    at hsts (/Users/nates/dev/shy/node_modules/lusca/lib/hsts.js:25:9)
    at /Users/nates/dev/shy/node_modules/lusca/index.js:59:28
    at xframe (/Users/nates/dev/shy/node_modules/lusca/lib/xframes.js:12:9)
    at /Users/nates/dev/shy/node_modules/lusca/index.js:59:28
    at xssProtection (/Users/nates/dev/shy/node_modules/lusca/lib/xssprotection.js:16:9)
    at /Users/nates/dev/shy/node_modules/lusca/index.js:59:28
    at lusca (/Users/nates/dev/shy/node_modules/lusca/index.js:64:9)
From previous event:
    at E4Store.get (/Users/nates/dev/shy/node_modules/express-sequelize-session/lib/e4store.js:56:12)
    at session (/Users/nates/dev/shy/node_modules/express-session/index.js:460:11)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at initialize (/Users/nates/dev/shy/node_modules/passport/lib/middleware/initialize.js:53:5)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at cookieParser (/Users/nates/dev/shy/node_modules/cookie-parser/index.js:70:5)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at methodOverride (/Users/nates/dev/shy/node_modules/method-override/index.js:65:14)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)
    at jsonParser (/Users/nates/dev/shy/node_modules/body-parser/lib/types/json.js:103:7)
    at Layer.handle [as handle_request] (/Users/nates/dev/shy/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:317:13)
    at /Users/nates/dev/shy/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:335:12)
    at next (/Users/nates/dev/shy/node_modules/express/lib/router/index.js:275:10)

@nstuyvesant
Copy link
Contributor

I should also note that express-sequelize-session has not been actively maintained for 2 years and is not recommended as a compatible store in the read me for express-session. I decided to switch to connect-session-sequelize and it got rid of the warning. Perhaps generator-angular-fullstack should consider replacing express-sequelize-session?

@Awk34
Copy link
Member

Awk34 commented Aug 14, 2017

@nstuyvesant yeah, it should be a fairly straightforward PR if you've got the time

@nstuyvesant
Copy link
Contributor

No problem... just added PR 2623.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants