#wasi — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #wasi, aggregated by home.social.
-
"The primary selling point of #Wasm is its sandbox. It is marketed as “safe by design,” isolated from the host environment by a strictly controlled interface ( #WASI ) and a shared-nothing memory model. However, as the complexity of backend runtimes increases, a sophisticated new attack surface is emerging."
https://medium.com/@instatunnel/the-wasm-breach-escaping-backend-webassembly-sandboxes-05ad426051fc
-
Breaking news : the Kotlin/Wasm team has just shared the very first incarnation of their server-side wasi-http support based on the Wasm Component Model. https://github.com/Kotlin/sample-wasi-http-kotlin/
-
Based on https://github.com/pydantic/monty?tab=readme-ov-file#pyodide , if I can make #Python under #WASI a winner if I make start-up faster via https://github.com/bytecodealliance/wasmtime/tree/main/crates/wizer , get more 3rd-party C libraries working (e.g. zlib), and make it easy to slim down the file size.
-
#Development #Overviews
The State of WebAssembly 2025/2026 · ”Wasm is no longer an experiment, it’s ready for production.” https://ilo.im/16a17n_____
#Programming #WebAssembly #WASM #WASI #ESM #JavaScript #Browser #WebDev #Frontend #Backend -
The State of WebAssembly – 2025 and 2026
https://platform.uno/blog/the-state-of-webassembly-2025-2026/
-
#WASM / #WASI based #plugin architectures vs #AGPL?
I assume this is valid, but #IANAL and unsure if it is indeed the case:
- If the core system is AGPL-licensed and integrates a Wasm WASI runtime.
- Then 3rd-party WASI Components can have different licenses.
- Esp. when they are downloaded and installed at run-time.OTOH perhaps not.. and it depends on who designed the #WIT #RPC interface, and what its #license is.
#Socialcoding topic (2024, all fedi links rotted)..
https://discuss.coding.social/t/sx-licensing-of-plugin-architecture-vs-agpl/506
-
#WASM / #WASI based #plugin architectures vs #AGPL?
I assume this is valid, but #IANAL and unsure if it is indeed the case:
- If the core system is AGPL-licensed and integrates a Wasm WASI runtime.
- Then 3rd-party WASI Components can have different licenses.
- Esp. when they are downloaded and installed at run-time.OTOH perhaps not.. and it depends on who designed the #WIT #RPC interface, and what its #license is.
#Socialcoding topic (2024, all fedi links rotted)..
https://discuss.coding.social/t/sx-licensing-of-plugin-architecture-vs-agpl/506
-
#WASM / #WASI based #plugin architectures vs #AGPL?
I assume this is valid, but #IANAL and unsure if it is indeed the case:
- If the core system is AGPL-licensed and integrates a Wasm WASI runtime.
- Then 3rd-party WASI Components can have different licenses.
- Esp. when they are downloaded and installed at run-time.OTOH perhaps not.. and it depends on who designed the #WIT #RPC interface, and what its #license is.
#Socialcoding topic (2024, all fedi links rotted)..
https://discuss.coding.social/t/sx-licensing-of-plugin-architecture-vs-agpl/506
-
#WASM / #WASI based #plugin architectures vs #AGPL?
I assume this is valid, but #IANAL and unsure if it is indeed the case:
- If the core system is AGPL-licensed and integrates a Wasm WASI runtime.
- Then 3rd-party WASI Components can have different licenses.
- Esp. when they are downloaded and installed at run-time.OTOH perhaps not.. and it depends on who designed the #WIT #RPC interface, and what its #license is.
#Socialcoding topic (2024, all fedi links rotted)..
https://discuss.coding.social/t/sx-licensing-of-plugin-architecture-vs-agpl/506
-
#WASM / #WASI based #plugin architectures vs #AGPL?
I assume this is valid, but #IANAL and unsure if it is indeed the case:
- If the core system is AGPL-licensed and integrates a Wasm WASI runtime.
- Then 3rd-party WASI Components can have different licenses.
- Esp. when they are downloaded and installed at run-time.OTOH perhaps not.. and it depends on who designed the #WIT #RPC interface, and what its #license is.
#Socialcoding topic (2024, all fedi links rotted)..
https://discuss.coding.social/t/sx-licensing-of-plugin-architecture-vs-agpl/506
-
What about plugins in GitRoot? They are essential. Without them, you just have #Git repositories; with them, you get a full-featured #forge.
Currently, plugins are #wasm binaries following the #wasi specification. They can read/write to your Git repository and web space (files in a directory).
They are triggered on every push diff, depending on your `.gitroot/plugins.yml` configuration. More on plugin rights: https://gitroot.dev/doc/how-tos/plugin_rights.html
1/3 -
It's going to get a lot easier to run #Lisien in the browser with the next release. It won't be the most performant way to do it, probably, and for the time being you'll need to use XML dumps of the database for persistence, though I've heard of ways to avoid that.
#Python #WASI lazyweb: is there a good, pure Python library I could use to store cookies? I guess I could compile SQLite in, if I have to, but it seems like needless overhead.
-
It's going to get a lot easier to run #Lisien in the browser with the next release. It won't be the most performant way to do it, probably, and for the time being you'll need to use XML dumps of the database for persistence, though I've heard of ways to avoid that.
#Python #WASI lazyweb: is there a good, pure Python library I could use to store cookies? I guess I could compile SQLite in, if I have to, but it seems like needless overhead.
-
It's going to get a lot easier to run #Lisien in the browser with the next release. It won't be the most performant way to do it, probably, and for the time being you'll need to use XML dumps of the database for persistence, though I've heard of ways to avoid that.
#Python #WASI lazyweb: is there a good, pure Python library I could use to store cookies? I guess I could compile SQLite in, if I have to, but it seems like needless overhead.
-
It's going to get a lot easier to run #Lisien in the browser with the next release. It won't be the most performant way to do it, probably, and for the time being you'll need to use XML dumps of the database for persistence, though I've heard of ways to avoid that.
#Python #WASI lazyweb: is there a good, pure Python library I could use to store cookies? I guess I could compile SQLite in, if I have to, but it seems like needless overhead.
-
It's going to get a lot easier to run #Lisien in the browser with the next release. It won't be the most performant way to do it, probably, and for the time being you'll need to use XML dumps of the database for persistence, though I've heard of ways to avoid that.
#Python #WASI lazyweb: is there a good, pure Python library I could use to store cookies? I guess I could compile SQLite in, if I have to, but it seems like needless overhead.
-
Today, GitRoot plugins can be written in Golang thanks to @TinyGo and in TypeScript thanks to https://www.assemblyscript.org/
Guess what the next SDK plugin will be made of.
#golang #tinygo #typescript #assemblyscript #wasm #wasi -
It's all still experimental and not super tightly sandbox secure yet, but #WASI support in Node.js is very much a thing: https://nodejs.org/api/wasi.html. #TIL 🤯 #Wasm #WebAssembly
-
I didn't realize you could mix `import` and `require()` in Node.js now, I always thought it was either ESM or not, but you can mix: https://nodesource.com/blog/nodejs-22-features.
```js
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const pkg = require('./package.json');
```I likewise had no idea #WASI (that is, #WebAssembly System Interface) was a thing in Node.js. Need to investigate more…
-
When I use cargo component new to build a CLI component for Rust/Wasm/Wit, the cargo component build step will automatically translate a main function to .e.g. wasi:cli/run or println! statements to the according stream functions from the wasi world. With wasm-tools component wit I can even inspect a generated with world, though none was supplied. I would llike to know more about the magic involved. Is that documented somewhere, is this something carfgo component does, or is it coming from wit-bindgen? Any help or pointers appreciated.
-
I like the bootstrapping process of the #zig compiler. I'm doing a similar job with #serene's bootstrapping, too. The only difference is that I'm not going to create the #wasi interpreter myself. I'm going to utilize a small runtime like #wamr. Just include the interpreter source code in the repo, and build it with the host's C compiler, and use it to run the bootstrap compiler which is committed to the source tree in Wasm32 format, and use that to compile the self-hosted version of #serene.
-
I like the bootstrapping process of the #zig compiler. I'm doing a similar job with #serene's bootstrapping, too. The only difference is that I'm not going to create the #wasi interpreter myself. I'm going to utilize a small runtime like #wamr. Just include the interpreter source code in the repo, and build it with the host's C compiler, and use it to run the bootstrap compiler which is committed to the source tree in Wasm32 format, and use that to compile the self-hosted version of #serene.
-
I like the bootstrapping process of the #zig compiler. I'm doing a similar job with #serene's bootstrapping, too. The only difference is that I'm not going to create the #wasi interpreter myself. I'm going to utilize a small runtime like #wamr. Just include the interpreter source code in the repo, and build it with the host's C compiler, and use it to run the bootstrap compiler which is committed to the source tree in Wasm32 format, and use that to compile the self-hosted version of #serene.
-
I like the bootstrapping process of the #zig compiler. I'm doing a similar job with #serene's bootstrapping, too. The only difference is that I'm not going to create the #wasi interpreter myself. I'm going to utilize a small runtime like #wamr. Just include the interpreter source code in the repo, and build it with the host's C compiler, and use it to run the bootstrap compiler which is committed to the source tree in Wasm32 format, and use that to compile the self-hosted version of #serene.
-
I like the bootstrapping process of the #zig compiler. I'm doing a similar job with #serene's bootstrapping, too. The only difference is that I'm not going to create the #wasi interpreter myself. I'm going to utilize a small runtime like #wamr. Just include the interpreter source code in the repo, and build it with the host's C compiler, and use it to run the bootstrap compiler which is committed to the source tree in Wasm32 format, and use that to compile the self-hosted version of #serene.
-
My yearly look at WASI support in .NET
TL;DR WASI support not back in .NET 10
-
Statically linking WASM with a unikernel - neat! The syscalls don't need translation like a regular VM but you still get VM-like kernel isolation.
-
amazed by how similar Fuchsia Component Framework is to Wasm Component Model
-
Have you seen this absolute crazy demo?
https://www.youtube.com/watch?v=kGBeT8lwbo0
plan9-like OS, accessed via a shell, from a wasm binary that allows to change the webpage DOM dynamically with the VFS and run processes in the background as well.
-
Show HN: Faasta – A self-hosted Serverless platform for WASM-wasi-HTTP in Rust
-
🤔 hmm, now what does this remind me of:
"By standardizing APIs for #WebAssembly, #WASI provides a way to compose software written in different languages—without costly and clunky interface systems like HTTP-based microservices." (https://wasi.dev)Oh yeah, here it is:
"The Infinite Improbability Drive was a wonderful new method of crossing interstellar distances in a mere nothingth of a second, without tedious mucking about in hyperspace"...
and:
..."The Bistromathic Drive is a wonderful new method of crossing vast interstellar distances without all the dangerous mucking about with Improbability Factors."
(and you thought I was gonna mention #Java and Jini!)
(h/t to Douglas Adams for his enduring insight into human behavior, and the #wasm / #wasi folks for doing god's work!)
-
This week I'll be at So.Cal Linux Expo (SCaLE 22x) in L.A. for the first time in years!
Tomorrow, at large.
Friday-Sunday, at the TinyGo booth, Hall B-230. Just look for the LEDs...
See you there!
-
We released @TinyGo 0.36 yesterday with so many improvements for WASM/WASI & oh yeah, Go 1.24 support too!
Thank you to the awesome community of human beings who work together across the entire planet to collaborate on this project. You are appreciated!
-
🦫 Go 1.24 boosts WebAssembly with go:wasmexport! Export Go functions to Wasm & build WASI reactors with ease. Can’t wait to see what the community builds! ⚡🔧
#GoLang #Wasm #WebAssembly #WASI #Programming #SoftwareDevelopment #OpenSource #DevCommunity #TechInnovation #Coding #WebDev #WasmReactor #GoDevelopers
-
🦫 Go 1.24 boosts WebAssembly with go:wasmexport! Export Go functions to Wasm & build WASI reactors with ease. Can’t wait to see what the community builds! ⚡🔧
#GoLang #Wasm #WebAssembly #WASI #Programming #SoftwareDevelopment #OpenSource #DevCommunity #TechInnovation #Coding #WebDev #WasmReactor #GoDevelopers
-
🦫 Go 1.24 boosts WebAssembly with go:wasmexport! Export Go functions to Wasm & build WASI reactors with ease. Can’t wait to see what the community builds! ⚡🔧
#GoLang #Wasm #WebAssembly #WASI #Programming #SoftwareDevelopment #OpenSource #DevCommunity #TechInnovation #Coding #WebDev #WasmReactor #GoDevelopers
-
🦫 Go 1.24 boosts WebAssembly with go:wasmexport! Export Go functions to Wasm & build WASI reactors with ease. Can’t wait to see what the community builds! ⚡🔧
#GoLang #Wasm #WebAssembly #WASI #Programming #SoftwareDevelopment #OpenSource #DevCommunity #TechInnovation #Coding #WebDev #WasmReactor #GoDevelopers
-
🦫 Go 1.24 boosts WebAssembly with go:wasmexport! Export Go functions to Wasm & build WASI reactors with ease. Can’t wait to see what the community builds! ⚡🔧
#GoLang #Wasm #WebAssembly #WASI #Programming #SoftwareDevelopment #OpenSource #DevCommunity #TechInnovation #Coding #WebDev #WasmReactor #GoDevelopers
-
Slides from my talk "WebAssembly, Extend Anything with Everything, Everywhere! " at #confoo are online. https://gamma.app/docs/Extism-Make-all-software-programmable-Confoo-2025-qf29yghcr0praa0
Showed how to extend #frankenphp with an #extism / #wasi markdown middleware plugin, generating html at 3k req/s. Kudos to @dunglas, FrankenPHP rocks!
-
Why is handling an #OS #Signal so hard in #WebAssembly ? - #WASI has a work around for us, but does it actually work?
I'm not sure - #WAMR #Wasmtime and #WASM3 might all need the new #StackSwitching proposal which was pushed to stage 2 in the #W3C today.
Check out the code samples here - https://withbighair.com/webassembly/2024/08/26/WebAssembly-and-signals.html
-
Why is handling an #OS #Signal so hard in #WebAssembly ? - #WASI has a work around for us, but does it actually work?
I'm not sure - #WAMR #Wasmtime and #WASM3 might all need the new #StackSwitching proposal which was pushed to stage 2 in the #W3C today.
Check out the code samples here - https://withbighair.com/webassembly/2024/08/26/WebAssembly-and-signals.html
-
Why is handling an #OS #Signal so hard in #WebAssembly ? - #WASI has a work around for us, but does it actually work?
I'm not sure - #WAMR #Wasmtime and #WASM3 might all need the new #StackSwitching proposal which was pushed to stage 2 in the #W3C today.
Check out the code samples here - https://withbighair.com/webassembly/2024/08/26/WebAssembly-and-signals.html
-
Why is handling an #OS #Signal so hard in #WebAssembly ? - #WASI has a work around for us, but does it actually work?
I'm not sure - #WAMR #Wasmtime and #WASM3 might all need the new #StackSwitching proposal which was pushed to stage 2 in the #W3C today.
Check out the code samples here - https://withbighair.com/webassembly/2024/08/26/WebAssembly-and-signals.html
-
I am officially #lookingforwork to continue and expand my work with #WebAssembly.
With #WASI 0.2.0 now officially launched, now is a great time to invest in the Component Model and I can help!
I'm actively engaged in the Component-Model standards process and am giving a talk in two weeks at Wasm IO! #wasmio
https://2024.wasmio.tech/sessions/claw-and-the-future-of-component-native-programming-languages/
-
The Future of #dotnet... EVERYWHERE!! My mind is blown 🤯 with #wasi experimental support in .NET 8 allowing you to run #wasm OUTSIDE of the browser with #wasmtime!!!
If this sounds 🤯🤯🤯 then you got to checkout my video on it: https://www.youtube.com/watch?v=04YxaxeNkLQ
-
@deadprogram thanks for opening the issue for me on #wazero GitHub 🙏🏽I feel stupid not doing it myself in the first place 😬
Btw I was able to resolve syscall part in some changes to wazero (moving freebds part to own file) and some socket parts, but now it fails on sockets for unidentified net.TCPListners. Still can't understand why it can't compile those if I can import in my app, a lot to learn on how compilers and #tinygo / #go internals are working 🥹
-
@deadprogram thanks for opening the issue for me on #wazero GitHub 🙏🏽I feel stupid not doing it myself in the first place 😬
Btw I was able to resolve syscall part in some changes to wazero (moving freebds part to own file) and some socket parts, but now it fails on sockets for unidentified net.TCPListners. Still can't understand why it can't compile those if I can import in my app, a lot to learn on how compilers and #tinygo / #go internals are working 🥹
-
@deadprogram thanks for opening the issue for me on #wazero GitHub 🙏🏽I feel stupid not doing it myself in the first place 😬
Btw I was able to resolve syscall part in some changes to wazero (moving freebds part to own file) and some socket parts, but now it fails on sockets for unidentified net.TCPListners. Still can't understand why it can't compile those if I can import in my app, a lot to learn on how compilers and #tinygo / #go internals are working 🥹
-
@deadprogram thanks for opening the issue for me on #wazero GitHub 🙏🏽I feel stupid not doing it myself in the first place 😬
Btw I was able to resolve syscall part in some changes to wazero (moving freebds part to own file) and some socket parts, but now it fails on sockets for unidentified net.TCPListners. Still can't understand why it can't compile those if I can import in my app, a lot to learn on how compilers and #tinygo / #go internals are working 🥹