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

πŸ› οΈ [TASK] : WASI Bindings to allow WASI modules to be compatible with Hermes node. #20

Closed
3 tasks done
Tracked by #14
stevenj opened this issue Nov 30, 2023 · 0 comments
Closed
3 tasks done
Tracked by #14
Assignees

Comments

@stevenj
Copy link
Collaborator

stevenj commented Nov 30, 2023

Summary

Build a WASI binding for Hermes compatible modules to link against.

Description

Wasm modules need a WASI binding that provides standard features.
Wasm modules need to link against this to provide compatibility with the target WASM runtime.
Hermes is a unique target, and so needs a customized WASI binding.

The standard bindings assume standalone operation, whereas hermes provides its own sandboxed environment.

This task is to create the hermes specific WASI binding to create Hermes compatible WASM modules.

See: https://github.com/bytecodealliance/wasmtime/tree/main/crates/wasi-preview1-component-adapter

This is an example of what needs to be adapted for WASI to function seamlessly with Hermes.

Functionality to include:

  1. Provide stdin compatibility in WASI Binding (Always returns EOF, there is no stdin in Hermes).
  2. Provide stdout compatibility in WASI Binding (Maps to hermes Logging at Info level).
  3. Provide stderr compatibility in WASI binding (Maps to hermes Logging at Error level).
  4. Provide any other functions required of the WASI binding for Hermes to have compatible WASI Modules compile and link.

Subtasks

@stevenj stevenj changed the title WASI Bindings to allow WASI modules to be compatible with Hermes node. πŸ› οΈ [TASK] : WASI Bindings to allow WASI modules to be compatible with Hermes node. Nov 30, 2023
@stevenj stevenj added this to Catalyst Nov 30, 2023
@stevenj stevenj moved this to πŸ†• New in Catalyst Nov 30, 2023
@stevenj stevenj added this to the M2: Hermes Foundations milestone Nov 30, 2023
@Mr-Leshiy Mr-Leshiy moved this from πŸ†• New to πŸ”– Ready in Catalyst Dec 6, 2023
@apskhem apskhem self-assigned this Jan 2, 2024
@minikin minikin moved this from πŸ”– Ready to πŸ— In progress in Catalyst Jan 2, 2024
@apskhem apskhem moved this from πŸ— In progress to πŸ”– Ready in Catalyst Jan 3, 2024
@apskhem apskhem removed their assignment Jan 3, 2024
@stevenj stevenj assigned Mr-Leshiy and apskhem and unassigned apskhem Jan 3, 2024
@Mr-Leshiy Mr-Leshiy moved this from πŸ”– Ready to πŸ— In progress in Catalyst Jan 3, 2024
@Mr-Leshiy Mr-Leshiy moved this from πŸ— In progress to πŸ”– Ready in Catalyst Jan 15, 2024
@stevenj stevenj self-assigned this Jan 29, 2024
@stevenj stevenj moved this from πŸ”– Ready to πŸ— In progress in Catalyst Jan 29, 2024
@Mr-Leshiy Mr-Leshiy moved this from πŸ— In progress to βœ… Done in Catalyst Jan 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

No branches or pull requests

3 participants