yue/yode

bootstrap error with lodash after build in macos

Opened this issue · 1 comments

If I installed package cheerio and build with yackage in macos, the packed app will exist with error like this:

buffer.js:269
    throw err;
    ^

TypeError [ERR_INVALID_ARG_TYPE]: The "size" argument must be of type number. Received type undefined
    at Function.alloc (buffer.js:278:3)
    at AsarArchive.readFile (asar_archive.js:96:27)
    at Object.fs.readFileSync (asar_monkey_patch.js:379:40)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:20)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (/Users/z/Projects/Node/Hydux/yue-bug/out/yuebug.app/Contents/MacOS/site-cloner/asar/node_modules/lodash/_castPath.js:1:171)

but it's OK if I start with yode .. Here is the minimal code:

bug.zip

@zcbenz I extract the asar file from the binary, it looks OK, and run asarArchive.getFileInfo/readFile manually, it works fine, really strange error.