matrix-org / thirdroom

Open, decentralised, immersive worlds built on Matrix
https://thirdroom.io
Apache License 2.0
610 stars 65 forks source link

Installation fails with Yarn 3.2.3 on `<...>olm-3.2.8.tgz%23 isn't supported by any available resolver` #375

Open vintprox opened 2 years ago

vintprox commented 2 years ago

Describe the bug I was following instuctions provided for local development, and got a failing installation.

$ yarn
➤ YN0000: ┌ Resolution step
➤ YN0013: │ 3d-tiles-renderer@https://github.com/matrix-org/3DTilesRendererJS.git#commit=0a24d695752f6e419d47cca0bbec0e8ba8f0af4c can't be found in th
➤ YN0061: │ @types/gl-matrix@npm:3.2.0 is deprecated: This is a stub types definition. gl-matrix provides its own type definitions, so you do not need this installed.
➤ YN0032: │ fsevents@npm:2.3.2: Implicit dependencies on node-gyp are discouraged
➤ YN0061: │ source-map-resolve@npm:0.6.0 is deprecated: See https://github.com/lydell/source-map-resolve#deprecated
➤ YN0061: │ @types/browserslist@npm:4.15.0 is deprecated: This is a stub types definition. browserslist provides its own type definitions, so you do not need this installed.
➤ YN0061: │ core-js@npm:3.21.1 is deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
➤ YN0061: │ core-js-pure@npm:3.21.1 is deprecated: core-js-pure@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js-pure.
➤ YN0061: │ react-style-singleton@npm:2.2.0 is deprecated: wrong managing of dynamic styles
➤ YN0061: │ request@npm:2.88.2 is deprecated: request has been deprecated, see https://github.com/request/request/issues/3142
➤ YN0061: │ har-validator@npm:5.1.5 is deprecated: this library is no longer supported
➤ YN0061: │ uuid@npm:3.4.0 is deprecated: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
➤ YN0001: │ Error: @matrix-org/olm@https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.8.tgz: @matrix-org/olm@npm:3.2.8::__archiveUrl=https%3A%2F%2Fgitlab.matrix.org%2Fapi%2Fv4%2Fprojects%2F27%2Fpackages%2Fnpm%2F%40matrix-org%2Folm%2F-%2F%40matrix-org%2Folm-3.2.8.tgz%23 isn't supported by any available resolver
    at Bd.getResolverByDescriptor (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:391:1664)
    at Bd.getCandidates (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:391:1252)
    at LR.getCandidates (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:435:3387)
    at Bd.getCandidates (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:391:1281)
    at /home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:439:7764
    at Tg (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:390:11154)
    at ce (/home/vintprox/.node/corepack/yarn/3.2.3/yarn.js:439:7744)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
➤ YN0000: └ Completed in 42s 129ms
➤ YN0000: Failed with errors in 42s 138ms

To Reproduce Steps to reproduce the behavior:

  1. Install yarn and clone repo.
  2. Run yarn.
  3. Few downloading dependencies after, process stops with an error: ➤ YN0001: │ Error: @matrix-org/olm@https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.8.tgz: @matrix-org/olm@npm:3.2.8::__archiveUrl=https%3A%2F%2Fgitlab.matrix.org%2Fapi%2Fv4%2Fprojects%2F27%2Fpackages%2Fnpm%2F%40matrix-org%2Folm%2F-%2F%40matrix-org%2Folm-3.2.8.tgz%23 isn't supported by any available resolver

Expected behavior Error-less installation that would allow me to serve the app on localhost.

Screenshots Screenshot of the terminal

Desktop:

ajbura commented 2 years ago

Maybe it's something with yarn v3. I have yarn v1.22.18 and had no issue.

ajbura commented 2 years ago

Or try yarn install for first time as this dependency is coming from hydrogen and it advise to do that.

vintprox commented 2 years ago

Maybe it's something with yarn v3. I have yarn v1.22.18 and had no issue.

Just discovered that degrading back to classic yarn helps the issue:

$ cd ~
$ rm .yarnrc && rm .yarnrc.yml
$ rm -r .yarn
$ yarn set version classic
$ cd thirdroom
$ yarn

Everything works after that. Then there just remains the question of whether it makes sense to support classic or new edition of Yarn.

vintprox commented 2 years ago

Come to think of it, we probably should mention this in the README.

robertlong commented 2 years ago

Maybe it's something with yarn v3. I have yarn v1.22.18 and had no issue.

Just discovered that degrading back to classic yarn helps the issue:


$ cd ~

$ rm .yarnrc && rm .yarnrc.yml

$ rm -r .yarn

$ yarn set version classic

$ cd thirdroom

$ yarn

Everything works after that. Then there just remains the question of whether it makes sense to support classic or new edition of Yarn.

We will not be supporting the newer version of yarn. pnpm is looking better and better. It'd be great to stick with npm but npm link is pretty bad.

Anyway, yeah I'll add the yarn version to the readme. We're not switching at the moment.