extism/js-pdk

Move away from quickjs-wasm-rs to an alternative

Opened this issue · 3 comments

I was looking into a build time error I was getting, which seems to be related to quickjs #261 which was fixed in a newer release of quickjs. During this investigation, I noticed that Javy has deprecated quickjs-wasm-rs in favor of rquickjs.

The reasons for the deprecation are outlined in javy #618.

I started a WIP branch to see what moving the pdk to rquickjs might look like. I've mostly moved through the logic for initializing the globals so far, but the migration seems feasible. It seems like rquickjs should let the pdk keep most of the same logic & API's, just moved around a bit.

Keeping the tooling similar to Javy and using rquickjs may also make it easier to implement #56 and #19 , but haven't looked into it too much.

Recognize that this pdk is in rc for 1.0, so a large crate change might not be the best timing. I am happy to take this migration farther if that's something y'all would be interested in, but didn't want to just drop a big migration PR on y'all without talking it through.

Thank you for volunteering! Yes, this is definitely something we've been discussing in Discord lately. There are a few latent issues it could clear up. We've also discussed switching runtimes entirely to something with more W3C API coverage, but I'd definitely prefer an rquickjs port because it seems like a simpler and quicker path.

If you want to open a PR we'll gladly support you and contribute, help you debug, test, etc. Feel free to reach out in the #js-pdk channel in our Discord if you want to sync in real time.

Hello @mdarrik did you put any work into this? No pressure of course, but i noticed your WIP branch didn't resolve: https://github.com/mdarrik/js-pdk/blob/feat/migrate-to-rquickjs/

If you want to open a draft PR or something, we can help out :)

Hey, yeah. It's still in progress. I have the global work done locally. Have only just started looking into the core logic.

I can push what I've got so far up later today and open a draft PR so y'all can take a look too.