Skip to content

[BUG] npm link confused by symlinks (windows) #2828

Closed

Description

@WORMSS

Current Behavior:

I am creating a npm link to a package I am creating, and npm link creates a link to the wrong location.

Expected Behavior:

Create a link to the correct folder.

Steps To Reproduce:

Environment:

  • symlink directory: c:\code to c:\Users\WORMSS\code < because I am lazy and don't want to type the full path all the time
    • See (1) in image
  • config prefix c:\\program files\\nodejs
    • See (2) in image
  • package location: c:\Users\WORMSS\code\@wormss\genstack
    • See (3) in image
  • symlink directory c:\program files\node to c:\Users\WORMSS\AppData\Roaming\nvm\v15.9.0 < because that is where nvm installs the versions but NVM isn't required to setup the symlink
    • See (4) in image

image

Steps:

  • navigate to c:\code\@wormss\genstack (note, the shortcut of c:\code, not the full path through users)
    • See (3) in image
  • npm link < this makes genstack in global
    • See (5) in image
    • You will see it has made a link to c:\users\WORMSS\AppData\Roaming\code\@wormss\genstack instead of c:\code\@wormss\genstack

Environment:

OS: Windows 10
Node: 15.9.0
npm: 7.5.3

My thoughts (though I know nothing about what it is trying to do internally)

  • Possibly a root problem? Mistaking c:\code with \code o
  • Possibly a relative path problem? Mistakenly trying to do ..\..\ to get from c:\program files\nodejs to c:\ but mistakenly it taken it to c:\users\WORMSS\AppData\Roaming instead?
  • The only other coincidence I see, is that I do have a 'code' folder in c:\Users\WORMSS\AppData\Roaming\Code
    • But this has nothing at all to do with my code or nvm or npm or node.
    • I think this is to do with VSCode, but maybe npm is testing ..\..\code thinking it's testing c:\code but is actually hitting c:\Users\WORMSS\AppData\Roaming\Code and passing a test?? Maybe? no idea..

Activity

  1. added
    Bugthing that needs fixing
    Needs Triageneeds review for next steps
    Release 7.xwork is associated with a specific npm 7 release
    on Mar 5, 2021
  2. added and removed
    Needs Triageneeds review for next steps
    on May 7, 2021
  3. darcyclarke commented on May 7, 2021

    @darcyclarke
    Contributor

    Looks like a legitimate bug; We'll dig in on this (seems like it could be caused by linking to a symlink)

  4. WORMSS commented on Jul 20, 2022

    @WORMSS
    Author

    Just because this has been stale for a little while..
    Has there been able update or traction with this bug?

  5. WORMSS commented on Jun 26, 2023

    @WORMSS
    Author

    Hello, Coming up to 2 years on this "Priority 2 bug" ?
    Just wondering if there is anything I should be doing to help speed this along?

  6. natesire commented on May 14, 2025

    @natesire

    The npm code isn't versatile enough to handle windows. It's been written to cater to Linux filesystem. My npm 10.9.2 install works just fine on Linux but crashes the npm CLI on Windows.

    I will pitch in help on these tickets. But you need to wait and not close my ticket so quickly. I had already submitted a ticket before which was closed but also never actually fixed.

  7. nkolev92 commented on Oct 27, 2026

    @nkolev92
    Contributor

    Thank you for reporting this issue.
    I was not able to reproduce these issues in the latest npm version and I believe to have been addressed.
    If you are still facing similar issues, please file a new issue and we'll take a look.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Bugthing that needs fixingPriority 2secondary priority issueRelease 7.xwork is associated with a specific npm 7 releaseplatform:windowsis Windows-specific

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions