Gazelle is a Bazel build file generator for Bazel projects. It natively supports Go and protobuf, and it may be extended to support new languages and custom rule sets.
Apache License 2.0
1.2k
stars
380
forks
source link
Feature request: Option to create plugin in wasm #1388
Gazelle plugin system could be greatly extended by dynamically load web assembly(wasm) plugin at runtime.
The benefit of wasm plugin is that it could be written in a different language: Go, Rust, C, Haskell, etc... so the parser logic does not need to be written in Go.
Depending on the design, plugins could also be supplied dynamically at runtime instead of at compile time, which means that we don't need to recompile Gazelle binary to add / update / remove plugin.
I think this technology could be very exciting for both gazelle and Bazel in general.
Hi, noticed this in a GitHub issue search -- please feel free to join us on Discord if you'd like to chat about Extism! I'd be very interested in learning more about your requirements.
Inspired by https://github.com/knqyf263/go-plugin and https://extism.org/blog/announcing-extism/.
Gazelle plugin system could be greatly extended by dynamically load web assembly(wasm) plugin at runtime.
The benefit of wasm plugin is that it could be written in a different language: Go, Rust, C, Haskell, etc... so the parser logic does not need to be written in Go.
Depending on the design, plugins could also be supplied dynamically at runtime instead of at compile time, which means that we don't need to recompile Gazelle binary to add / update / remove plugin.
I think this technology could be very exciting for both gazelle and Bazel in general.