Avoiding having both `yarn.lock` and `package-lock.json`

patarapolw

Pacharapol Withayasakpunt

Posted on April 16, 2020

Avoiding having both `yarn.lock` and `package-lock.json`

This is possible with pre-install script to check for yarn.lock and package.json.

The closest I can find for this is,

GitHub logo sindresorhus / is-npm

Check if your code is running as an npm or yarn script

Now, I did ask the author to make CLI for me, but he didn't do exactly what I needed, so I made one myself.

GitHub logo patarapolw / check-npm-yarn

CLI to check NPM or Yarn if specified, or look for package-lock.json or yarn.lock

Now, there is still an extra step. "preinstall": "npx check-npm-yarn" alone might not be enough. To avoid npx and installing every time, I make it,

{
  "scripts": {
    "preinstall": "if command -v check-npm-yarn > /dev/null; then check-npm-yarn; fi"
  }
}
Enter fullscreen mode Exit fullscreen mode

An issue with NPM -- preinstall npm hook doesn’t execute when installing a specific package

I created nsi script for this.

nsi packageA packageB packageC ...
// Or nsi packageA packageB packageC ... --dev
Enter fullscreen mode Exit fullscreen mode

Related Topic

💖 💪 🙅 🚩
patarapolw
Pacharapol Withayasakpunt

Posted on April 16, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related