katiefenn / parker

Stylesheet analysis tool.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ReferenceError: primordials is not defined

sagunji opened this issue · comments

After installing the package, I tried running the command parker spinner.css but I got a reference error. Here is the full message:

fs.js:35
} = primordials;
    ^

ReferenceError: primordials is not defined
    at fs.js:35:5
    at req_ (C:\Users\DELL\AppData\Roaming\nvm\v12.16.1\node_modules\parker\node_modules\natives\index.js:143:24)
    at Object.req [as require] (C:\Users\DELL\AppData\Roaming\nvm\v12.16.1\node_modules\parker\node_modules\natives\index.js:55
:10)
    at Object.<anonymous> (C:\Users\DELL\AppData\Roaming\nvm\v12.16.1\node_modules\parker\node_modules\graceful-fs\fs.js:1:37) 
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
    at Module.load (internal/modules/cjs/loader.js:1002:32)
    at Function.Module._load (internal/modules/cjs/loader.js:901:14)
    at Module.require (internal/modules/cjs/loader.js:1044:19)
    at require (internal/modules/cjs/helpers.js:77:18)

I have:
node v12.16.1
npm 6.13.4

commented

I'm also having this issue.

Me too has this issue. node.js v.14.17.6.

fs.js:45
} = primordials;
    ^

ReferenceError: primordials is not defined
    at fs.js:45:5
    at req_ (/usr/lib64/node_modules/parker/node_modules/natives/index.js:143:24)
    at Object.req [as require] (/usr/lib64/node_modules/parker/node_modules/natives/index.js:55:10)
    at Object.<anonymous> (/usr/lib64/node_modules/parker/node_modules/graceful-fs/fs.js:1:37)
    at Module._compile (internal/modules/cjs/loader.js:1072:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
    at Module.load (internal/modules/cjs/loader.js:937:32)
    at Function.Module._load (internal/modules/cjs/loader.js:778:12)
    at Module.require (internal/modules/cjs/loader.js:961:19)
    at require (internal/modules/cjs/helpers.js:92:18)

Now I see in /usr/lib64/node_modules/parker/node_modules/graceful-fs/package.json

"version": "3.0.12"

and remember the innocent-looking warning I got from node.js upon installation:

npm install -g parker
npm WARN deprecated natives@1.1.6: This module relies on Node.js's internals and will break at some point. Do not use it, and update to graceful-fs@4.x.
...

But why didn't node.js do this itself? What is the purpose of offloading dependency tracking to some tool, only to have to track individual version dependencies manually afterwards? I don't get it...

Solution

Since the author did not yet accept the pull request of @dsiddy above, we have to take matters in our own hands... 😒

Step 1: Upgrade graceful-fs

npm install -g graceful-fs
+ graceful-fs@4.2.11
added 1 package in 0.349s

Step 2: Rename parker's own old graceful-fs version

mv /usr/lib64/node_modules/parker/node_modules/graceful-fs /usr/lib64/node_modules/parker/node_modules/graceful-fs-3.0.2-deprecated

Step 3: Be happy

😃