Comments (11)
from snowpack.
Tracking a fix for this here: #6
from snowpack.
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
from snowpack.
Okay so good news: so I was able to reproduce this in a project with web3
, and created #5 as a result of a bug found.
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.
from snowpack.
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?
from snowpack.
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.
from snowpack.
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: "@pika/web": { "umdDependencies": [ ... ] }
)
from snowpack.
This also happens for preact-compat
I get the following error and then @pika/web
continues indefinitely:
Error when using sourcemap for reporting an error: Can't resolve original location of error.
Error: 'h' is not exported by node_modules/preact/dist/preact.umd.js
at error (/path/node_modules/rollup/dist/rollup.js:9435:30)
at Module.error (/path/node_modules/rollup/dist/rollup.js:13407:9)
at handleMissingExport (/path/node_modules/rollup/dist/rollup.js:13327:21)
at Module.traceVariable (/path/node_modules/rollup/dist/rollup.js:13712:17)
at ModuleScope.findVariable (/path/node_modules/rollup/dist/rollup.js:12422:39)
at Identifier$1.bind (/path/node_modules/rollup/dist/rollup.js:8348:40)
at CallExpression$1.bind (/path/node_modules/rollup/dist/rollup.js:7977:23)
at CallExpression$1.bind (/path/node_modules/rollup/dist/rollup.js:10377:15)
at MemberExpression.bind (/path/node_modules/rollup/dist/rollup.js:7977:23)
at MemberExpression.bind (/path/node_modules/rollup/dist/rollup.js:11358:19)
from snowpack.
Solved the problem by adding the following to "@pika/web"
package.json
field
"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 π
from snowpack.
lol did I add support for that and never document it??? π€¦ββ @zaygraveyard Glad it worked for you, adding some documetation to the README now!
from snowpack.
(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)
from snowpack.
Related Issues (20)
- π BUG: Can't quit dev server Win11 HOT 2
- π‘ RFC: Option to skip esbuild transform
- π BUG: hmr-client.js fails to load when inside of a srcdoc iframe
- Install snowpack for development failed. HOT 2
- π‘ RFC: Allow acess to hmr engine websocket service
- π BUG: [esinstall] duplicate export 'default' react
- π BUG: dev server fails with "Uncaught TypeError: require$$0 is not a function" due to incorrect require() transform
- π BUG: esinstall: πPutout support
- AMD requirejs module support (or docs on how to ..)
- π BUG: Skypack build fails if using modern JS features
- π BUG: `index.bin.js` file is mistaken as Trojan by Kaspersky and got deleted HOT 2
- π‘ RFC: Setting to hide deprecated options in the docs
- π BUG: default export problem
- π BUG: problem with default export / import in some cases HOT 1
- π BUG:
- π BUG: Snowpack can't find /src/index.jsx no matter what I do? HOT 1
- π BUG: Can't transpile files with new ES features such as optional chaining and private class fields
- π BUG: vm2 has been discontinued and has a critical vulnerability identified
- I can't install a template. HOT 1
- π BUG: Build Result Error: There was a problem with a file build result. [object Object]
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from snowpack.