Skip to content

[LSP] Extension fails to resolve turbo.path in VSC #8583

@motss

Description

@motss

Verify canary release

  • I verified that the issue exists in the latest Turborepo canary release.

Link to code that reproduces this issue

https://github.com/motss/vercel-turbo-8583

What package manager are you using / does the bug impact?

pnpm

What operating system are you using?

Mac

Which canary version will you have in your reproduction?

turbo 2.0.4

Describe the Bug

turbo-not-found

VSC extension always fails to read and the resolve the turbo.path defined in local's .vscode/settings.json file.

None of the following paths work:

"turbo.path": "./node_modules/.bin/turbo"
"turbo.path": "node_modules/.bin/turbo"

This is the error being showing in the Output tab:

starting the turbo extension
manually specified turbo does not exist at path `./node_modules/.bin/turbo`, attempting to locate it
attempting to find global turbo
prompting global turbo
attempting to find local turbo using npm
attempting to find local turbo using yarn
attempting to find local turbo using pnpm
found local turbo at /Users/rongsen/motss/webmod/node_modules/.bin/turbo
using turbo at path /Users/rongsen/motss/webmod/node_modules/.bin/turbo

However, the current workaround can be either:

  1. Using the absolute path works just fine, or
    "turbo.path": "/Users/johndoe/test-turbo/node_modules/.bin/turbo",
  2. Use "turbo.useLocalTurbo": true instead as turbo LSP is able to search for local turbo but this can be time-consuming as the extension takes a few tries/ guesses in order to reach to the correct location.

Expected Behavior

VSC extension should read and resolve the turbo.path defined in local's .vscode/settings.json file.

This should be the expected log from the extension instead:

starting the turbo extension
using turbo at path /Users/johndoe/test-turborepo/node_modules/.bin/turbo

To Reproduce

  1. Create any project using turbo
  2. Create .vscode/settings.json
  3. Add "turbo.path": "./node_modules/.bin/turbo"
  4. Reload VSC
  5. Go to OUTPUT tab to see the output from a VSC extension
  6. Done

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind: bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions