Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ci/vendor-wit.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ get_github() {
cp -r $cached_extracted_dir/wit/* $path
}

p2=0.2.6
p2=0.2.10
p3=0.3.0-rc-2026-02-09

rm -rf crates/wasi-io/wit/deps
Expand Down
26 changes: 13 additions & 13 deletions crates/test-programs/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ wit_bindgen::generate!({
package wasmtime:test;

world test {
include wasi:cli/imports@0.2.6;
include wasi:http/imports@0.2.6;
include wasi:cli/imports@0.2.10;
include wasi:http/imports@0.2.10;
include wasi:config/imports@0.2.0-rc.1;
include wasi:keyvalue/imports@0.2.0-draft;
include wasi:tls/imports@0.2.0-draft;
Expand All @@ -36,17 +36,17 @@ pub mod proxy {
default_bindings_module: "test_programs::proxy",
pub_export_macro: true,
with: {
"wasi:http/types@0.2.6": crate::wasi::http::types,
"wasi:http/outgoing-handler@0.2.6": crate::wasi::http::outgoing_handler,
"wasi:random/random@0.2.6": crate::wasi::random::random,
"wasi:io/error@0.2.6": crate::wasi::io::error,
"wasi:io/poll@0.2.6": crate::wasi::io::poll,
"wasi:io/streams@0.2.6": crate::wasi::io::streams,
"wasi:cli/stdout@0.2.6": crate::wasi::cli::stdout,
"wasi:cli/stderr@0.2.6": crate::wasi::cli::stderr,
"wasi:cli/stdin@0.2.6": crate::wasi::cli::stdin,
"wasi:clocks/monotonic-clock@0.2.6": crate::wasi::clocks::monotonic_clock,
"wasi:clocks/wall-clock@0.2.6": crate::wasi::clocks::wall_clock,
"wasi:http/types@0.2.10": crate::wasi::http::types,
"wasi:http/outgoing-handler@0.2.10": crate::wasi::http::outgoing_handler,
"wasi:random/random@0.2.10": crate::wasi::random::random,
"wasi:io/error@0.2.10": crate::wasi::io::error,
"wasi:io/poll@0.2.10": crate::wasi::io::poll,
"wasi:io/streams@0.2.10": crate::wasi::io::streams,
"wasi:cli/stdout@0.2.10": crate::wasi::cli::stdout,
"wasi:cli/stderr@0.2.10": crate::wasi::cli::stderr,
"wasi:cli/stdin@0.2.10": crate::wasi::cli::stdin,
"wasi:clocks/monotonic-clock@0.2.10": crate::wasi::clocks::monotonic_clock,
"wasi:clocks/wall-clock@0.2.10": crate::wasi::clocks::wall_clock,
},
});
}
Expand Down
108 changes: 40 additions & 68 deletions crates/wasi-http/wit/deps/cli.wit
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wasi:cli@0.2.6;
package wasi:cli@0.2.10;

@since(version = 0.2.0)
interface environment {
Expand Down Expand Up @@ -51,7 +51,7 @@ interface run {
@since(version = 0.2.0)
interface stdin {
@since(version = 0.2.0)
use wasi:io/streams@0.2.6.{input-stream};
use wasi:io/streams@0.2.10.{input-stream};

@since(version = 0.2.0)
get-stdin: func() -> input-stream;
Expand All @@ -60,7 +60,7 @@ interface stdin {
@since(version = 0.2.0)
interface stdout {
@since(version = 0.2.0)
use wasi:io/streams@0.2.6.{output-stream};
use wasi:io/streams@0.2.10.{output-stream};

@since(version = 0.2.0)
get-stdout: func() -> output-stream;
Expand All @@ -69,7 +69,7 @@ interface stdout {
@since(version = 0.2.0)
interface stderr {
@since(version = 0.2.0)
use wasi:io/streams@0.2.6.{output-stream};
use wasi:io/streams@0.2.10.{output-stream};

@since(version = 0.2.0)
get-stderr: func() -> output-stream;
Expand Down Expand Up @@ -145,11 +145,11 @@ world imports {
@since(version = 0.2.0)
import exit;
@since(version = 0.2.0)
import wasi:io/error@0.2.6;
import wasi:io/error@0.2.10;
@since(version = 0.2.0)
import wasi:io/poll@0.2.6;
import wasi:io/poll@0.2.10;
@since(version = 0.2.0)
import wasi:io/streams@0.2.6;
import wasi:io/streams@0.2.10;
@since(version = 0.2.0)
import stdin;
@since(version = 0.2.0)
Expand All @@ -166,36 +166,22 @@ world imports {
import terminal-stdout;
@since(version = 0.2.0)
import terminal-stderr;
@since(version = 0.2.0)
import wasi:clocks/monotonic-clock@0.2.6;
@since(version = 0.2.0)
import wasi:clocks/wall-clock@0.2.6;
import wasi:clocks/monotonic-clock@0.2.10;
import wasi:clocks/wall-clock@0.2.10;
@unstable(feature = clocks-timezone)
import wasi:clocks/timezone@0.2.6;
@since(version = 0.2.0)
import wasi:filesystem/types@0.2.6;
@since(version = 0.2.0)
import wasi:filesystem/preopens@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/network@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/instance-network@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/udp@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/udp-create-socket@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/tcp@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/tcp-create-socket@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/ip-name-lookup@0.2.6;
@since(version = 0.2.0)
import wasi:random/random@0.2.6;
@since(version = 0.2.0)
import wasi:random/insecure@0.2.6;
@since(version = 0.2.0)
import wasi:random/insecure-seed@0.2.6;
import wasi:clocks/timezone@0.2.10;
import wasi:filesystem/types@0.2.10;
import wasi:filesystem/preopens@0.2.10;
import wasi:sockets/network@0.2.10;
import wasi:sockets/instance-network@0.2.10;
import wasi:sockets/udp@0.2.10;
import wasi:sockets/udp-create-socket@0.2.10;
import wasi:sockets/tcp@0.2.10;
import wasi:sockets/tcp-create-socket@0.2.10;
import wasi:sockets/ip-name-lookup@0.2.10;
import wasi:random/random@0.2.10;
import wasi:random/insecure@0.2.10;
import wasi:random/insecure-seed@0.2.10;
}
@since(version = 0.2.0)
world command {
Expand All @@ -204,11 +190,11 @@ world command {
@since(version = 0.2.0)
import exit;
@since(version = 0.2.0)
import wasi:io/error@0.2.6;
import wasi:io/error@0.2.10;
@since(version = 0.2.0)
import wasi:io/poll@0.2.6;
import wasi:io/poll@0.2.10;
@since(version = 0.2.0)
import wasi:io/streams@0.2.6;
import wasi:io/streams@0.2.10;
@since(version = 0.2.0)
import stdin;
@since(version = 0.2.0)
Expand All @@ -225,36 +211,22 @@ world command {
import terminal-stdout;
@since(version = 0.2.0)
import terminal-stderr;
@since(version = 0.2.0)
import wasi:clocks/monotonic-clock@0.2.6;
@since(version = 0.2.0)
import wasi:clocks/wall-clock@0.2.6;
import wasi:clocks/monotonic-clock@0.2.10;
import wasi:clocks/wall-clock@0.2.10;
@unstable(feature = clocks-timezone)
import wasi:clocks/timezone@0.2.6;
@since(version = 0.2.0)
import wasi:filesystem/types@0.2.6;
@since(version = 0.2.0)
import wasi:filesystem/preopens@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/network@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/instance-network@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/udp@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/udp-create-socket@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/tcp@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/tcp-create-socket@0.2.6;
@since(version = 0.2.0)
import wasi:sockets/ip-name-lookup@0.2.6;
@since(version = 0.2.0)
import wasi:random/random@0.2.6;
@since(version = 0.2.0)
import wasi:random/insecure@0.2.6;
@since(version = 0.2.0)
import wasi:random/insecure-seed@0.2.6;
import wasi:clocks/timezone@0.2.10;
import wasi:filesystem/types@0.2.10;
import wasi:filesystem/preopens@0.2.10;
import wasi:sockets/network@0.2.10;
import wasi:sockets/instance-network@0.2.10;
import wasi:sockets/udp@0.2.10;
import wasi:sockets/udp-create-socket@0.2.10;
import wasi:sockets/tcp@0.2.10;
import wasi:sockets/tcp-create-socket@0.2.10;
import wasi:sockets/ip-name-lookup@0.2.10;
import wasi:random/random@0.2.10;
import wasi:random/insecure@0.2.10;
import wasi:random/insecure-seed@0.2.10;

@since(version = 0.2.0)
export run;
Expand Down
11 changes: 8 additions & 3 deletions crates/wasi-http/wit/deps/clocks.wit
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wasi:clocks@0.2.6;
package wasi:clocks@0.2.10;

/// WASI Monotonic Clock is a clock API intended to let users measure elapsed
/// time.
Expand All @@ -11,7 +11,7 @@ package wasi:clocks@0.2.6;
@since(version = 0.2.0)
interface monotonic-clock {
@since(version = 0.2.0)
use wasi:io/poll@0.2.6.{pollable};
use wasi:io/poll@0.2.10.{pollable};

/// An instant in time, in nanoseconds. An instant is relative to an
/// unspecified initial value, and can only be compared to instances from
Expand All @@ -27,6 +27,11 @@ interface monotonic-clock {
///
/// The clock is monotonic, therefore calling this function repeatedly will
/// produce a sequence of non-decreasing values.
///
/// For completeness, this function traps if it's not possible to represent
/// the value of the clock in an `instant`. Consequently, implementations
/// should ensure that the starting time is low enough to avoid the
/// possibility of overflow in practice.
@since(version = 0.2.0)
now: func() -> instant;

Expand Down Expand Up @@ -147,7 +152,7 @@ interface timezone {
@since(version = 0.2.0)
world imports {
@since(version = 0.2.0)
import wasi:io/poll@0.2.6;
import wasi:io/poll@0.2.10;
@since(version = 0.2.0)
import monotonic-clock;
@since(version = 0.2.0)
Expand Down
16 changes: 9 additions & 7 deletions crates/wasi-http/wit/deps/filesystem.wit
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wasi:filesystem@0.2.6;
package wasi:filesystem@0.2.10;

/// WASI filesystem is a filesystem API primarily intended to let users run WASI
/// programs that access their files on their existing filesystems, without
Expand Down Expand Up @@ -27,9 +27,9 @@ package wasi:filesystem@0.2.6;
@since(version = 0.2.0)
interface types {
@since(version = 0.2.0)
use wasi:io/streams@0.2.6.{input-stream, output-stream, error};
use wasi:io/streams@0.2.10.{input-stream, output-stream, error};
@since(version = 0.2.0)
use wasi:clocks/wall-clock@0.2.6.{datetime};
use wasi:clocks/wall-clock@0.2.10.{datetime};

/// File size or length of a region within a file.
@since(version = 0.2.0)
Expand Down Expand Up @@ -170,6 +170,7 @@ interface types {
}

/// A directory entry.
@since(version = 0.2.0)
record directory-entry {
/// The type of the file referred to by this directory entry.
%type: descriptor-type,
Expand All @@ -181,6 +182,7 @@ interface types {
/// Not all of these error codes are returned by the functions provided by this
/// API; some are used in higher-level library layers, and others are provided
/// merely for alignment with POSIX.
@since(version = 0.2.0)
enum error-code {
/// Permission denied, similar to `EACCES` in POSIX.
access,
Expand Down Expand Up @@ -573,13 +575,13 @@ interface preopens {
@since(version = 0.2.0)
world imports {
@since(version = 0.2.0)
import wasi:io/error@0.2.6;
import wasi:io/error@0.2.10;
@since(version = 0.2.0)
import wasi:io/poll@0.2.6;
import wasi:io/poll@0.2.10;
@since(version = 0.2.0)
import wasi:io/streams@0.2.6;
import wasi:io/streams@0.2.10;
@since(version = 0.2.0)
import wasi:clocks/wall-clock@0.2.6;
import wasi:clocks/wall-clock@0.2.10;
@since(version = 0.2.0)
import types;
@since(version = 0.2.0)
Expand Down
Loading
Loading