Error: Cannot find module 'polka' on Heroku - node.js

I'm trying to deploy my sapper/svelte app to heroku but getting 'Error: Cannot find module 'polka'' this error. Interesting thing is that, it was perfectly fine and working. My package.json is correct and I am not checking my modules into git either. I tried disabling caching but it is no good. Anyone have any ideas?
2020-09-16T16:04:44.083385+00:00 app[web.1]: Error: Cannot find module 'polka'
2020-09-16T16:04:44.083386+00:00 app[web.1]: Require stack:
2020-09-16T16:04:44.083386+00:00 app[web.1]: - /app/__sapper__/build/server/server.js
2020-09-16T16:04:44.083386+00:00 app[web.1]: - /app/__sapper__/build/index.js
2020-09-16T16:04:44.083387+00:00 app[web.1]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
2020-09-16T16:04:44.083392+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:841:27)
2020-09-16T16:04:44.083392+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:1025:19)
2020-09-16T16:04:44.083393+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:72:18)
2020-09-16T16:04:44.083393+00:00 app[web.1]: at Object.<anonymous> (/app/__sapper__/build/server/server.js:4:13)
2020-09-16T16:04:44.083394+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:1137:30)
2020-09-16T16:04:44.083394+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
2020-09-16T16:04:44.083394+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:985:32)
2020-09-16T16:04:44.083395+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:878:14)
2020-09-16T16:04:44.083395+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:1025:19) {
2020-09-16T16:04:44.083396+00:00 app[web.1]: code: 'MODULE_NOT_FOUND',
2020-09-16T16:04:44.083396+00:00 app[web.1]: requireStack: [
2020-09-16T16:04:44.083397+00:00 app[web.1]: '/app/__sapper__/build/server/server.js',
2020-09-16T16:04:44.083397+00:00 app[web.1]: '/app/__sapper__/build/index.js'
2020-09-16T16:04:44.083397+00:00 app[web.1]: ]
2020-09-16T16:04:44.083398+00:00 app[web.1]: }

It turns out polka's version on my package.json was set to 'next'. So I changed it to it latest stable version and deleted package.lock.json file and ran 'npm install' to create a new lock file and then pushed it to heroku. Works perfectly fine.

Related

heroku opencv4nodejs error in deployement

Error in deployment. How to solve this?
2020-11-08T09:30:21.366810+00:00 app[web.1]: Error: libopencv_core.so.3.4: cannot open shared object file: No such file or directory
2020-11-08T09:30:21.366811+00:00 app[web.1]: at Object.Module._extensions..node (internal/modules/cjs/loader.js:1003:18)
2020-11-08T09:30:21.366812+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:812:32)
2020-11-08T09:30:21.366812+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:724:14)
2020-11-08T09:30:21.366812+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:849:19)
2020-11-08T09:30:21.366813+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:74:18)
2020-11-08T09:30:21.366813+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/opencv4nodejs/lib/cv.js:40:8)
2020-11-08T09:30:21.366813+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:956:30)
2020-11-08T09:30:21.366814+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10)
2020-11-08T09:30:21.366814+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:812:32)
2020-11-08T09:30:21.366814+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:724:14)
2020-11-08T09:30:21.366814+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:849:19)
2020-11-08T09:30:21.366815+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:74:18)
2020-11-08T09:30:21.366815+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/opencv4nodejs/lib/opencv4nodejs.js:11:79)
2020-11-08T09:30:21.366815+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:956:30)
2020-11-08T09:30:21.366816+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10)
2020-11-08T09:30:21.366816+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:812:32)
The app crashes everytime showing this error. How to fix this?
Follow the below steps in order to use Open CV inside Heroku
Add heroku-buildpack-apt to your Heroku Build packs. You can go to your app's settings page and add build packs.
Create a file named Aptfile and add the following libs: libsm6, libxrender1, libfontconfig1, libice6. Follow the example below:
libsm6
libxrender1
libfontconfig1
libice6

Unable to install npm package from github from package.json on heroku

