-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
new: water-go cross-platform support (#6)
Signed-off-by: Gaukas Wang <[email protected]>
- Loading branch information
Showing
3 changed files
with
46 additions
and
10 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
layout: default | ||
title: Cross-platform Compatibility (Go) | ||
grand_parent: Runtime Library | ||
parent: Runtime Library in Go | ||
nav_order: 1 | ||
--- | ||
|
||
# Cross-platform Support | ||
|
||
The end goal of Project WATER is to provide a universal pluggable network transport layer that harnesses the power of WebAssembly to enable the Rapid Deployment of new network transport protocols on even the least flexible platforms such as smartphones with strict and slow app store review processes. | ||
|
||
To achieve this, Project WATER is designed to be cross-platform and cross-architecture. The WATER maintainers are dedicated to expanding the cross-platform support of the runtime libraries to as many platforms as possible. | ||
|
||
## Platform Support Matrix | ||
|
||
Currently, `water` supports the following platforms: | ||
|
||
| Target | Compiles? | Tests Pass? | | ||
| ------------------ | --------- | ----------- | | ||
| linux/amd64 | ✅ | ✅ | | ||
| linux/arm64 | ✅ | ✅ | | ||
| linux/riscv64 | ✅ | ✅ | | ||
| macos/amd64 | ✅ | ✅ | | ||
| macos/arm64 | ✅ | ✅ | | ||
| windows/amd64 | ✅ | ✅ | | ||
| windows/arm64 | ✅ | ❓ | | ||
| others | ❓ | ❓ | | ||
|
||
Due to the absence of a machine in `windows/arm64`, we could not run tests on this platform. The compilation compatibility is tested by cross-compiling from `windows/amd64` to `windows/arm64`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
--- | ||
layout: default | ||
title: Runtime Library in Go | ||
parent: Runtime Library | ||
nav_order: 1 | ||
has_children: true | ||
permalink: /runtime/go.html | ||
--- | ||
|
||
# Runtime Library in Go | ||
|
||
WATER Runtime Library for Go (a.k.a. `water-go`) is built with [wazero](https://github.com/tetratelabs/wazero) providing the WebAssembly runtime with WASI support, and implements an abstracted network programming interface that roughly ressembles the standard `net` package in Go. | ||
|
||
## Cross-platform Support | ||
|
||
Project WATER is designed to be cross-platform and cross-architecture. See [Cross-platform Compatibility (Go)](./go/cross-platform.html) for more details. |