When building for a target, for which no c/c++ compiler toolchain is present, umya-spreadsheet cannot be built. Especially, when trying to target wasm, it gets annoying to handle the compiler. This is caused by the regular expression engine used (onig), which is a wrapper around a c library.
Further, the zip dependency needs to disable bzip2 support (or at least allow it via e.g. feature flags), and instead relay on flate2, which is a pure rust implementation of some deflate based compression algorithms.
I have a version locally tested to work with regex instead of onig and was also able to use it in the web-browser via wasm-pack. If this is something you are interested in, I can make a PR.
When building for a target, for which no c/c++ compiler toolchain is present,
umya-spreadsheet
cannot be built. Especially, when trying to target wasm, it gets annoying to handle the compiler. This is caused by the regular expression engine used (onig
), which is a wrapper around a c library.Further, the zip dependency needs to disable
bzip2
support (or at least allow it via e.g. feature flags), and instead relay on flate2, which is a pure rust implementation of some deflate based compression algorithms.I have a version locally tested to work with
regex
instead ofonig
and was also able to use it in the web-browser via wasm-pack. If this is something you are interested in, I can make a PR.