Skip to content
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

WASIX: Refactor Package Fetching and Module Caching #3603

Closed
theduke opened this issue Feb 22, 2023 · 0 comments · Fixed by #3852
Closed

WASIX: Refactor Package Fetching and Module Caching #3603

theduke opened this issue Feb 22, 2023 · 0 comments · Fixed by #3852
Assignees
Labels
🎉 enhancement New feature! lib-wasix Issues related to the WASIX toolchain. priority-medium Medium priority issue
Milestone

Comments

@theduke
Copy link
Contributor

theduke commented Feb 22, 2023

The wasix implementation currently supports fetching WebC packages and compiling them.
This functionality is exposed to guest code via proc_spawn , and via a virtual Wasmer command.

This currently is too deeply integrated into the code base, and should be refactored.

Fetching modules should be abstracted behind a ModuleResolver trait, which can be supplied/configured via the WasiRuntime trait.

The ModuleCache is too generic for the main wasix reference implementation, and should probably be removed in favour of more specialized implementations (including integrating with the default Wasmer cache).

NOTE: The refactor should also allow fetching packages from different registries, and not just rely on packages being namespace/name identifiers. Currently it's hardcoded to use the wapm.dev registry.

There already is a branch with a partial solution, but the changes were not included in the wasix branch to speed up the merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🎉 enhancement New feature! lib-wasix Issues related to the WASIX toolchain. priority-medium Medium priority issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants