-
Notifications
You must be signed in to change notification settings - Fork 921
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
It never finishes installing #2
Comments
You could even just try it on a project with this one dependency: https://www.npmjs.com/package/web3. That's all I really want to get working, it's being difficult with my other build processes |
I’ll take a look this weekend, thanks for finding & reporting!
…On Fri, Mar 1, 2019 at 7:27 PM Jordan Last ***@***.***> wrote:
You could even just try it on a project with this one dependency:
https://www.npmjs.com/package/web3. That's all I really want to get
working, it's being difficult with my other build processes
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#2 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAl-k8Zr_W2V9sBXGsaTC27d2mRxPNPwks5vSe-qgaJpZM4baJHg>
.
|
Okay so good news: so I was able to reproduce this in a project with The bad news is that web3 relies on some '.node' C++ compiled files that work on Node.js but would never run natively on the web. The fact that it never finishes looks like it may be a bug in either Rollup or the CJS plugin that we use for Rollup. We should definitely warn instead of hanging. |
Nice. This is the trick part about these kinds of build tools, you have to bundle in browser versions of the dependencies. For example, there are some projects called http-browserify, http-browserify, etc that offer browser compatible versions of the built-in node modules...unless I'm not understanding? If not, could Wasm binaries of those modules be made to ship up to the browser? |
Tracking a fix for this here: #6 |
Web3 also has UMD bundles in its dist folder, I believe most of its direct dependencies do as well. If you rollup and point to the UMD build as the entry point, I wonder how that would work. I'll try it in the next couple days and report. |
I'd like @pika/web to stay focused on being an ESM installer, but no reason we couldn't have some sort sort of secondary opt-in UMD support (stupid example: |
This also happens for
|
Solved the problem by adding the following to "namedExports": {
"node_modules/preact/dist/preact.umd.js": [
"Component",
"cloneElement",
"createElement",
"createRef",
"h",
"options",
"render",
"rerender"
],
"node_modules/preact-context/dist/context.min.js": [
"createContext"
]
}, Thank you for this amazing tool 👍 |
lol did I add support for that and never document it??? 🤦♂ @zaygraveyard Glad it worked for you, adding some documetation to the README now! |
(You shouldn't see any issues with Preact tho... that's not good. Maybe "module" should take precedence over "browser" again now that we have support for deep-requesting files inside of packages) |
Running
npx @pika/web
with this package.json never finishes:The text was updated successfully, but these errors were encountered: