square / maker

Maker Design System by Square

Home Page:https://square.github.io/maker/styleguide/latest-stable/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Installing Maker for Vue 2.7 throws peer dep errors

tatems opened this issue · comments

Bug description

Though Maker inherently supports 2.7 (no api changes from 2.6), installing into a greenfield 2.7 project throws peer dependency errors when using a newer node version (ie 16+)

Reproduction

❯ npm i @square/maker@18
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: @ecom/checkout@1.0.0
npm ERR! Found: vue@2.7.14
npm ERR! node_modules/vue
npm ERR!   vue@"2.7.14" from the root project
npm ERR!   peer vue@"^2.6.6" from @linusborg/vue-simple-portal@0.1.5
npm ERR!   node_modules/@linusborg/vue-simple-portal
npm ERR!     peer @linusborg/vue-simple-portal@"^0.1.5" from @square/maker@18.0.7
npm ERR!     node_modules/@square/maker
npm ERR!       @square/maker@"18" from the root project
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer vue@"2.6.14" from @square/maker@18.0.7
npm ERR! node_modules/@square/maker
npm ERR!   @square/maker@"18" from the root project
npm ERR! 
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR! 
npm ERR! See /Users/jtate/.npm/eresolve-report.txt for a full report.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/jtate/.npm/_logs/2023-06-05T13_59_00_633Z-debug-0.log

Environment

System:
    OS: macOS 13.4
    CPU: (10) arm64 Apple M1 Max
    Memory: 3.49 GB / 64.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.7.0 - ~/.nvm/versions/node/v18.7.0/bin/node
    npm: 8.15.0 - ~/.nvm/versions/node/v18.7.0/bin/npm
  npmPackages:
    vue: 2.7.14 => 2.7.14

Addressed by

No response

Can you contribute a fix?

  • I’m interested in opening a pull request for this issue.
commented

Unlike the other peer deps, which begin with carets (^), the vue peer dep was set to exactly 2.6.14: https://github.com/square/maker/blob/master/package.json#L51

if I remember correctly, it was pinned to this specific version to match what was in ecom-website, and we did the pin in the first place because having it unpinned was causing bugs... but what those bugs were exactly I don't remember anymore... soooo if you decide to unpin it in a PR it'd be nice to check nothing in ecom-website stops working because of it

@pretzelhammer sorry missed this earlier. Website has been on 2.7 for awhile now (looks like about 8 months). I'm not sure why it hasn't been causing problems for that project, but I've had no luck getting it to install in a new project.
I've opened a PR to get this fixed #554

🎉 This issue has been resolved in version 18.0.9 🎉

The release is available on:

Your semantic-release bot 📦🚀