<h3 dir="auto">Current Behavior:</h3>
<p dir="auto">npm v7 does not install linked local packages dependencies.</p>
<h3 dir="auto">Expected Behavior:</h3>
<p dir="auto">In npm v6 the dependencies of a local linked package are installed. This means that if <code class="notranslate">app</code> has <code class="notranslate">my-local-pkg</code> as a dependency, running <code class="notranslate">npm install</code> generates <code class="notranslate">app/node_modules</code> folder and also <code class="notranslate">my-local-pkg/node_modules</code> (with its dependencies).<br>
In npm v7, however, only <code class="notranslate">app/node_modules</code> is generated.</p>
<h3 dir="auto">Steps To Reproduce:</h3>
<p dir="auto">I created the <a href="https://github.com/garciaalvaro/npm-deps-issue">following repository</a> to illustrate it. The <code class="notranslate">README.md</code> has the instructions on how to reproduce it.<br>
Simplified, the steps are:</p>
<ol dir="auto">
<li>Add the following folder structure: <code class="notranslate">./app</code> and <code class="notranslate">./my-local-pkg</code>, each with their own <code class="notranslate">package.json</code></li>
<li>Include this in the <code class="notranslate">./app/package.json</code>:</li>
</ol>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="{
  &quot;name&quot;: &quot;app&quot;,
  &quot;dependencies&quot;: {
    &quot;my-local-pkg&quot;: &quot;file:../my-local-pkg&quot;,
    &quot;prettier&quot;: &quot;^2.2.1&quot;
  }
}"><pre class="notranslate"><code class="notranslate">{
  "name": "app",
  "dependencies": {
    "my-local-pkg": "file:../my-local-pkg",
    "prettier": "^2.2.1"
  }
}
</code></pre></div>
<ol start="3" dir="auto">
<li>Include this in the <code class="notranslate">./my-local-pkg/package.json</code>:</li>
</ol>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="{
  &quot;name&quot;: &quot;my-local-pkg&quot;,
  &quot;dependencies&quot;: {
    &quot;typescript&quot;: &quot;^4.1.3&quot;
  }
}"><pre class="notranslate"><code class="notranslate">{
  "name": "my-local-pkg",
  "dependencies": {
    "typescript": "^4.1.3"
  }
}
</code></pre></div>
<ol start="4" dir="auto">
<li>Go to <code class="notranslate">./app</code> and run <code class="notranslate">npm install</code>.<br>
npm version 6 produces:</li>
</ol>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="node_modules
	.bin
	my-local-pkg
		node_modules
			typescript
	prettier"><pre class="notranslate"><code class="notranslate">node_modules
	.bin
	my-local-pkg
		node_modules
			typescript
	prettier
</code></pre></div>
<p dir="auto">while npm version 7 produces:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="node_modules
	.bin
	my-local-pkg
	prettier"><pre class="notranslate"><code class="notranslate">node_modules
	.bin
	my-local-pkg
	prettier
</code></pre></div>
<p dir="auto">Compare the two outputs, npm v7 does not install <code class="notranslate">my-local-pkg</code> dependencies, there is no <code class="notranslate">./my-local-pkg/node_modules</code> folder generated.</p>
<h3 dir="auto">Environment:</h3>
<p dir="auto">npm v7.1.2</p>
<h3 dir="auto">Is there an existing issue for this?</h3>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the existing issues</li>
</ul>
<h3 dir="auto">This issue exists in the latest npm version</h3>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I am using the latest npm</li>
</ul>
<h3 dir="auto">Current Behavior</h3>
<p dir="auto">npm ci wipes out scripts in the .bin folder instead of reinstalling them.</p>
<h3 dir="auto">Expected Behavior</h3>
<p dir="auto">npm ci reinstalls .bin scripts for each package</p>
<h3 dir="auto">Steps To Reproduce</h3>
<p dir="auto">Use the npm version that comes with Node LTS this is NPM 8.1</p>
<ol dir="auto">
<li>npm install --save-dev prettier typescript</li>
<li>npm ci</li>
<li>npm ci</li>
<li>observe that tsc and prettier are not present in the <code class="notranslate">node_modules\.bin</code></li>
<li>shake fist in confusion as previous scripts that pointed to tsc and prettier in the .bin folder fail</li>
</ol>
<h3 dir="auto">Environment</h3>
<ul dir="auto">
<li>npm: 8.1</li>
<li>Node: 16.13.0</li>
<li>OS: Windows 10</li>
<li>platform: Surface Laptop</li>
<li>npm config:</li>
</ul>
<div class="highlight highlight-source-ini notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="; &quot;builtin&quot; config from C:\Program Files\nodejs\node_modules\npm\npmrc

prefix = &quot;C:\\Users\\&lt;REDACTED&gt;\\AppData\\Roaming\\npm&quot;

; &quot;user&quot; config from C:\Users\&lt;REDACTED&gt;\.npmrc

email = &quot;not-used@example.com&quot;

; node bin location = C:\Program Files\nodejs\node.exe
; cwd = &lt;REDACTED&gt;
; HOME = &lt;REDACTED&gt;
; Run `npm config ls -l` to show all defaults."><pre class="notranslate"><span class="pl-c"><span class="pl-c">;</span> "builtin" config from C:\Program Files\nodejs\node_modules\npm\npmrc</span>

<span class="pl-k">prefix</span> = <span class="pl-s"><span class="pl-pds">"</span>C:\\Users\\&lt;REDACTED&gt;\\AppData\\Roaming\\npm<span class="pl-pds">"</span></span>

<span class="pl-c"><span class="pl-c">;</span> "user" config from C:\Users\&lt;REDACTED&gt;\.npmrc</span>

<span class="pl-k">email</span> = <span class="pl-s"><span class="pl-pds">"</span>not-used@example.com<span class="pl-pds">"</span></span>

<span class="pl-c"><span class="pl-c">;</span> node bin location = C:\Program Files\nodejs\node.exe</span>
<span class="pl-c"><span class="pl-c">;</span> cwd = &lt;REDACTED&gt;</span>
<span class="pl-c"><span class="pl-c">;</span> HOME = &lt;REDACTED&gt;</span>
<span class="pl-c"><span class="pl-c">;</span> Run `npm config ls -l` to show all defaults.</span></pre></div>
<p dir="auto">note: should be an option to remove customer information in the npm config ls</p>