Commit Graph

263 Commits

Author SHA1 Message Date
Mark McCaskey
c11d19e759 Add doc comments for WASI FD associated constants 2019-12-12 15:48:58 -08:00
Ivan Enderlin
871db8547c
Merge branch 'master' into fix-wasi-get-version 2019-12-04 15:25:11 +01:00
Ivan Enderlin
c12dd859bb doc(wasi) Improve documentation of WasiVersion::Latest. 2019-12-04 14:12:30 +01:00
Ivan Enderlin
2b7f0d19cb feat(wasi) Introduce a strict mode for get_wasi_version.
In strict mode, `get_wasi_version` uses the previous behavior, i.e. it
checks that there is only one namespace for all imports, and that this
namespace is a WASI namespace (and uses it to find the WASI version).

In non-strict mode, `get_wasi_version` checks that at least one WASI
namespace exists (and uses it to find the WASI version).

By default, `is_wasi_module` uses the non-strict mode.
2019-12-04 13:29:28 +01:00
Ivan Enderlin
a79beede72 feat(wasi) Add the “volatile” WasiVersion::Latest version.
In addition to `Snapshot0` and `Snapshot1`, I believe it is an
interesting API to provide the `Latest` version, so that the user can
write:

```rust
generate_import_object_for_version(WasiVersion::Latest, …);
```

This is a way to ensure that modules will run only if they come with
the latest WASI version (in case of security issues for instance), by
just updating the runtime.

Note that it can be dangerous if not used carefully, but we assume the
user knows what it does by sticking on a specific “floating” version.

Also note that the `Latest` version is never returned by any API. It
is provided only by the user.
2019-12-02 15:53:40 +01:00
Ivan Enderlin
7f3680c27a fix(wasi) get_wasi_version is broken with multiple namespaces.
If a module has multiple import namespaces, `get_wasi_version` is
broken because it assumes a module must only have a single namespace.

This patch fixes it by a slower `get_wasi_version` function, but a
correct one. As soon as the `wasi_unstable` or
`wasi_snapshot_preview1` namespace is met, `get_wasi_version` maps it
to the respective `WasiVersion` variant. It assumes however that a
module must hold a unique WASI version.
2019-12-02 15:36:45 +01:00
Mark McCaskey
bb1e7a8d78 Prepare for 0.11.0 release 2019-11-22 11:18:06 -08:00
Mark McCaskey
bdeec52152 Fix imports in test; copy manual implementations of Debug for wasi 2019-11-21 14:00:46 -08:00
Mark McCaskey
68fa9e2639 Merge branch 'feature/add-support-for-new-wasi' of github.com:wasmerio/wasmer into feature/add-support-for-new-wasi 2019-11-21 11:31:00 -08:00
Mark McCaskey
ddccdb92b8 More fixes for CI 2019-11-21 11:30:44 -08:00
Mark McCaskey
36a26717c2
Merge branch 'master' into feature/add-support-for-new-wasi 2019-11-21 10:58:05 -08:00
Mark McCaskey
be217e8f8e Update from feedback, fix CI issues, update wasi-test 2019-11-21 10:57:04 -08:00
Mark McCaskey
cebcb4c927 Prepare for 0.10.2 release 2019-11-15 14:55:53 -08:00
Mark McCaskey
9127eaf825 Add categories and keywords to Cargo.tomls 2019-11-13 15:46:09 -08:00
Mark McCaskey
2b2a0628f7 Update from feedback, improve docs on new wasi fns 2019-11-12 17:02:07 -08:00
Mark McCaskey
f1e5cd39d8 Add support for new WASI snapshot, backwards compat too 2019-11-12 13:01:03 -08:00
Mark McCaskey
69950d9e5f Prepare for 0.10.1 release 2019-11-11 16:22:37 -08:00
Mark McCaskey
0a216c0779 Prepare for 0.10.0 release 2019-11-11 12:13:53 -08:00
Mark McCaskey
64783423ea Fix WASI append bug, add test 2019-11-08 11:17:04 -08:00
Mark McCaskey
ef5faccb76 Update __wasi_rights_t and __wasi_signal_t with published changes 2019-11-04 13:45:19 -08:00
Mark McCaskey
aaa0160c95 Fix values of __wasi_advice_t 2019-11-04 10:48:42 -08:00
newpavlov
8e6f4c448b reuse __WASI_EIO error code 2019-10-28 18:37:14 +03:00
newpavlov
b67f2c9f18 use getrandom instead of rand 2019-10-28 18:33:15 +03:00
Mark McCaskey
82f258b888 Prepare for 0.9.0 release 2019-10-23 13:40:35 -07:00
Mark McCaskey
0fd0ab6e58
Merge branch 'master' into ventuzelo/add-detail-unimplemented-calls-runtime 2019-10-23 12:30:14 -07:00
Mark McCaskey
3a87edc0c1 Remove special casing of stdin, stdout, and stderr in WASI FS 2019-10-22 16:40:01 -07:00
Patrick Ventuzelo
4b3880c88b add details when calling unimplemented! 2019-10-03 11:26:54 +02:00
Mark McCaskey
c77cbc1f40 Prepare for 0.8.0 release 2019-10-02 15:40:35 -07:00
Mark McCaskey
afbde49d1f Update stub wasi generate import object fn
Fix typo

