diff --git a/command.md b/command.md index f1b5188..34c1c92 100644 --- a/command.md +++ b/command.md @@ -2,43 +2,43 @@
wasi:cli/environment@0.2.7wasi:cli/exit@0.2.7wasi:io/error@0.2.7wasi:io/poll@0.2.7wasi:io/streams@0.2.7wasi:cli/stdin@0.2.7wasi:cli/stdout@0.2.7wasi:cli/stderr@0.2.7wasi:cli/terminal-input@0.2.7wasi:cli/terminal-output@0.2.7wasi:cli/terminal-stdin@0.2.7wasi:cli/terminal-stdout@0.2.7wasi:cli/terminal-stderr@0.2.7wasi:clocks/monotonic-clock@0.2.7wasi:clocks/wall-clock@0.2.7wasi:clocks/timezone@0.2.7wasi:filesystem/types@0.2.7wasi:filesystem/preopens@0.2.7wasi:sockets/network@0.2.7wasi:sockets/instance-network@0.2.7wasi:sockets/udp@0.2.7wasi:sockets/udp-create-socket@0.2.7wasi:sockets/tcp@0.2.7wasi:sockets/tcp-create-socket@0.2.7wasi:sockets/ip-name-lookup@0.2.7wasi:random/random@0.2.7wasi:random/insecure@0.2.7wasi:random/insecure-seed@0.2.7wasi:cli/environment@0.2.8wasi:cli/exit@0.2.8wasi:io/error@0.2.8wasi:io/poll@0.2.8wasi:io/streams@0.2.8wasi:cli/stdin@0.2.8wasi:cli/stdout@0.2.8wasi:cli/stderr@0.2.8wasi:cli/terminal-input@0.2.8wasi:cli/terminal-output@0.2.8wasi:cli/terminal-stdin@0.2.8wasi:cli/terminal-stdout@0.2.8wasi:cli/terminal-stderr@0.2.8wasi:clocks/monotonic-clock@0.2.8wasi:clocks/wall-clock@0.2.8wasi:clocks/timezone@0.2.8wasi:filesystem/types@0.2.8wasi:filesystem/preopens@0.2.8wasi:sockets/network@0.2.8wasi:sockets/instance-network@0.2.8wasi:sockets/udp@0.2.8wasi:sockets/udp-create-socket@0.2.8wasi:sockets/tcp@0.2.8wasi:sockets/tcp-create-socket@0.2.8wasi:sockets/ip-name-lookup@0.2.8wasi:random/random@0.2.8wasi:random/insecure@0.2.8wasi:random/insecure-seed@0.2.8wasi:cli/run@0.2.7wasi:cli/run@0.2.8get-environment: func. as shorthand for this.
-exit: funcresource errorA poll API intended to let users wait for I/O events on multiple handles at once.
WASI I/O is an I/O abstraction API which is currently focused on providing stream types.
In the future, the component model is expected to add built-in stream types; @@ -181,10 +181,10 @@ when it does, they are expected to subsume this API.
type error-#### `type pollable` -[`pollable`](#pollable) +
type pollable-#### `variant stream-error` +
variant stream-errorAn error for input-stream and output-stream operations.
splice.
u64, stream-error>type input-stream----- +
get-stdin: funcinput-stream>type output-stream----- +
get-stdout: funcoutput-stream>type output-stream----- +
get-stderr: funcoutput-stream>Terminal input.
In the future, this may include functions for disabling echoing, disabling input buffering so that keyboard events are sent through @@ -521,7 +521,7 @@ immediately, querying supported features, and so on.
resource terminal-inputThe input side of a terminal.
-Terminal output.
In the future, this may include functions for querying the terminal size, being notified of terminal size changes, querying supported @@ -530,7 +530,7 @@ features, and so on.
resource terminal-outputThe output side of a terminal.
-An interface providing an optional terminal-input for stdin as a
link-time authority.
type terminal-input----- +
get-terminal-stdin: funcIf stdin is connected to a terminal, return a terminal-input handle
@@ -547,7 +547,7 @@ allowing further interaction with it.
terminal-input>>An interface providing an optional terminal-output for stdout as a
link-time authority.
type terminal-output----- +
get-terminal-stdout: funcIf stdout is connected to a terminal, return a terminal-output handle
@@ -564,7 +564,7 @@ allowing further interaction with it.
terminal-output>>An interface providing an optional terminal-output for stderr as a
link-time authority.
type terminal-output----- +
get-terminal-stderr: funcIf stderr is connected to a terminal, return a terminal-output handle
@@ -581,7 +581,7 @@ allowing further interaction with it.
terminal-output>>WASI Monotonic Clock is a clock API intended to let users measure elapsed time.
It is intended to be portable at least between Unix-family platforms and @@ -593,8 +593,8 @@ successive reads of the clock will produce non-decreasing values.
type pollabletype instantu64
An instant in time, in nanoseconds. An instant is relative to an unspecified initial value, and can only be compared to instances from the same monotonic-clock. @@ -607,6 +607,10 @@ the same monotonic-clock.
Read the current value of the 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.
instantpollable>WASI Wall Clock is a clock API intended to let users query the current time. The name "wall" makes an analogy to a "clock on the wall", which is not necessarily monotonic as it may be reset.
@@ -681,13 +685,13 @@ also known as Unix Time. -type datetime-#### `record timezone-display` +
record timezone-displayInformation useful for displaying the timezone of a specific datetime.
This information may vary within a single timezone to reflect daylight
saving time adjustments.
WASI filesystem is a filesystem API primarily intended to let users run WASI programs that access their files on their existing filesystems, without significant overhead.
@@ -769,17 +773,17 @@ underlying filesystem, the function fails withtype input-stream
-#### `type output-stream` -[`output-stream`](#output_stream) +
type output-stream-#### `type error` -[`error`](#error) +
type error-#### `type datetime` -[`datetime`](#datetime) +
type datetime-#### `type filesize` -`u64` +
type filesizeu64
File size or length of a region within a file.
enum descriptor-typeThe type of a filesystem object referenced by a descriptor.
@@ -1624,13 +1628,13 @@ errors are filesystem-related errors.error-code>type descriptor----- +
get-directories: funcReturn the set of preopened directories, and their paths.
@@ -1638,13 +1642,13 @@ errors are filesystem-related errors.descriptor>, string)>type errorresource networkAn opaque resource that represents access to (a subset of) the network. This enables context-based security for networking. There is no need for this to map 1:1 to a physical network interface.
@@ -1853,14 +1857,14 @@ errors are network-related errors.error-code>This interface provides a value-export of the default network handle..
type network----- +
instance-network: funcGet a handle to the default network.
@@ -1868,25 +1872,25 @@ errors are network-related errors.network>type pollable-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-socket-address` -[`ip-socket-address`](#ip_socket_address) +
type ip-socket-address-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `record incoming-datagram` +
record incoming-datagramA received datagram.
future is natively supported in Pre
pollable>type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `type udp-socket` -[`udp-socket`](#udp_socket) +
type udp-socket----- +
create-udp-socket: funcCreate a new UDP socket.
@@ -2327,34 +2331,34 @@ the socket is effectively an in-memory configuration object, unable to communicaudp-socket>, error-code>type input-stream-#### `type output-stream` -[`output-stream`](#output_stream) +
type output-stream-#### `type pollable` -[`pollable`](#pollable) +
type pollable-#### `type duration` -[`duration`](#duration) +
type duration-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-socket-address` -[`ip-socket-address`](#ip_socket_address) +
type ip-socket-address-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-familyenum shutdown-typeok.
error-code>type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `type tcp-socket` -[`tcp-socket`](#tcp_socket) +
type tcp-socket----- +
create-tcp-socket: funcCreate a new TCP socket.
@@ -2963,22 +2967,22 @@ is called, the socket is effectively an in-memory configuration object, unable ttcp-socket>, error-code>type pollable-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address` -[`ip-address`](#ip_address) +
type ip-address-#### `resource resolve-address-stream` +
resource resolve-address-streamresolve-addresses: funcfuture is natively supported in Pre
pollable>WASI Random is a random data API.
It is intended to be portable at least between Unix-family platforms and Windows.
@@ -3076,7 +3080,7 @@ represented as au64.
-The insecure interface for insecure pseudo-random numbers.
It is intended to be portable at least between Unix-family platforms and Windows.
@@ -3105,7 +3109,7 @@ a long period. -The insecure-seed interface for seeding hash-map DoS resistance.
It is intended to be portable at least between Unix-family platforms and Windows.
@@ -3129,7 +3133,7 @@ protection. -run: funcwasi:cli/environment@0.2.7wasi:cli/exit@0.2.7wasi:io/error@0.2.7wasi:io/poll@0.2.7wasi:io/streams@0.2.7wasi:cli/stdin@0.2.7wasi:cli/stdout@0.2.7wasi:cli/stderr@0.2.7wasi:cli/terminal-input@0.2.7wasi:cli/terminal-output@0.2.7wasi:cli/terminal-stdin@0.2.7wasi:cli/terminal-stdout@0.2.7wasi:cli/terminal-stderr@0.2.7wasi:clocks/monotonic-clock@0.2.7wasi:clocks/wall-clock@0.2.7wasi:clocks/timezone@0.2.7wasi:filesystem/types@0.2.7wasi:filesystem/preopens@0.2.7wasi:sockets/network@0.2.7wasi:sockets/instance-network@0.2.7wasi:sockets/udp@0.2.7wasi:sockets/udp-create-socket@0.2.7wasi:sockets/tcp@0.2.7wasi:sockets/tcp-create-socket@0.2.7wasi:sockets/ip-name-lookup@0.2.7wasi:random/random@0.2.7wasi:random/insecure@0.2.7wasi:random/insecure-seed@0.2.7wasi:cli/environment@0.2.8wasi:cli/exit@0.2.8wasi:io/error@0.2.8wasi:io/poll@0.2.8wasi:io/streams@0.2.8wasi:cli/stdin@0.2.8wasi:cli/stdout@0.2.8wasi:cli/stderr@0.2.8wasi:cli/terminal-input@0.2.8wasi:cli/terminal-output@0.2.8wasi:cli/terminal-stdin@0.2.8wasi:cli/terminal-stdout@0.2.8wasi:cli/terminal-stderr@0.2.8wasi:clocks/monotonic-clock@0.2.8wasi:clocks/wall-clock@0.2.8wasi:clocks/timezone@0.2.8wasi:filesystem/types@0.2.8wasi:filesystem/preopens@0.2.8wasi:sockets/network@0.2.8wasi:sockets/instance-network@0.2.8wasi:sockets/udp@0.2.8wasi:sockets/udp-create-socket@0.2.8wasi:sockets/tcp@0.2.8wasi:sockets/tcp-create-socket@0.2.8wasi:sockets/ip-name-lookup@0.2.8wasi:random/random@0.2.8wasi:random/insecure@0.2.8wasi:random/insecure-seed@0.2.8get-environment: func. as shorthand for this.
-exit: funcresource errorA poll API intended to let users wait for I/O events on multiple handles at once.
WASI I/O is an I/O abstraction API which is currently focused on providing stream types.
In the future, the component model is expected to add built-in stream types; @@ -176,10 +176,10 @@ when it does, they are expected to subsume this API.
type error-#### `type pollable` -[`pollable`](#pollable) +
type pollable-#### `variant stream-error` +
variant stream-errorAn error for input-stream and output-stream operations.
splice.
u64, stream-error>type input-stream----- +
get-stdin: funcinput-stream>type output-stream----- +
get-stdout: funcoutput-stream>type output-stream----- +
get-stderr: funcoutput-stream>Terminal input.
In the future, this may include functions for disabling echoing, disabling input buffering so that keyboard events are sent through @@ -516,7 +516,7 @@ immediately, querying supported features, and so on.
resource terminal-inputThe input side of a terminal.
-Terminal output.
In the future, this may include functions for querying the terminal size, being notified of terminal size changes, querying supported @@ -525,7 +525,7 @@ features, and so on.
resource terminal-outputThe output side of a terminal.
-An interface providing an optional terminal-input for stdin as a
link-time authority.
type terminal-input----- +
get-terminal-stdin: funcIf stdin is connected to a terminal, return a terminal-input handle
@@ -542,7 +542,7 @@ allowing further interaction with it.
terminal-input>>An interface providing an optional terminal-output for stdout as a
link-time authority.
type terminal-output----- +
get-terminal-stdout: funcIf stdout is connected to a terminal, return a terminal-output handle
@@ -559,7 +559,7 @@ allowing further interaction with it.
terminal-output>>An interface providing an optional terminal-output for stderr as a
link-time authority.
type terminal-output----- +
get-terminal-stderr: funcIf stderr is connected to a terminal, return a terminal-output handle
@@ -576,7 +576,7 @@ allowing further interaction with it.
terminal-output>>WASI Monotonic Clock is a clock API intended to let users measure elapsed time.
It is intended to be portable at least between Unix-family platforms and @@ -588,8 +588,8 @@ successive reads of the clock will produce non-decreasing values.
type pollabletype instantu64
An instant in time, in nanoseconds. An instant is relative to an unspecified initial value, and can only be compared to instances from the same monotonic-clock. @@ -602,6 +602,10 @@ the same monotonic-clock.
Read the current value of the 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.
instantpollable>WASI Wall Clock is a clock API intended to let users query the current time. The name "wall" makes an analogy to a "clock on the wall", which is not necessarily monotonic as it may be reset.
@@ -676,13 +680,13 @@ also known as Unix Time. -type datetime-#### `record timezone-display` +
record timezone-displayInformation useful for displaying the timezone of a specific datetime.
This information may vary within a single timezone to reflect daylight
saving time adjustments.
WASI filesystem is a filesystem API primarily intended to let users run WASI programs that access their files on their existing filesystems, without significant overhead.
@@ -764,17 +768,17 @@ underlying filesystem, the function fails withtype input-stream
-#### `type output-stream` -[`output-stream`](#output_stream) +
type output-stream-#### `type error` -[`error`](#error) +
type error-#### `type datetime` -[`datetime`](#datetime) +
type datetime-#### `type filesize` -`u64` +
type filesizeu64
File size or length of a region within a file.
enum descriptor-typeThe type of a filesystem object referenced by a descriptor.
@@ -1619,13 +1623,13 @@ errors are filesystem-related errors.error-code>type descriptor----- +
get-directories: funcReturn the set of preopened directories, and their paths.
@@ -1633,13 +1637,13 @@ errors are filesystem-related errors.descriptor>, string)>type errorresource networkAn opaque resource that represents access to (a subset of) the network. This enables context-based security for networking. There is no need for this to map 1:1 to a physical network interface.
@@ -1848,14 +1852,14 @@ errors are network-related errors.error-code>This interface provides a value-export of the default network handle..
type network----- +
instance-network: funcGet a handle to the default network.
@@ -1863,25 +1867,25 @@ errors are network-related errors.network>type pollable-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-socket-address` -[`ip-socket-address`](#ip_socket_address) +
type ip-socket-address-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `record incoming-datagram` +
record incoming-datagramA received datagram.
future is natively supported in Pre
pollable>type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `type udp-socket` -[`udp-socket`](#udp_socket) +
type udp-socket----- +
create-udp-socket: funcCreate a new UDP socket.
@@ -2322,34 +2326,34 @@ the socket is effectively an in-memory configuration object, unable to communicaudp-socket>, error-code>type input-stream-#### `type output-stream` -[`output-stream`](#output_stream) +
type output-stream-#### `type pollable` -[`pollable`](#pollable) +
type pollable-#### `type duration` -[`duration`](#duration) +
type duration-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-socket-address` -[`ip-socket-address`](#ip_socket_address) +
type ip-socket-address-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-familyenum shutdown-typeok.
error-code>type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address-family` -[`ip-address-family`](#ip_address_family) +
type ip-address-family-#### `type tcp-socket` -[`tcp-socket`](#tcp_socket) +
type tcp-socket----- +
create-tcp-socket: funcCreate a new TCP socket.
@@ -2958,22 +2962,22 @@ is called, the socket is effectively an in-memory configuration object, unable ttcp-socket>, error-code>type pollable-#### `type network` -[`network`](#network) +
type network-#### `type error-code` -[`error-code`](#error_code) +
type error-code-#### `type ip-address` -[`ip-address`](#ip_address) +
type ip-address-#### `resource resolve-address-stream` +
resource resolve-address-streamresolve-addresses: funcfuture is natively supported in Pre
pollable>WASI Random is a random data API.
It is intended to be portable at least between Unix-family platforms and Windows.
@@ -3071,7 +3075,7 @@ represented as au64.
-The insecure interface for insecure pseudo-random numbers.
It is intended to be portable at least between Unix-family platforms and Windows.
@@ -3100,7 +3104,7 @@ a long period. -The insecure-seed interface for seeding hash-map DoS resistance.
It is intended to be portable at least between Unix-family platforms and Windows.
diff --git a/wit/command.wit b/wit/command.wit index dfecf91..38ef86b 100644 --- a/wit/command.wit +++ b/wit/command.wit @@ -1,4 +1,4 @@ -package wasi:cli@0.2.7; +package wasi:cli@0.2.8; @since(version = 0.2.0) world command { diff --git a/wit/deps.lock b/wit/deps.lock index dc0c862..525406a 100644 --- a/wit/deps.lock +++ b/wit/deps.lock @@ -1,24 +1,24 @@ [clocks] -sha256 = "d0a8d048c41b566b978cd8ecd03fa51ec1f65af4c26be2f0fc9cfdd7dd6f34f3" -sha512 = "8d1c9ddaaea70ae54376bfc02dcdd0437336fb4fc67f89763ce09540caefe84cbae89a8de3605aa7613c49188636e925047bcd150c2c60685850095fefb68b73" +sha256 = "be1d8c61e2544e2b48d902c60df73577e293349063344ce752cda4d323f8b913" +sha512 = "0fd7962c62b135da0e584c2b58a55147bf09873848b0bb5bd3913019bc3f8d4b5969fbd6f7f96fd99a015efaf562a3eeafe3bc13049f8572a6e13ef9ef0e7e75" [filesystem] -url = "https://github.com/WebAssembly/wasi-filesystem/archive/v0.2.7.tar.gz" -sha256 = "55942d9c31ed62d05d32d62d211a5c93983df7c0f1489124ca120cf58c4d61c0" -sha512 = "1250a19334ad6acf18adead4503f22c99bfbca7cfb7267431547d4bcca34f91e9635648d00f064276086887a9c80ffacbf68bee832b9e4cd1c921bec0776717f" +url = "https://github.com/WebAssembly/wasi-filesystem/archive/v0.2.8.tar.gz" +sha256 = "57c2e5e40c57d54a2eacb55d8855d2963a6c0b33971a3620c1468b732233d593" +sha512 = "11d1dee738bea1fdd15f5cc07ea10bfb9953a4e84361bbdc2c1051f9520463329ec839caffe0e5cf22870584846f9bfe627c1b77ee4b555fcc990b8106791c68" deps = ["clocks", "io"] [io] -sha256 = "62ae80f2e340cddbac8e94f78e6270735aea536367ecb98de5f4ac6aef66b5c4" -sha512 = "a02a1ebd261ae884b0315b3528d1a93819ddc4b616f66c77f2bea9dd1de888208dc3b9004a553363f5e8491ea925d65ebbd0d68eaa87238316b47469a3bf97bb" +sha256 = "9f1ad5da70f621bbd4c69e3bd90250a0c12ecfde266aa8f99684fc44bc1e7c15" +sha512 = "6d0a9db6848f24762933d1c168a5b5b1065ba838c253ee20454afeb8dd1a049b918d25deff556083d68095dd3126ae131ac3e738774320eee5d918f5a4b5354e" [random] -url = "https://github.com/WebAssembly/wasi-random/archive/v0.2.7.tar.gz" -sha256 = "168a5a22cfc489bbde2a2ce38d3a20b5c418fb099d3993196fca2129f8e9bfc0" -sha512 = "1641fed653abe0991cdeee330bf6d3f6e17b9d2b3b9766588c792f181e8133727efa20feb41d0f325e3db8158ce51948c2d6648e02e8998df8eba3c88959bfca" +url = "https://github.com/WebAssembly/wasi-random/archive/v0.2.8.tar.gz" +sha256 = "febd6f75dec1fa733b8e25c1cdee4de9acd922ddf755a192d85f479b1f96b445" +sha512 = "1689d2eee3c64b9fc91faaf43741ff95f343b05acc758342dbf3aa86830de1ec66b4bcd0fe22bf1f77abc4a1feeaae90cdc2c06eedc30952a6667f70edca7d8f" [sockets] -url = "https://github.com/WebAssembly/wasi-sockets/archive/v0.2.7.tar.gz" -sha256 = "33b150bb413c6f4e2ab1ab12b6da822d6c712f13a0644177b108f57dff5783d6" -sha512 = "47efa2fea61374da2853b4ff2aed394b54c8e1d164ce6706332bd1056a16c2eb0a8d7c0ab5408a8b08537b615197ff4a44bdb5d132772a8d6049de5c39ec5e68" +url = "https://github.com/WebAssembly/wasi-sockets/archive/v0.2.8.tar.gz" +sha256 = "e82bb0502324f44ef22f6fdadec51f4963faf8ccd21187c37397ea872c0548c0" +sha512 = "b8139db2b26a95d6948e345cf036497883943134ea832abfabd7267682d9f84b4c86ff38fc771125f1a8e2bcd237ea0a731d83bf22df9d78f19e452061227d77" deps = ["clocks", "io"] diff --git a/wit/deps.toml b/wit/deps.toml index fd5a701..59d97af 100644 --- a/wit/deps.toml +++ b/wit/deps.toml @@ -1,3 +1,3 @@ -filesystem = "https://github.com/WebAssembly/wasi-filesystem/archive/v0.2.7.tar.gz" -random = "https://github.com/WebAssembly/wasi-random/archive/v0.2.7.tar.gz" -sockets = "https://github.com/WebAssembly/wasi-sockets/archive/v0.2.7.tar.gz" +filesystem = "https://github.com/WebAssembly/wasi-filesystem/archive/v0.2.8.tar.gz" +random = "https://github.com/WebAssembly/wasi-random/archive/v0.2.8.tar.gz" +sockets = "https://github.com/WebAssembly/wasi-sockets/archive/v0.2.8.tar.gz" diff --git a/wit/deps/clocks/monotonic-clock.wit b/wit/deps/clocks/monotonic-clock.wit index 98a9ad4..e60f366 100644 --- a/wit/deps/clocks/monotonic-clock.wit +++ b/wit/deps/clocks/monotonic-clock.wit @@ -1,4 +1,4 @@ -package wasi:clocks@0.2.7; +package wasi:clocks@0.2.8; /// WASI Monotonic Clock is a clock API intended to let users measure elapsed /// time. /// @@ -10,7 +10,7 @@ package wasi:clocks@0.2.7; @since(version = 0.2.0) interface monotonic-clock { @since(version = 0.2.0) - use wasi:io/poll@0.2.7.{pollable}; + use wasi:io/poll@0.2.8.{pollable}; /// An instant in time, in nanoseconds. An instant is relative to an /// unspecified initial value, and can only be compared to instances from @@ -26,6 +26,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; diff --git a/wit/deps/clocks/timezone.wit b/wit/deps/clocks/timezone.wit index 4740bde..534814a 100644 --- a/wit/deps/clocks/timezone.wit +++ b/wit/deps/clocks/timezone.wit @@ -1,4 +1,4 @@ -package wasi:clocks@0.2.7; +package wasi:clocks@0.2.8; @unstable(feature = clocks-timezone) interface timezone { diff --git a/wit/deps/clocks/wall-clock.wit b/wit/deps/clocks/wall-clock.wit index 2179b6c..3386c80 100644 --- a/wit/deps/clocks/wall-clock.wit +++ b/wit/deps/clocks/wall-clock.wit @@ -1,4 +1,4 @@ -package wasi:clocks@0.2.7; +package wasi:clocks@0.2.8; /// WASI Wall Clock is a clock API intended to let users query the current /// time. The name "wall" makes an analogy to a "clock on the wall", which /// is not necessarily monotonic as it may be reset. diff --git a/wit/deps/clocks/world.wit b/wit/deps/clocks/world.wit index a08ff2c..1655ca8 100644 --- a/wit/deps/clocks/world.wit +++ b/wit/deps/clocks/world.wit @@ -1,4 +1,4 @@ -package wasi:clocks@0.2.7; +package wasi:clocks@0.2.8; @since(version = 0.2.0) world imports { diff --git a/wit/deps/filesystem/preopens.wit b/wit/deps/filesystem/preopens.wit index b1a0a99..0d2cca6 100644 --- a/wit/deps/filesystem/preopens.wit +++ b/wit/deps/filesystem/preopens.wit @@ -1,4 +1,4 @@ -package wasi:filesystem@0.2.7; +package wasi:filesystem@0.2.8; @since(version = 0.2.0) interface preopens { diff --git a/wit/deps/filesystem/types.wit b/wit/deps/filesystem/types.wit index a7da2b7..ac68f88 100644 --- a/wit/deps/filesystem/types.wit +++ b/wit/deps/filesystem/types.wit @@ -1,4 +1,4 @@ -package wasi:filesystem@0.2.7; +package wasi:filesystem@0.2.8; /// WASI filesystem is a filesystem API primarily intended to let users run WASI /// programs that access their files on their existing filesystems, without /// significant overhead. @@ -26,9 +26,9 @@ package wasi:filesystem@0.2.7; @since(version = 0.2.0) interface types { @since(version = 0.2.0) - use wasi:io/streams@0.2.7.{input-stream, output-stream, error}; + use wasi:io/streams@0.2.8.{input-stream, output-stream, error}; @since(version = 0.2.0) - use wasi:clocks/wall-clock@0.2.7.{datetime}; + use wasi:clocks/wall-clock@0.2.8.{datetime}; /// File size or length of a region within a file. @since(version = 0.2.0) diff --git a/wit/deps/filesystem/world.wit b/wit/deps/filesystem/world.wit index 67309b4..7daf067 100644 --- a/wit/deps/filesystem/world.wit +++ b/wit/deps/filesystem/world.wit @@ -1,4 +1,4 @@ -package wasi:filesystem@0.2.7; +package wasi:filesystem@0.2.8; @since(version = 0.2.0) world imports { diff --git a/wit/deps/io/error.wit b/wit/deps/io/error.wit index acab3a8..dd5a1af 100644 --- a/wit/deps/io/error.wit +++ b/wit/deps/io/error.wit @@ -1,4 +1,4 @@ -package wasi:io@0.2.7; +package wasi:io@0.2.8; @since(version = 0.2.0) interface error { diff --git a/wit/deps/io/poll.wit b/wit/deps/io/poll.wit index a525164..833b381 100644 --- a/wit/deps/io/poll.wit +++ b/wit/deps/io/poll.wit @@ -1,4 +1,4 @@ -package wasi:io@0.2.7; +package wasi:io@0.2.8; /// A poll API intended to let users wait for I/O events on multiple handles /// at once. diff --git a/wit/deps/io/streams.wit b/wit/deps/io/streams.wit index 7ae29a3..fbb0268 100644 --- a/wit/deps/io/streams.wit +++ b/wit/deps/io/streams.wit @@ -1,4 +1,4 @@ -package wasi:io@0.2.7; +package wasi:io@0.2.8; /// WASI I/O is an I/O abstraction API which is currently focused on providing /// stream types. diff --git a/wit/deps/io/world.wit b/wit/deps/io/world.wit index 73b1a6d..1cc3fce 100644 --- a/wit/deps/io/world.wit +++ b/wit/deps/io/world.wit @@ -1,4 +1,4 @@ -package wasi:io@0.2.7; +package wasi:io@0.2.8; @since(version = 0.2.0) world imports { diff --git a/wit/deps/random/insecure-seed.wit b/wit/deps/random/insecure-seed.wit index 0209b84..b2b435e 100644 --- a/wit/deps/random/insecure-seed.wit +++ b/wit/deps/random/insecure-seed.wit @@ -1,4 +1,4 @@ -package wasi:random@0.2.7; +package wasi:random@0.2.8; /// The insecure-seed interface for seeding hash-map DoS resistance. /// /// It is intended to be portable at least between Unix-family platforms and diff --git a/wit/deps/random/insecure.wit b/wit/deps/random/insecure.wit index 820d069..6dc77ad 100644 --- a/wit/deps/random/insecure.wit +++ b/wit/deps/random/insecure.wit @@ -1,4 +1,4 @@ -package wasi:random@0.2.7; +package wasi:random@0.2.8; /// The insecure interface for insecure pseudo-random numbers. /// /// It is intended to be portable at least between Unix-family platforms and diff --git a/wit/deps/random/random.wit b/wit/deps/random/random.wit index 974ab46..524e77d 100644 --- a/wit/deps/random/random.wit +++ b/wit/deps/random/random.wit @@ -1,4 +1,4 @@ -package wasi:random@0.2.7; +package wasi:random@0.2.8; /// WASI Random is a random data API. /// /// It is intended to be portable at least between Unix-family platforms and diff --git a/wit/deps/random/world.wit b/wit/deps/random/world.wit index 333b425..c0c3272 100644 --- a/wit/deps/random/world.wit +++ b/wit/deps/random/world.wit @@ -1,4 +1,4 @@ -package wasi:random@0.2.7; +package wasi:random@0.2.8; @since(version = 0.2.0) world imports { diff --git a/wit/deps/sockets/ip-name-lookup.wit b/wit/deps/sockets/ip-name-lookup.wit index df2735a..ecdaa84 100644 --- a/wit/deps/sockets/ip-name-lookup.wit +++ b/wit/deps/sockets/ip-name-lookup.wit @@ -1,7 +1,7 @@ @since(version = 0.2.0) interface ip-name-lookup { @since(version = 0.2.0) - use wasi:io/poll@0.2.7.{pollable}; + use wasi:io/poll@0.2.8.{pollable}; @since(version = 0.2.0) use network.{network, error-code, ip-address}; diff --git a/wit/deps/sockets/network.wit b/wit/deps/sockets/network.wit index 95df71f..75a4f7d 100644 --- a/wit/deps/sockets/network.wit +++ b/wit/deps/sockets/network.wit @@ -1,7 +1,7 @@ @since(version = 0.2.0) interface network { @unstable(feature = network-error-code) - use wasi:io/error@0.2.7.{error}; + use wasi:io/error@0.2.8.{error}; /// An opaque resource that represents access to (a subset of) the network. /// This enables context-based security for networking. diff --git a/wit/deps/sockets/tcp.wit b/wit/deps/sockets/tcp.wit index 104d9aa..9b5552d 100644 --- a/wit/deps/sockets/tcp.wit +++ b/wit/deps/sockets/tcp.wit @@ -1,11 +1,11 @@ @since(version = 0.2.0) interface tcp { @since(version = 0.2.0) - use wasi:io/streams@0.2.7.{input-stream, output-stream}; + use wasi:io/streams@0.2.8.{input-stream, output-stream}; @since(version = 0.2.0) - use wasi:io/poll@0.2.7.{pollable}; + use wasi:io/poll@0.2.8.{pollable}; @since(version = 0.2.0) - use wasi:clocks/monotonic-clock@0.2.7.{duration}; + use wasi:clocks/monotonic-clock@0.2.8.{duration}; @since(version = 0.2.0) use network.{network, error-code, ip-socket-address, ip-address-family}; diff --git a/wit/deps/sockets/udp.wit b/wit/deps/sockets/udp.wit index ecf2dfe..0000a15 100644 --- a/wit/deps/sockets/udp.wit +++ b/wit/deps/sockets/udp.wit @@ -1,7 +1,7 @@ @since(version = 0.2.0) interface udp { @since(version = 0.2.0) - use wasi:io/poll@0.2.7.{pollable}; + use wasi:io/poll@0.2.8.{pollable}; @since(version = 0.2.0) use network.{network, error-code, ip-socket-address, ip-address-family}; diff --git a/wit/deps/sockets/world.wit b/wit/deps/sockets/world.wit index 9a4d317..4441e91 100644 --- a/wit/deps/sockets/world.wit +++ b/wit/deps/sockets/world.wit @@ -1,4 +1,4 @@ -package wasi:sockets@0.2.7; +package wasi:sockets@0.2.8; @since(version = 0.2.0) world imports { diff --git a/wit/imports.wit b/wit/imports.wit index e7f7942..cec1be5 100644 --- a/wit/imports.wit +++ b/wit/imports.wit @@ -1,17 +1,17 @@ -package wasi:cli@0.2.7; +package wasi:cli@0.2.8; @since(version = 0.2.0) world imports { @since(version = 0.2.0) - include wasi:clocks/imports@0.2.7; + include wasi:clocks/imports@0.2.8; @since(version = 0.2.0) - include wasi:filesystem/imports@0.2.7; + include wasi:filesystem/imports@0.2.8; @since(version = 0.2.0) - include wasi:sockets/imports@0.2.7; + include wasi:sockets/imports@0.2.8; @since(version = 0.2.0) - include wasi:random/imports@0.2.7; + include wasi:random/imports@0.2.8; @since(version = 0.2.0) - include wasi:io/imports@0.2.7; + include wasi:io/imports@0.2.8; @since(version = 0.2.0) import environment; diff --git a/wit/stdio.wit b/wit/stdio.wit index 1c3c6d0..44767c6 100644 --- a/wit/stdio.wit +++ b/wit/stdio.wit @@ -1,7 +1,7 @@ @since(version = 0.2.0) interface stdin { @since(version = 0.2.0) - use wasi:io/streams@0.2.7.{input-stream}; + use wasi:io/streams@0.2.8.{input-stream}; @since(version = 0.2.0) get-stdin: func() -> input-stream; @@ -10,7 +10,7 @@ interface stdin { @since(version = 0.2.0) interface stdout { @since(version = 0.2.0) - use wasi:io/streams@0.2.7.{output-stream}; + use wasi:io/streams@0.2.8.{output-stream}; @since(version = 0.2.0) get-stdout: func() -> output-stream; @@ -19,7 +19,7 @@ interface stdout { @since(version = 0.2.0) interface stderr { @since(version = 0.2.0) - use wasi:io/streams@0.2.7.{output-stream}; + use wasi:io/streams@0.2.8.{output-stream}; @since(version = 0.2.0) get-stderr: func() -> output-stream;