I am using a package from github which is to be install from package.json file. But when I deploy the app on heroku, It is not able to install the package.
In package.json, I tried using different methods as below,
"sqlike": "git+https://username:access-token#github.com/vijjuu/SQLike.git"
"sqlike": "https://github.com/vijju/SQLike#master"
"sqlike": "https://github.com/vijjuu/SQLike/tarball/master"
"sqlike": "vijjuu/SQLike"
Error: Cannot find module 'SQLike'
2019-06-14T18:26:48.223971+00:00 app[web.1]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
2019-06-14T18:26:48.223973+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:562:25)
2019-06-14T18:26:48.223975+00:00 app[web.1]: at Module.require (internal/modules/cjs/loader.js:690:17)
2019-06-14T18:26:48.223976+00:00 app[web.1]: at require (internal/modules/cjs/helpers.js:25:18)
2019-06-14T18:26:48.223977+00:00 app[web.1]: at Object. (/app/server.js:2:18)
2019-06-14T18:26:48.223979+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:776:30)
2019-06-14T18:26:48.223980+00:00 app[web.1]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
2019-06-14T18:26:48.223982+00:00 app[web.1]: at Module.load (internal/modules/cjs/loader.js:653:32)
2019-06-14T18:26:48.223983+00:00 app[web.1]: at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
2019-06-14T18:26:48.223985+00:00 app[web.1]: at Function.Module._load (internal/modules/cjs/loader.js:585:3)
1) Your exporting your sql like but not importing it anywhere.
2) You don't have a server like ( node ) to run it on Heroku.

Node.js error: Cannot find module './decimal128'

I have a simple REST API deployed in Heroku. It uses MongoDB as the document storage service for the endpoints. It fails to run properly ever since I ran npm install to add another module for a different set of features. It doesn't matter what I do at that point, until I replace the node_modules folder (locally) with an older version before the last time I ran npm install, and re-deploy.
2018-08-03T16:12:14.920647+00:00 heroku[web.1]: Starting process with command npm start
2018-08-03T16:12:18.405746+00:00 app[web.1]:
2018-08-03T16:12:18.405762+00:00 app[web.1]: > todolistapi#1.0.0 start /app
2018-08-03T16:12:18.405764+00:00 app[web.1]: > node server.js
2018-08-03T16:12:18.405766+00:00 app[web.1]:
2018-08-03T16:12:18.593093+00:00 app[web.1]: /app
2018-08-03T16:12:18.594629+00:00 app[web.1]: /app
2018-08-03T16:12:19.115500+00:00 app[web.1]: module.js:549
2018-08-03T16:12:19.115542+00:00 app[web.1]: throw err;
2018-08-03T16:12:19.115544+00:00 app[web.1]: ^
2018-08-03T16:12:19.115545+00:00 app[web.1]:
2018-08-03T16:12:19.115547+00:00 app[web.1]: Error: Cannot find module './decimal128'
2018-08-03T16:12:19.115550+00:00 app[web.1]: at Function.Module._resolveFilename (module.js:547:15)
2018-08-03T16:12:19.115551+00:00 app[web.1]: at Function.Module._load (module.js:474:25)
2018-08-03T16:12:19.115553+00:00 app[web.1]: at Module.require (module.js:596:17)
2018-08-03T16:12:19.115554+00:00 app[web.1]: at require (internal/module.js:11:18)
2018-08-03T16:12:19.115556+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js:6:22)
2018-08-03T16:12:19.115558+00:00 app[web.1]: at Module._compile (module.js:652:30)
2018-08-03T16:12:19.115559+00:00 app[web.1]: at Object.Module._extensions..js (module.js:663:10)
2018-08-03T16:12:19.115561+00:00 app[web.1]: at Module.load (module.js:565:32)
2018-08-03T16:12:19.115562+00:00 app[web.1]: at tryModuleLoad (module.js:505:12)
2018-08-03T16:12:19.115564+00:00 app[web.1]: at Function.Module._load (module.js:497:3)
I read at least 10 other articles, and tried downgrading, reinstalling MongoDB with no success.
Issue: my local node_modules folders was being included in my push to Heroku. Once removed, the application runs fine on Heroku:
git rm -r --cached node_modules
git commit -m 'Remove the now ignored directory node_modules'
git push origin master

Heroku Cannot Find Module (Model File)

