vuejs / language-tools

⚡ High-performance Vue language tooling based-on Volar.js
https://marketplace.visualstudio.com/items?itemName=Vue.volar
MIT License
5.79k stars 390 forks source link

yarn install fails for @vue/language-plugin-pug 2.0.26 #4587

Closed markusheiden closed 2 months ago

markusheiden commented 2 months ago

Vue - Official extension or vue-tsc version

@vue/language-plugin-pug 2.0.26

VSCode version

none

Vue version

3.4.31

TypeScript version

5.5.3

System Info

System:
    OS: macOS 14.5
    CPU: (12) arm64 Apple M2 Max
    Memory: 82.97 MB / 64.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.15.1 - ~/.nvm/versions/node/v20.15.1/bin/node
    Yarn: 4.3.1 - /opt/homebrew/bin/yarn
    npm: 10.7.0 - ~/.nvm/versions/node/v20.15.1/bin/npm
    pnpm: 9.5.0 - /opt/homebrew/bin/pnpm
  Browsers:
    Chrome: 126.0.6478.127
    Safari: 17.5

Steps to reproduce

yarn install of a project using @vue/language-plugin-pug 2.0.26.

What is expected?

A successful installation.

What is actually happening?


➤ YN0000: · Yarn 4.3.1
➤ YN0000: ┌ Resolution step
➤ YN0001: │ Error: volar-service-pug@volar-2.4 isn't supported by any available resolver
    at Pd.getResolverByDescriptor (/Users/markus/projects/productcount-crawler/frontend/.yarn/releases/yarn-4.3.1.cjs:141:1698)
    at Pd.bindDescriptor (/Users/markus/projects/productcount-crawler/frontend/.yarn/releases/yarn-4.3.1.cjs:141:1083)
    at St.preparePackage (/Users/markus/projects/productcount-crawler/frontend/.yarn/releases/yarn-4.3.1.cjs:210:6173)
    at async Z (/Users/markus/projects/productcount-crawler/frontend/.yarn/releases/yarn-4.3.1.cjs:210:7587)
    at async Promise.allSettled (index 10)
    at async _c (/Users/markus/projects/productcount-crawler/frontend/.yarn/releases/yarn-4.3.1.cjs:140:53129)
➤ YN0000: └ Completed
➤ YN0000: · Failed with errors in 0s 76ms

Link to minimal reproduction

No response

Any additional comments?

Using @vue/language-plugin-pug 2.0.24 with yarn works fine. pnpm does not cause such problems.

package.json of @vue/language-plugin-pug 2.0.24:

{
    "dependencies": {
        "volar-service-pug": "0.0.56"
    }
}

package.json of @vue/language-plugin-pug 2.0.26:

{
    "dependencies": {
        "volar-service-pug": "volar-2.4"
    }
}

To me it looks like the new dependency declaration style using a tag instead of a version does not work with yarn 4.