Fix debug issue
2019-10-02 13:16:47 -07:00
Mark McCaskey
5185f120f4 Update some from feedback, fix tests
format with 1.37
2019-10-02 11:25:55 -07:00
Mark McCaskey
4660bc6652 Update API to be more cleann 2019-09-30 17:52:53 -07:00
Mark McCaskey
38602b257b Move validation to end of Builder 2019-09-30 16:32:18 -07:00
Mark McCaskey
2e860e589a Add builder API for WasiState 2019-09-30 15:26:04 -07:00
Mark McCaskey
871310a851 Improve docs from feedback 2019-09-27 10:15:40 -07:00
Mark McCaskey
dc1744560c Add lots of rustdocs and clean up one line of code 2019-09-26 17:17:50 -07:00
Syrus
fec90b570b Delete unused runtime-abi 2019-09-24 22:10:03 -07:00
Syrus
9942d3ae98 Improved Emscripten / WASI autodetection 2019-09-22 18:23:22 -07:00
Mark McCaskey
bf396ec76d Remove patch version in deps when not necessary 2019-09-20 16:11:09 -07:00
Mark McCaskey
0f4d266e4e Prepare for 0.7.0 release 2019-09-12 12:44:38 -07:00
bors[bot]
38048b6acf
Merge #774
774: Introduce some breaking changes to WasiFS API for next release r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-09-12 18:55:29 +00:00
Mark McCaskey
35ee83d5ca og -> original 2019-09-11 16:31:43 -07:00
Mark McCaskey
6fe3719e8e Add test for closing wasi preopen fd 2019-09-11 14:25:53 -07:00
Mark McCaskey
7e640c0dfb Introduce some breaking changes to WasiFS API for next release 2019-09-10 13:52:02 -07:00
Mark McCaskey
7a9afbffe9
Merge branch 'master' into feature/serialization-of-wasi-state 2019-09-04 14:36:25 -07:00
Syrus
d8471e2b6a Improved docs with custom logo and favicon 2019-09-03 17:06:31 -07:00
dependabot-preview[bot]
616b768529
Bump winapi from 0.3.7 to 0.3.8
Bumps [winapi](https://github.com/retep998/winapi-rs) from 0.3.7 to 0.3.8.
- [Release notes](https://github.com/retep998/winapi-rs/releases)
- [Commits](https://github.com/retep998/winapi-rs/compare/0.3.7...0.3.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 09:11:48 +00:00
Mark McCaskey
8b32a838f7
Merge branch 'master' into feature/serialization-of-wasi-state 2019-08-30 05:16:50 +09:00
Mark McCaskey
7027d7b2c8 Improve code reuse in polling, reduce cfg usage too 2019-08-29 10:54:27 -07:00
Mark McCaskey
fba6dbff78 Add tests for stdin, stdout, stderr; implement bytes_available too 2019-08-29 10:42:38 -07:00
Mark McCaskey
0776da7e22 Remove fd_entry lookup on stdin,out,err for wasi::poll_oneoff 2019-08-28 16:14:14 -07:00