I am getting a model import error in my Node.js application when deploying to Heroku.
2016-02-10T20:40:04.712617+00:00 app[web.1]: > node ./bin/www
2016-02-10T20:40:04.712615+00:00 app[web.1]: > comic#0.0.0 start /app
2016-02-10T20:40:05.770633+00:00 app[web.1]: throw err;
2016-02-10T20:40:05.770629+00:00 app[web.1]: module.js:341
2016-02-10T20:40:05.770637+00:00 app[web.1]: at Function.Module._resolveFilename (module.js:339:15)
2016-02-10T20:40:05.770636+00:00 app[web.1]: Error: Cannot find module '../models/Comic'
2016-02-10T20:40:05.770638+00:00 app[web.1]: at Module.require (module.js:367:17)
2016-02-10T20:40:05.770634+00:00 app[web.1]: ^
2016-02-10T20:40:05.770640+00:00 app[web.1]: at Module._compile (module.js:413:34)
2016-02-10T20:40:05.770641+00:00 app[web.1]: at Object.Module._extensions..js (module.js:422:10)
2016-02-10T20:40:05.770639+00:00 app[web.1]: at require (internal/module.js:16:19)
2016-02-10T20:40:05.770642+00:00 app[web.1]: at Module.load (module.js:357:32)
2016-02-10T20:40:05.770637+00:00 app[web.1]: at Function.Module._load (module.js:290:25)
2016-02-10T20:40:05.770640+00:00 app[web.1]: at Object.<anonymous> (/app/routes/create.js:2:13)
2016-02-10T20:40:05.770643+00:00 app[web.1]: at Module.require (module.js:367:17)
2016-02-10T20:40:05.770642+00:00 app[web.1]: at Function.Module._load (module.js:314:12)
2016-02-10T20:40:05.804819+00:00 app[web.1]:
I have tried doing heroku run bash and running require('./models/Comic') from node session in app and require('../models/Comic') from within a subdirectory of /app/routes/ to test that require works.
The only instances of the require for Comic are in the three routes within the routes folder. They all have the exact same var myVar = require('../models/Comic');.
I figured out that heroku:
a) Takes the info from Git. Even though I had made case changes in my local files and pushed to Git, the case wasn't changed. Then when the file was required on heroku which uses Linux, it could not find the file.
b) Only changing the name of the file from heroku run bash didn't seem to have any affect. I am assuming I wasn't doing some sort of deployment step or that I needed to do something extra (I tried heroku restart but no dice).
Hope this can help someone else.

morgan won't load module 'debug' on Heroku

I have this in my express settings
var morgan = require("morgan");
app.use(morgan("dev"));
This works on my development macine, but crashes when I deploy to Heroku:
heroku[web.1]: Starting process with command `node server.js`
app[web.1]: Detected 512 MB available memory, 512 MB limit per process (WEB_MEMORY)
app[web.1]: Recommending WEB_CONCURRENCY=1
app[web.1]: at Module._compile (module.js:460:26)
app[web.1]: at Object.<anonymous> (/app/node_modules/morgan/index.js:16:13)
app[web.1]: at Function.Module._load (module.js:310:12)
app[web.1]: module.js:338
app[web.1]: at Module.require (module.js:365:17)
app[web.1]: throw err;
app[web.1]: at Module.load (module.js:355:32)
app[web.1]: at Object.Module._extensions..js (module.js:478:10)
app[web.1]: ^
app[web.1]: at Module.require (module.js:365:17)
app[web.1]: Error: Cannot find module 'debug'
app[web.1]: at Function.Module._resolveFilename (module.js:336:15)
app[web.1]: at Function.Module._load (module.js:278:25)
app[web.1]: at require (module.js:384:17)
heroku[web.1]: State changed from starting to crashed
I can replicate the problem by running node from the Heroku CLI, and trying to require morgan. Anyone have an idea what I'm doing wrong?
> var morgan = require("morgan");
Error: Cannot find module 'debug'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/app/node_modules/morgan/index.js:16:13)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
Line 16 of index.js reads var debug = require('debug')('morgan').
The debug module does lack an index.js, but has this in its package.json instead
"main": "./node.js",
"browser": "./browser.js",
"component": {
"scripts": {
"debug/index.js": "browser.js",
"debug/debug.js": "debug.js"
}
},
Turns out was something to do with an out-of-date package and updating to latest enabled me to progress

Resources