error: this.$opPromise.then is not a function
```
$ npm i

> crocodile@1.0.2 prepublish /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> npm test


> crocodile@1.0.2 test /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> npm run lint && npm run compile && npm run coverage


> crocodile@1.0.2 lint /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> eslint .


> crocodile@1.0.2 compile /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> rm -rf lib && node_modules/.bin/babel -d lib src -s --ignore src/assets && gulp build

src/agenda.js -> lib/agenda.js
src/api.js -> lib/api.js
src/app/controllers/api/index.js -> lib/app/controllers/api/index.js
src/app/controllers/api/v1/index.js -> lib/app/controllers/api/v1/index.js
src/app/controllers/api/v1/users.js -> lib/app/controllers/api/v1/users.js
src/app/controllers/index.js -> lib/app/controllers/index.js
src/app/controllers/web/index.js -> lib/app/controllers/web/index.js
src/app/models/inquiry.js -> lib/app/models/inquiry.js
src/app/models/job.js -> lib/app/models/job.js
src/app/models/plugins/common.js -> lib/app/models/plugins/common.js
src/app/models/user.js -> lib/app/models/user.js
src/config/environments/development.js -> lib/config/environments/development.js
src/config/environments/index.js -> lib/config/environments/index.js
src/config/environments/production.js -> lib/config/environments/production.js
src/config/environments/staging.js -> lib/config/environments/staging.js
src/config/environments/test.js -> lib/config/environments/test.js
src/config/i18n.js -> lib/config/i18n.js
src/config/index.js -> lib/config/index.js
src/config/locales.js -> lib/config/locales.js
src/helpers/_404-handler.js -> lib/helpers/_404-handler.js
src/helpers/check-license.js -> lib/helpers/check-license.js
src/helpers/context-helpers.js -> lib/helpers/context-helpers.js
src/helpers/dynamic-view-helpers.js -> lib/helpers/dynamic-view-helpers.js
src/helpers/i18n.js -> lib/helpers/i18n.js
src/helpers/index.js -> lib/helpers/index.js
src/helpers/logger.js -> lib/helpers/logger.js
src/helpers/mongoose.js -> lib/helpers/mongoose.js
src/helpers/passport.js -> lib/helpers/passport.js
src/helpers/policies.js -> lib/helpers/policies.js
src/helpers/render-page.js -> lib/helpers/render-page.js
src/helpers/sentry.js -> lib/helpers/sentry.js
src/helpers/timeout.js -> lib/helpers/timeout.js
src/helpers/update-notifier.js -> lib/helpers/update-notifier.js
src/jobs/index.js -> lib/jobs/index.js
src/routes/api/index.js -> lib/routes/api/index.js
src/routes/api/v1/index.js -> lib/routes/api/v1/index.js
src/routes/index.js -> lib/routes/index.js
src/routes/web/admin.js -> lib/routes/web/admin.js
src/routes/web/auth.js -> lib/routes/web/auth.js
src/routes/web/index.js -> lib/routes/web/index.js
src/web.js -> lib/web.js
[17:48:38] Requiring external module babel-register
error: ENOENT: no such file or directory, open '.env'
error: ENOENT: no such file or directory, open '.env'
[17:48:40] Using gulpfile ~/mysrc/weisjohn/crocodile-node-mvc-framework/gulpfile.babel.js
[17:48:40] Starting 'build'...
[17:48:40] Starting 'lint'...
[17:48:41] Finished 'lint' after 420 ms
[17:48:41] Starting 'css'...
[17:48:41] Finished 'css' after 670 ms
[17:48:41] Starting 'img'...
[17:48:41] Starting 'lint'...
[17:48:41] Starting 'static'...
[17:48:41] Starting 'emails'...
[17:48:41] Finished 'lint' after 143 ms
[17:48:41] Starting 'js'...
[17:48:41] Finished 'static' after 193 ms
[17:48:42] gulp-imagemin: Minified 5 images (saved 3.29 kB - 10.3%)
[17:48:42] Finished 'img' after 713 ms
[17:48:42] Finished 'emails' after 769 ms
[17:48:44] Finished 'js' after 2.92 s
[17:48:44] Finished 'build' after 4.15 s

> crocodile@1.0.2 coverage /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> rm -rf coverage/ && npm run analyze-coverage && npm run check-coverage && node_modules/.bin/codecov


> crocodile@1.0.2 analyze-coverage /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework
> babel-node node_modules/.bin/istanbul cover node_modules/.bin/_mocha

error: ENOENT: no such file or directory, open '.env'
error: ENOENT: no such file or directory, open '.env'
debug: will use /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/src/locales/en.json
debug: read /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/src/locales/en.json for locale: en

   ╭───────────────────────────────────────────────────────────────────────────────────────────╮
   │                                                                                           │
   │                   CrocodileJS commercial license key was not detected.                    │
   │                                                                                           │
   │         Using for commercial purposes? Purchase your license + get free t-shirt!          │
   │                                                                                           │
   │                   Run crocodile license or visit the website link below                   │
   │                                                                                           │
   │   Already have a license key?  Add it to your .crocodile.yml file to hide this message.   │
   │                                                                                           │
   │                                  https://crocodilejs.com                                  │
   │                                                                                           │
   ╰───────────────────────────────────────────────────────────────────────────────────────────╯


   ╭───────────────────────────────────────────────────────────────────────────────────────────╮
   │                                                                                           │
   │                   CrocodileJS commercial license key was not detected.                    │
   │                                                                                           │
   │         Using for commercial purposes? Purchase your license + get free t-shirt!          │
   │                                                                                           │
   │                   Run crocodile license or visit the website link below                   │
   │                                                                                           │
   │   Already have a license key?  Add it to your .crocodile.yml file to hide this message.   │
   │                                                                                           │
   │                                  https://crocodilejs.com                                  │
   │                                                                                           │
   ╰───────────────────────────────────────────────────────────────────────────────────────────╯



error: this.$opPromise.then is not a function
{ stack: 'TypeError: this.$opPromise.then is not a function\n    at MongooseThenable.then (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/mongoose/lib/index.js:780:26)\n    at process._tickDomainCallback (internal/process/next_tick.js:129:7)\n    at Function.Module.runMain (module.js:592:11)\n    at runFn (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/istanbul/lib/command/cover.js:126:16)\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/istanbul/lib/command/cover.js:146:9\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/istanbul-api/lib/run-cover.js:187:16\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/istanbul-api/lib/file-matcher.js:69:16\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/async/lib/async.js:396:17\n    at done (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/async/lib/async.js:167:19)\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/async/lib/async.js:40:16\n    at /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/async/lib/async.js:393:21\n    at LOOP (fs.js:1739:14)\n    at _combinedTickCallback (internal/process/next_tick.js:67:7)\n    at process._tickDomainCallback (internal/process/next_tick.js:122:9)' }
info: attempting to reconnect in (3000) ms
  website
error: listen EADDRINUSE :::8080
{ stack: 'Error: listen EADDRINUSE :::8080\n    at Object.exports._errnoException (util.js:1036:11)\n    at exports._exceptionWithHostPort (util.js:1059:20)\n    at Server._listen2 (net.js:1252:14)\n    at listen (net.js:1288:10)\n    at Server.listen (net.js:1384:5)\n    at Context.<anonymous> (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/test/unit/01-website.test.js:7:21)\n    at callFnAsync (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/mocha/lib/runnable.js:362:21)\n    at Hook.Runnable.run (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/mocha/lib/runnable.js:314:7)\n    at next (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/mocha/lib/runner.js:303:10)\n    at Immediate.<anonymous> (/Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/node_modules/mocha/lib/runner.js:333:5)\n    at runCallback (timers.js:574:20)\n    at tryOnImmediate (timers.js:554:5)\n    at processImmediate [as _immediateCallback] (timers.js:533:5)' }

=============================== Coverage summary ===============================
Statements   : 54.76% ( 880/1607 )
Branches     : 30.07% ( 178/592 )
Functions    : 37.73% ( 83/220 )
Lines        : 55.64% ( 868/1560 )
================================================================================

npm ERR! Darwin 15.6.0
npm ERR! argv "/Users/john/.nvm/versions/node/v6.7.0/bin/node" "/Users/john/.nvm/versions/node/v6.7.0/bin/npm" "run" "analyze-coverage"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! crocodile@1.0.2 analyze-coverage: `babel-node node_modules/.bin/istanbul cover node_modules/.bin/_mocha`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the crocodile@1.0.2 analyze-coverage script 'babel-node node_modules/.bin/istanbul cover node_modules/.bin/_mocha'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the crocodile package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     babel-node node_modules/.bin/istanbul cover node_modules/.bin/_mocha
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs crocodile
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls crocodile
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/npm-debug.log

npm ERR! Darwin 15.6.0
npm ERR! argv "/Users/john/.nvm/versions/node/v6.7.0/bin/node" "/Users/john/.nvm/versions/node/v6.7.0/bin/npm" "run" "coverage"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! crocodile@1.0.2 coverage: `rm -rf coverage/ && npm run analyze-coverage && npm run check-coverage && node_modules/.bin/codecov`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the crocodile@1.0.2 coverage script 'rm -rf coverage/ && npm run analyze-coverage && npm run check-coverage && node_modules/.bin/codecov'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the crocodile package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     rm -rf coverage/ && npm run analyze-coverage && npm run check-coverage && node_modules/.bin/codecov
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs crocodile
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls crocodile
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/npm-debug.log
npm ERR! Test failed.  See above for more details.

npm ERR! Darwin 15.6.0
npm ERR! argv "/Users/john/.nvm/versions/node/v6.7.0/bin/node" "/Users/john/.nvm/versions/node/v6.7.0/bin/npm" "i"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! crocodile@1.0.2 prepublish: `npm test`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the crocodile@1.0.2 prepublish script 'npm test'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the crocodile package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm test
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs crocodile
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls crocodile
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/john/mysrc/weisjohn/crocodile-node-mvc-framework/npm-debug.log
```
