-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Description
What I See
On my macOS, if dprint is installed via pnpm, after pnpm approve-builds, vscode extension logs like:
[INFO] Initialized dprint 0.50.2
Folder: /Users/otakustay/Downloads/Code/play/
Command: dprint
Accordingly, on a project which installs dprint with npm, logs include an executable under node_modules:
[INFO] Initialized dprint 0.50.2
Folder: /Users/otakustay/Downloads/Code/play/
Command: /Users/otakustay/Downloads/Code/play/node_modules/@dprint/darwin-arm64/dprint
Some Information
Interestingly, when installed with pnpm, we have 2 dprint folder in node_modules:
tree node_modules
node_modules
└── dprint -> .pnpm/dprint@0.50.2/node_modules/dprint
tree node_modules/.pnpm
node_modules/.pnpm
├── @dprint+darwin-arm64@0.50.2
│ └── node_modules
│ └── @dprint
│ └── darwin-arm64
│ ├── dprint
│ ├── package.json
│ └── README.md
├── dprint@0.50.2
│ └── node_modules
│ ├── @dprint
│ │ └── darwin-arm64 -> ../../../@dprint+darwin-arm64@0.50.2/node_modules/@dprint/darwin-arm64
│ └── dprint
│ ├── bin.js
│ ├── dprint
│ ├── install_api.js
│ ├── install.js
│ ├── LICENSE
│ ├── node_modules
│ ├── package.json
│ └── README.md
├── lock.yaml
└── node_modules
└── @dprint
└── darwin-arm64 -> ../../@dprint+darwin-arm64@0.50.2/node_modules/@dprint/darwin-arm64
However, when initializing vscode extension, in tryResolveInNodeModules function, it locates Uri.joinPath(dir, "node_modules", "@dprint", packageName) which doesn't exists in pnpm workspace.
My Thought
Sine @dprint/{platform} is a dependency of dprint, we should not assume that @dprint/{platform} always has the same parent folder as dprint.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels