ionic-team / rollup-plugin-node-polyfills

MIT License
139 stars 59 forks source link

global undefined in process polyfill #42

Open justin0mcateer opened 2 years ago

justin0mcateer commented 2 years ago

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch rollup-plugin-node-polyfills@0.2.1 for the project I'm working on.

'process' polyfill fails for me at runtime trying to reference 'global'. There is a separate polyfill for 'global', so I just referenced that in the process polyfill and it resolved my issue.

Here is the diff that solved my problem:

diff --git a/node_modules/rollup-plugin-node-polyfills/polyfills/process-es6.js b/node_modules/rollup-plugin-node-polyfills/polyfills/process-es6.js
index b7205a5..47de4a7 100644
--- a/node_modules/rollup-plugin-node-polyfills/polyfills/process-es6.js
+++ b/node_modules/rollup-plugin-node-polyfills/polyfills/process-es6.js
@@ -1,6 +1,9 @@
 // shim for using process in browser
 // based off https://github.com/defunctzombie/node-process/blob/master/browser.js

+import global from "./global";
+
+
 function defaultSetTimout() {
     throw new Error('setTimeout has not been defined');
 }

This issue body was partially generated by patch-package.

jgonggrijp commented 2 years ago

I had the same issue with the buffer module. Also worked around it for the time being with patch-package. Good tip!