MetaMask / MetaMask/snaps

[TypeError: Cannot delete property 'dispose' of function Symbol() { [native code] }]

Open
#2,328 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
853
Forks
662
Avg merge
2d 8h
Merged PRs (30d)
8

Description

Hi,

I am building a snap, but encountered a problem after `yarn build`
```
(node:90980) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Bundle Warning: Processing of the Snap bundle completed with warnings.
`Math.random` was detected in the bundle. This is not a secure source of randomness.
Build success: 'src/index.ts' bundled as 'dist/bundle.js'!
Removing intrinsics.Map.groupBy
Removing intrinsics.Object.groupBy
Removing intrinsics.Symbol.dispose
failed to delete intrinsics.Symbol.dispose [TypeError: Cannot delete property 'dispose' of function Symbol() { [native code] }]
[TypeError: Cannot delete property 'dispose' of function Symbol() { [native code] }]
Error: Snap evaluation error: Process exited with non-zero exit code: 255
at evalHandler (/Users/anhdungle/learning/galactica/galactica-monorepo/node_modules/@metamask/snaps-cli/dist/cmds/eval/evalHandler.js:21:15)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async build (/Users/anhdungle/learning/galactica/galactica-monorepo/node_modules/@metamask/snaps-cli/dist/cmds/build/buildHandler.js:30:9)
```

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with `yarn build` from the reported Snap project and inspect the `@metamask/snaps-cli` build and eval entry points named in the stack trace. Trace the intrinsic-removal step involving `Symbol.dispose`; done means the build completes without the deletion error and Snap evaluation exits successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
build-system, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.