Skip to content

Errors for yarn create @phaserjs/game on macOS and Linux (via Docker) #8

@enderandpeter

Description

@enderandpeter

I'm encountering errors when trying to install via yarn on macOS, both on the host machine and Docker.

When I try on my Windows host machine, there's no error and the tool runs as expected. However, trying to run it in Docker on Windows (via WSL) results in the same error as in Docker on macOS.

The npm version of the command is working alright in these environments.

Expected Result

Running yarn create @phaserjs/game should result in the experience as described on https://phaser.io/tutorials/create-game-app, such as when running npm create @phaserjs/game@latest which I can confirm works as expected.

Actual Results

Two different errors are observed on a macOS host machine and when using Docker on macOS and Windows.

Details

Environment

  • OS: macOS Tahoe 26.3.1
  • Processor: Apple M1 Max
  • Node: v24.14.1

Result

$ yarn create @phaserjs/game
yarn create v1.22.22
(node:5134) [DEP0169] DeprecationWarning: `url.parse()` behavior is not standardized and prone to errors that have security implications. Use the WHATWG URL API instead. CVEs are not issued for `url.parse()` vulnerabilities.
(Use `node --trace-deprecation ...` to show where the warning was created)
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
error @achrinza/node-ipc@9.2.5: The engine "node" is incompatible with this module. Expected version "8 || 9 || 10 || 11 || 12 || 13 || 14 || 15 || 16 || 17 || 18". Got "24.14.1"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/create for documentation about this command.

Notes

The main issue in this case appears to be achrinza/node-ipc@9.2.5 wants way too old of a version of node. Not sure where this dependency is coming from as it is not mentioned in package-json.lock.

Environment

  • OS: Debian 12, Official Node Docker image (from macOS and Windows host machines)
  • Processor: Apple M1 Max (macOS), Intel Core i7 (Windows 11)
  • Node: v24.14.1

Result

node@a387d937ba78:~$ yarn create @phaserjs/game
yarn create v1.22.22
(node:275) [DEP0169] DeprecationWarning: `url.parse()` behavior is not standardized and prone to errors that have security implications. Use the WHATWG URL API instead. CVEs are not issued for `url.parse()` vulnerabilities.
(Use `node --trace-deprecation ...` to show where the warning was created)
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Installed "@phaserjs/create-game@1.3.1" with binaries:
      - create-game
/usr/bin/env: 'node\r': No such file or directory
/usr/bin/env: use -[v]S to pass options in shebang lines
error Command failed.
Exit code: 127
Command: /home/node/.yarn/bin/create-game
Arguments:
Directory: /home/node
Output:

info Visit https://yarnpkg.com/en/docs/cli/create for documentation about this command.

Notes

I also got the /usr/bin/env: 'node\r': No such file or directory when using Node 18 on macOS, in my attempt to appease the "incompatible with this module" error.

Notice how that DeprecationWarning: url.parse() shows up in either environment. I think there's something up with the create utility and yarn because as an additional test, I tried running the once famous yarn create react-appcommand to compare and it also had that "DeprecationWarning", but it completed successfully.

Testing

The best way to test might be with Docker, for the most portable experience.

Recommended Instructions

  • Install Docker for Mac/Windows
  • Run docker run -it --name my-node node:24 su - node to create an official node Docker container using version 24, which will start you on a bash terminal as the node user
    • Optionally add --rm to remove the container after exiting out of the bash session
  • Confirm that corepack and yarn are installed such as with which yarn and which corepack
  • Run yarn create @phaserjs/game and observe the results

To repeat, I'm able to run npm create @phaserjs/game@latest with no issue and then convert the project to yarn afterwards. I've not tried the other commands such as for pnpm, bun, etc.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions