0

I want to use node 20.9.0 and yarn 3.2.4.

If I do:

  1. mkdir test
  2. cd test
  3. yarn init
  4. yarn add protobufjs

I get the following error:

➤ YN0000: ┌ Resolution step ➤ YN0000: └ Completed in 0s 813ms ➤ YN0000: ┌ Fetch step ➤ YN0013: │ @protobufjs/utf8@npm:1.1.0 can't be found in the cache and will be fetched from the remote registry ➤ YN0013: │ @types/node@npm:20.9.0 can't be found in the cache and will be fetched from the remote registry ➤ YN0013: │ long@npm:5.2.3 can't be found in the cache and will be fetched from the remote registry ➤ YN0013: │ protobufjs@npm:7.2.5 can't be found in the cache and will be fetched from the remote registry ➤ YN0013: │ undici-types@npm:5.26.5 can't be found in the cache and will be fetched from the remote registry ➤ YN0000: └ Completed ➤ YN0000: ┌ Link step ➤ YN0000: │ ESM support for PnP uses the experimental loader API and is therefore experimental ➤ YN0007: │ protobufjs@npm:7.2.5 must be built because it never has been before or the last one failed ➤ YN0009: │ protobufjs@npm:7.2.5 couldn't be built successfully (exit code 1, logs can be found here: /private/var/folders/7r/z2yvzrzx7_lg2h81285rsplr0000gp/T/xfs-6234630b/build.log) ➤ YN0000: └ Completed in 0s 474ms ➤ YN0000: Failed with errors in 1s 441ms 

The build.log file is reporting...

# This file contains the result of Yarn building a package (protobufjs@npm:7.2.5) # Script name: postinstall node:internal/process/esm_loader:40 internalBinding('errors').triggerUncaughtException( ^ TypeError [Error]: [ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module "XXXX/.yarn/unplugged/protobufjs-npm-7.2.5-3439c554a5/node_modules/protobufjs/package.json" needs an import assertion of type "json" at load$1 (file:///XXXX/.pnp.loader.mjs:1455:17) at nextLoad (node:internal/modules/esm/hooks:833:28) at Hooks.load (node:internal/modules/esm/hooks:416:26) at MessagePort.handleMessage (node:internal/modules/esm/worker:168:24) at [nodejs.internal.kHybridDispatch] (node:internal/event_target:807:20) at exports.emitMessage (node:internal/per_context/messageport:23:28) { code: 'ERR_IMPORT_ASSERTION_TYPE_MISSING' } Node.js v20.9.0 

Is this is known issue? Is there a solution?

1 Answer 1

2

The answer turns out to be that the bug was with yarn 3.2.4 itself, not with Cesium or Protobufjs. The issue preventing the build was apparently resolved with yarn 3.6.3. The steps will succeed with Node 20 and Yarn >= 3.6.3.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.