oozcitak / xmlbuilder2

An XML builder for node.js
367 stars 36 forks source link

Doesn't work in Cloudflare Pages: Cannot read properties of undefined (reading 'TYPED_ARRAY_SUPPORT') #149

Open KTibow opened 2 years ago

KTibow commented 2 years ago

Describe the bug When I try to use this library on Cloudflare Pages, I get the error

Cannot read properties of undefined (reading 'TYPED_ARRAY_SUPPORT')

This is relevant to node-libs-browser requiring buffer.

To Reproduce Make a SvelteKit project, and require this library. Import it dynamically (in order to be able to view the error message, since Cloudflare pages doesn't have logs). When importing it, you get an error like

TypeError: Cannot read properties of undefined (reading 'TYPED_ARRAY_SUPPORT')

Expected behavior The library to import and run normally in CF Pages' JS interpreter.

Version:

Additional context N/A

frederichoule commented 1 year ago

I have the exact same problem. Did you find a workaround @KTibow ?

KTibow commented 1 year ago

I'm using fast-xml-parser right now (iirc)

frederichoule commented 1 year ago

Thanks, just did the same. Works flawlessly.

Antti-Palola commented 3 months ago

You can also go around this by defining an alias in your build machinery to skip the minified version that has the corrupted polyfill for Buffer. For example in vite config resolve.alias:

    xmlbuilder2: path.resolve(__dirname, "node_modules/xmlbuilder2/lib/index"),
lifeiscontent commented 3 months ago

@oozcitak any chance you'd accept a PR that fixes this issue?