8
8
provides no API stability or versioning. APIs in this directory use
9
9
API module names starting with ` wasi_ephemeral_ ` .
10
10
11
- - [ ` unstable ` ] ( unstable ) : Usable APIs. APIs in ` ephemeral ` will be
12
- occasionally snapshotted and promoted into ` unstable ` , with approval
11
+ - [ ` snapshot ` ] ( snapshot ) : Usable APIs. APIs in ` ephemeral ` will be
12
+ occasionally snapshotted and promoted into ` snapshot ` , with approval
13
13
from the Subgroup, considering the overall suitability of the APIs
14
14
themselves, their documentation, test coverage, and availability of
15
15
polyfills when appropriate. Once merged, the API modules will be
16
16
considered stable, though they may be superseded by newer versions.
17
17
Proposals to promote specific APIs should be submitted as Pull Requests
18
18
that:
19
- - Move any superseded files out of ` unstable ` into ` old ` .
20
- - Optionally add polyfills for superseded APIs using ` unstable ` APIs.
21
- - Move all files supporting the APIs out of ` ephemeral ` into ` unstable ` .
22
- - Rename the API modules from ` wasi_ephemeral_ ` to ` wasi_unstable_ `
23
- and append a version number.
19
+ 1 . ` git mv ` contents of ` phases/snapshot/ ` to ` phases/old/snapshot_{old_snapshot_number} ` .
20
+ 1 . ` cp -R ` contents of ` phases/ephemeral/ ` into ` phases/snapshot/ ` .
21
+ 1 . Rename files copied into ` phases/snapshot/ ` to substitute ` ephemeral ` for ` snapshot ` in file names. Append the new snapshot number to each name.
22
+ 1 . Update module names given in ` .witx ` files according to the previous step.
23
+ 1 . Update tests in ` tools/witx/tests/wasi.rs ` to point at new snapshot, and add a test
24
+ pointing at the just-archived snapshot under ` old ` .
25
+ 1 . Optionally, under `phases/old/snapshot_ {old_snapshot_number}, add polyfills for suberseded APIs using the new APIs.
26
+
24
27
25
28
Pull Requests may also add additional tests, documentation, or
26
- polyfills for existing ` unstable ` APIs.
29
+ polyfills for existing ` snapshot ` APIs.
27
30
28
31
- [ ` old ` ] ( old ) : When APIs in ` current ` spec are replaced by new
29
32
versions, the old API modules are moved to the ` old ` directory. When
@@ -44,7 +47,7 @@ flexibility.
44
47
45
48
WASI should eventually become a standard at the level of WebAssembly
46
49
itself. Right now, it needs a lot of work before it's ready. The
47
- ` unstable ` tree is meant to serve a practical purpose for people who
50
+ ` snapshot ` tree is meant to serve a practical purpose for people who
48
51
want to work with APIs today, with the understanding that everything
49
52
is still evolving. It's not meant as a replacement for proper
50
53
standardization, which will happen once the overall API is more
0 commit comments