facebook / regenerator

Source transformer enabling ECMAScript 6 generator functions in JavaScript-of-today.
http://facebook.github.io/regenerator/
MIT License
3.83k stars 1.16k forks source link

Cannot find module './runtime' #297

Open patrik-simunic-cz opened 7 years ago

patrik-simunic-cz commented 7 years ago

Hey, I'm having a weird error in regenerator lib on compiling async/await with rollup and babel. Looks like rollup missed something.

Error in terminal:

module.js:471
    throw err;
    ^

Error: Cannot find module './runtime'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/patrik.simunic/www/pg/dist/server/server.js:248:18)

Part of dist file (/Users/patrik.simunic/www/pg/dist/server/server.js:248:18):

237| ...
238| var hadRuntime = g.regeneratorRuntime &&
239|  Object.getOwnPropertyNames(g).indexOf("regeneratorRuntime") >= 0;
240|
241| // Save the old regeneratorRuntime in case it needs to be restored later.
243| var oldRuntime = hadRuntime && g.regeneratorRuntime;
243|
244| // Force reevalutation of runtime.js.
245| g.regeneratorRuntime = undefined;
247|
248| module.exports = require("./runtime");
249|
250| if (hadRuntime) {
251|   // Restore the original runtime.
252|   g.regeneratorRuntime = oldRuntime;
253| } else {
254|   // Remove the global property added by runtime.js.
255|   try {
256|     delete g.regeneratorRuntime;
257|   } catch(e) {
258|     g.regeneratorRuntime = undefined;
259|   }
260| }
261| ...

And part of my gulp/rollup/babel config:

log(['yellow','bright'], 'Server > rebuilding...');

return rollup
    .rollup({
        entry: path.join(PATH_SERVER, 'index.js'),
        plugins: [
            autoTransform({ }),
            globals({ }),
            builtins({ }),
            commonjs({
                ignoreGlobal: true
            }),
            resolve({
                jsnext: true,
                main: true,
                browser: true
            }),
            babelRollup({
                exclude: 'node_modules/**',
                presets: ['es2015-rollup', 'stage-0'],
            plugins: ['transform-runtime'],
        runtimeHelpers: true
            })
        ]
    })
    .then(function (bundle) {
        bundle
            .write({
                dest: path.join(DIST_SERVER, 'server.js'),
                format: 'cjs',
                //sourceMap: true
            })
            .then(function () {
                if (watch) {
                    runServer();
                }
            });
    });

Is this an error coming from misconfig or rollup badly imports regenerator?

EDIT: code rollup used in dist comes from https://github.com/facebook/regenerator/tree/master/packages/regenerator-runtime require("./runtime") is used here https://github.com/facebook/regenerator/blob/master/packages/regenerator-runtime/runtime-module.js#L19

NathanielHill commented 5 years ago

Did you ever find a resolution?