npm / npm/cli

[BUG] NPM tries to download transitive bundledDependencies

Open
#2,143 6 comments 9 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Bug Release 7.x
Dominant language
JavaScript
Stars
10.1k
Forks
4.7k
Avg merge
2d 2h
Merged PRs (30d)
19

Description

Current Behavior:

When installing published package that has some bundled dependencies, npm tries to look them up on the repository and fails as a result (since they're not there). It works fine when installing from a tarball.

Expected Behavior:

Npm should skip downloading bundled dependencies and move on to resolving package.json of each bundledDependency in package's node_modules.

Steps To Reproduce:

Try installing this package:

  1. echo @lt.petuska:registry=https://gitlab.com/api/v4/packages/npm/ >> .npmrc
  2. npm install @lt.petuska/js@1.0.0
  3. See error...
npm ERR! code ETARGET
npm ERR! notarget No matching version found for kotlinx-atomicfu@0.14.4.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget 
npm ERR! notarget It was specified as a dependency of '@lt.petuska/js'
npm ERR! notarget

2020-11-07T16_59_53_003Z-debug.log

Environment:
  • OS: Pop!_OS@20.04_LTS
  • Node: v14.15.0
  • npm: 6.14.8

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with npm install @lt.petuska/js@1.0.0 using the provided registry configuration, then inspect the linked debug log and the bundled dependency package.json files. Done means published packages with bundled dependencies no longer trigger registry lookups for those bundled packages and installation proceeds as expected.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.