Running my first truffle file, Cannot find module 'babel-register' - npm

I am working on building the marketplace dapp from dapp university on Youtube. While running truffle compile it gives me the following error
Error: Cannot find module 'babel-register'
In this answer: Error: Cannot find module 'babel-register' someone suggested that I delete package-lock and do npm install again.
but when I searched up how to delete package-lock,I found this Deleting `package-lock.json` to Resolve Conflicts quickly which pretty much says that "don't ever delete package-lock.json."
I am a beginner, any help is appreciated.

Keep in mind that some of the dependencies in that source code are outdated.
I avoided this specific issue by running npm audit fix --force after npm install
I then ran npm install -g npm-check-updates to update all of the packages.
ncu -u will also upgrade those dependecies directly in the json.
Finally, npm update
truffle compile should now work as expected.
Good luck in your blockchain development! I'm just starting myself :)

Related

Cannot find module ‘#expo/metro-config’ when trying to start the project with expo cli >= 4.8.0

I recently tried to launch my project on a new computer. I downloaded the source code from its repository and ran npm install to get all the needed packages.
However, when I run npm start or expo start:web, I get the error:
Cannot find module '#expo/metro-config'
I ran npm install #expo/metro-config and the install run without issue, but I still get the “Cannot find module '#expo/metro-config'” error.
The only post I saw regarding this error recommends editing the metro.config.js but I do not use one.
I am on SDK 42, and the project launches fine on my other computer. Any idea what is happening?
FYI, I use to perform this whole operation without any issue until now.
UPDATE:
I ran npm install -g #expo/metro-config and now I get the error Cannot find module 'resolve-from'
So it looks like maybe running npm install -g expo-cli doesn't actually install all the necessary packages? Could it be the issue?
I managed to make it "work" (get other missing packages errors down the line) by reverting to expo-cli 4.7.3. Anything from 4.8.0 and above will cause the error.
Something else is that on a fresh npm install, after running npm install -g expo-cli, if I try to create a project with expo init, I will get the error Error: Cannot find module 'kleur'. Running npm install kleur fix it, but maybe that's also a clue.

How can resolve the NPM issue? Stuck with npm start error

The issue I have is that npm start cannot start. I tried to fix with audit, deleted node_dependency directory and re-installed with npm, nothing works.
One concrete issue I see is:
The react-scripts package provided by Create React App requires a dependency:
"webpack": "4.44.2"
Yet, I also see npm -v webpack -> 6.14.14. How do I need to debug this?
Your npm -v webpack command is not correct. it will return npm version and not the webpack version.
Try npm ls webpack . you can also check your package.json file for the packages you have. or run npm ls for the full list.
make sure to install the required dependency as it states.
Eventually I could not solve the package problem with an informed debugging.
What I did was to (npm install --global yarn) and start the application through it (yarn start). It worked a lot to download the packages and eventually started the application.
So, I guess I need to switch to yarn after this point, which is ok, as long as it works :)

Mongo-express | Patch file found for package mongodb-query-parser

I am trying to get rid of the following error message.
patch-package 6.2.2
Applying patches...
Error: Patch file found for package mongodb-query-parser which is not present at node_modules/mongodb-query-parser
This message appears when I try to install mongo-express. Locally this is no problem, because npm install keeps progressing after the error message.
But when I try to run it on gitlab-pipeline it exits the job.
Is there any workaround?
Temporary quick fix is to install mongo-express without the postinstall.
npm install mongo-express --ignore-scripts && npm install
That way the patch-package isn't called and at least the CI doesn't break. But I'm not sure how unsecure this is...
Hopefully going to be fix soon! I opened an issue
Cheers

NPM deprecated package makes install fail

I am struggling to understand why trying to run a npm install fails when one of the packages in the list is deprecated. A warning shouldn't make the command fail, shouldn't it?
I found the culprit PR. They created a version that hard breaks..
https://github.com/aspnet/SignalR/pull/2057
Got to love MS..

Diagnosing npm’s “invalid” error in package list

When I do npm list --global, one package, phonegap, shows as invalid.
npm ERR! invalid: phonegap#5.0.0-0.28.1 /usr/local/lib/node_modules/phonegap
No other packages have any errors or problems. I’ve tried to look into this, and learned that the message means a dependency is unfulfilled, but I can’t figure out which one. If I run npm update --global phonegap it exits cleanly, with no errors.
I originally installed npm & node via Homebrew, if that’s relevant. Here’s my full list of globally installed packages.
How do I diagnose this?
Have you tried changing the permissions for that package? I recently had a similar problem with global packages and it turned out to be a permissions issue
https://docs.npmjs.com/getting-started/fixing-npm-permissions