Based on discussion in yarnpkg/yarn#2853
yarn --version
> 0.21.3
npm --version
> 4.3.0
tl;dr npm
scripts !== yarn
scripts
(they sometimes execute different sets of scripts depending on if it's a dep of a dep,
or if it's a local file, etc)
Click to expand
git clone --branch v2.0.0 https://github.com/jesstelford/npm-scripts-test.git
cd npm-scripts-test
npm install
git clone --branch v2.0.0 https://github.com/jesstelford/npm-scripts-test.git
cd npm-scripts-test
yarn
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
--- a/yarn-scripts
+++ b/npm-scripts
@@ -2,4 +2,3 @@ npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
+npm-scripts-test.prepare
Click to expand
git clone --branch v2.0.0 https://github.com/jesstelford/npm-scripts-test.git
mkdir test-single-level-npm
cd test-single-level-npm
npm init -y .
npm install --save ../npm-scripts-test
git clone --branch v2.0.0 https://github.com/jesstelford/npm-scripts-test.git
mkdir test-single-level-yarn
cd test-single-level-yarn
yarn init -y .
yarn add file:../npm-scripts-test
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
--- a/npm-scripts
+++ b/yarn-scripts
@@ -1,9 +1,3 @@
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
-npm-scripts-test.prepublish
-npm-scripts-test.prepublish
-npm-scripts-test.prepare
-npm-scripts-test.preinstall
-npm-scripts-test.install
-npm-scripts-test.postinstall
Click to expand
See npm-scripts-test-parent/package.json@v1.0.0
git clone --branch v1.0.0 https://github.com/jesstelford/npm-scripts-test-parent.git
mkdir test-dep-of-dep-npm
cd test-dep-of-dep-npm
npm init -y .
npm install --save ../npm-scripts-test-parent
git clone --branch v1.0.0 https://github.com/jesstelford/npm-scripts-test-parent.git
mkdir test-dep-of-dep-yarn
cd test-dep-of-dep-yarn
yarn init -y .
yarn add file:../npm-scripts-test-parent
(output is the same for both npm
& yarn
)
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
Click to expand
See npm-scripts-test-parent/package.json@v1.0.0
git clone --branch v1.0.0 https://github.com/jesstelford/npm-scripts-test-parent.git
mkdir test-dep-of-dep-npm
cd test-dep-of-dep-npm
npm init -y .
npm install --save ../npm-scripts-test-parent
npm install --save ../npm-scripts-test
rm -rf node_modules
npm install
git clone --branch v1.0.0 https://github.com/jesstelford/npm-scripts-test-parent.git
mkdir test-dep-of-dep-yarn
cd test-dep-of-dep-yarn
yarn init -y .
yarn add file:../npm-scripts-test-parent
yarn add file:../npm-scripts-test
rm -rf node_modules yarn.lock
yarn
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
--- a/npm-scripts
+++ b/yarn-scripts
@@ -1,9 +1,3 @@
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
-npm-scripts-test.prepublish
-npm-scripts-test.prepublish
-npm-scripts-test.prepare
-npm-scripts-test.preinstall
-npm-scripts-test.install
-npm-scripts-test.postinstall
Click to expand
npm init -y .
npm install --save npm-scripts-test@2.0.0
yarn init -y .
yarn add npm-scripts-test@2.0.0
(output is the same for both npm
& yarn
)
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
Click to expand
See npm-scripts-test-parent/package.json@v1.0.0
npm init -y .
npm install --save npm-scripts-test-parent@1.0.0
yarn init -y .
yarn add npm-scripts-test-parent@1.0.0
(output is the same for both npm
& yarn
)
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
Click to expand
See npm-scripts-test-parent/package.json@v1.0.0
npm init -y .
npm install --save npm-scripts-test-parent@1.0.0
npm install --save npm-scripts-test@2.0.0
rm -rf node_modules
npm install
yarn init -y .
yarn add npm-scripts-test-parent@1.0.0
yarn add npm-scripts-test@2.0.0
rm -rf node_modules yarn.lock
yarn
(output is the same for both npm
& yarn
)
cat node_modules/npm-scripts-test/scripts
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.prepublish
npm-scripts-test.prepare
npm-scripts-test.preinstall
npm-scripts-test.install
npm-scripts-test.postinstall