Manos Pitsidianakis
a6173f9746
Remove wasmer-{artifact,engine} and merge it into wasmer-compiler and wasmer-vm
2022-06-16 16:57:45 +03:00
Manos Pitsidianakis
8be0089893
Remove engine-staticlib
2022-06-16 16:57:45 +03:00
Manos Pitsidianakis
e9d54e130c
Remove engine-dylib
2022-06-16 16:57:45 +03:00
ptitSeb
0cd9dfe3e0
Fixed linter warnings/errors
2022-06-15 19:26:57 +03:00
Johnathan Sharratt
b0709e4153
Implemented multithreading and fixed a number of bugs with WASIX
2022-06-15 19:26:57 +03:00
ptitSeb
3e9de243a5
Fix lint warnings/errors
2022-06-15 19:26:57 +03:00
Johnathan Sharratt
7c532813e7
Multiple changes required to implement the wasmer terminal on the browser
...
- Split functionality out of WasiEnv so that it can support multi-threading
- Added methods to the VFS File Trait that supporting polling
- Implemented basic time functionality for WASI
- Incorported a yield callback for when WASI processes idle
- Improved the error handling on WASI IO calls
- Reduce the verbose logging on some critical WASI calls (write/read)
- Implemented the missing poll functionality for WASI processes
- Moved the syspoll functionality behind a feature flag to default to WASI method
- Refactored the thread sleeping functionality for WASI processes
- Fixed the files system benchmark which was not compiling
- Modified the file system trait so that it is SYNC and thus can handle multiple threads
- Removed the large mutex around filesystem state and implemented granular locks instead
(this is needed to fix a deadlock scenario on the terminal)
- Split the inodes object apart from the state to fix the deadlock scenario.
- Few minor fixes to some warnings when not using certain features
- Sleeping will now call a callback that can be used by the runtime operator when
a WASI thread goes to sleep (for instance to do other work)
- Fixed a bug where paths that exist on the real file system are leaking into VFS
- Timing functions now properly return a time precision on WASI
- Some improved macros for error handling within syscalls (wasi_try_ok!)
- Refactored the remove_directory WASI function which was not working properly
- Refactored the unlink WASI function which was not working properly
- Refactored the poll WASI function which was not working properly
- Updates some of the tests to make them compile again
- Rewrote the OutputCapturer so that it does leak into the internals
2022-06-15 12:00:24 +02:00
Wolfgang Silbermayr
5339f7cdae
Fix clippy lints
...
Fixes : #2926
2022-06-09 16:05:53 +02:00
Manos Pitsidianakis
8aa225a192
api/sys: Replace ImportObject with new type Imports
2022-06-08 14:09:40 +03:00
Manos Pitsidianakis
f01551faa3
lib/cli: add required feature to default binary
2022-06-07 12:21:00 +03:00
Manos Pitsidianakis
33654c1a1d
Release version 2.3.0
2022-06-06 22:27:57 +03:00
ptitSeb
0c7ea79bfc
Cleanup:
...
Removed conditionnal toml on wasm for VM as it's not builded in that configuration
Added unwind to wasm build
Moved Trap back to vm (from types) as it's used only on Runtime
Move MemoryError back to vm (from types) as it's used on Runtime only scenario
Some cleanup and lint fixes
Removed wasm build case from vfs/host_fs as it's not used
2022-05-03 09:34:13 +02:00
ptitSeb
1f3613c881
Split Artifact to have ArtifactCreate that handles only the creation part, not the run part
2022-05-03 09:32:34 +02:00
ptitSeb
d5bbfd0768
Moved TrapCode enum to wasmer_types, and adapted compiler and wompiler-singlepass
2022-05-03 09:32:34 +02:00
Manos Pitsidianakis
f36ce4fec8
wasmer-cli: remove wasi-experimental-io-devices from default builds
...
wasi-experimental-io-devices introduces extra build and possibly runtime lib
dependencies, which are unnecessary for the vast majority of users.
Closes #2863
2022-04-30 16:50:42 +03:00
Manos Pitsidianakis
77af8ba634
Fix some clippy lints
...
Before:
```
% make lint 2>&1 | grep warnings | sort | uniq
error: could not compile `wasmer-cli` due to previous error; 25 warnings emitted
warning: `compiler-test-derive` (lib) generated 8 warnings
warning: `test-generator` (lib) generated 4 warnings
warning: `wasi-test-generator` (bin "wasi-test-generator") generated 8 warnings
warning: `wasmer-cache` (lib) generated 4 warnings
warning: `wasmer-cli` (lib) generated 25 warnings
warning: `wasmer-compiler-cranelift` (lib) generated 50 warnings
warning: `wasmer-compiler-singlepass` (lib) generated 228 warnings
warning: `wasmer-compiler` (lib) generated 3 warnings
warning: `wasmer-emscripten` (lib) generated 182 warnings
warning: `wasmer-engine-dummy` (lib) generated 6 warnings
warning: `wasmer-engine-dylib` (lib) generated 37 warnings
warning: `wasmer-engine-staticlib` (lib) generated 16 warnings
warning: `wasmer-engine-staticlib` (lib) generated 7 warnings
warning: `wasmer-engine-universal` (lib) generated 11 warnings
warning: `wasmer-engine` (lib) generated 15 warnings
warning: `wasmer-object` (lib) generated 5 warnings
warning: `wasmer-types` (lib) generated 31 warnings
warning: `wasmer-vfs` (lib) generated 4 warnings
warning: `wasmer-vm` (lib) generated 40 warnings
warning: `wasmer-wasi-experimental-io-devices` (lib) generated 11 warnings
warning: `wasmer-wasi-types` (lib) generated 3 warnings
warning: `wasmer-wasi` (lib) generated 13 warnings
warning: `wasmer-wast` (lib) generated 11 warnings
warning: `wasmer` (lib) generated 54 warnings
```
After:
```
warning: `wasmer-cli` (lib) generated 16 warnings
warning: `wasmer-compiler-cranelift` (lib) generated 48 warnings
warning: `wasmer-compiler-singlepass` (lib) generated 213 warnings
warning: `wasmer-emscripten` (lib) generated 170 warnings
warning: `wasmer-engine-dummy` (lib) generated 6 warnings
warning: `wasmer-engine-dylib` (lib) generated 4 warnings
warning: `wasmer-engine-staticlib` (lib) generated 14 warnings
warning: `wasmer-engine-staticlib` (lib) generated 5 warnings
warning: `wasmer-engine-universal` (lib) generated 9 warnings
warning: `wasmer-engine` (lib) generated 12 warnings
warning: `wasmer-object` (lib) generated 3 warnings
warning: `wasmer-types` (lib) generated 7 warnings
warning: `wasmer-vm` (lib) generated 36 warnings
warning: `wasmer-wasi-experimental-io-devices` (lib) generated 6 warnings
warning: `wasmer-wasi-types` (lib) generated 3 warnings
warning: `wasmer-wasi` (lib) generated 9 warnings
warning: `wasmer-wast` (lib) generated 9 warnings
warning: `wasmer` (lib) generated 42 warnings
```
2022-04-20 18:25:04 +03:00
Amanieu d'Antras
fe9d2d8d22
Release version 2.2.1
2022-03-15 11:02:31 +00:00
Amanieu d'Antras
4dd1634218
Release version 2.2.0
2022-02-28 17:19:14 +00:00
Amanieu d'Antras
cdb7dc81f8
Enable experimental-io-devices by default
...
Fixes #2695
2022-02-24 18:33:08 +00:00
Amanieu d'Antras
15f9d2646f
Release version 2.2.0-rc1
2022-02-15 19:10:24 +00:00
Amanieu d'Antras
4e27e1164c
Release version 2.2.0-rc1
2022-01-27 23:59:27 +00:00
Amanieu d'Antras
fb7a572415
Use exact version for Wasmer crate dependencies
...
We don't guarantee API compatibility between internal Wasmer crates when
making minor version bumps.
2022-01-19 21:35:09 +00:00
Julius Michaelis
3bb95d51ed
Use unix_mode crate to check file modes in binfmt registration
2022-01-07 22:13:59 +09:00
Julius Michaelis
248735cb8b
binfmt register: Fix getting exe path when calling wasmer from $PATH
2022-01-07 20:59:59 +09:00
Amanieu d'Antras
ebcea4a5c4
Release v2.1.1
2021-12-21 12:19:50 +01:00
Amanieu d'Antras
092c2b065b
Fix headless build and test it in CI
2021-12-01 13:21:46 +00:00
Amanieu d'Antras
c650ffea33
Version 2.1.0
2021-11-30 23:46:54 +00:00
Amanieu d'Antras
57a8a0936b
Provide WASI imports when invoking an explicit export from the CLI
2021-11-30 00:37:14 +00:00
ptitSeb
22700985e8
Merge branch 'master' into register-binfmt
2021-11-05 11:23:20 +01:00
ptitSeb
db974abed3
Merge branch 'master' into register-binfmt
2021-11-05 10:11:31 +01:00
Amanieu d'Antras
680d6bb596
Fix argument parsing of --dir and --mapdir
...
Previously in "wasmer --dir foo bar.wasm" the "bar.wasm" was being
treated as another directory instead of the module to run.
Fixes #2445
2021-11-05 00:16:52 +00:00
Ivan Enderlin
5ae6b98528
fix(cli) Simplify a pattern matching.
2021-08-30 16:09:54 +02:00
Ivan Enderlin
167d9268eb
Merge branch 'master' into js-api-wasi
2021-08-30 12:04:27 +02:00
Ivan Enderlin
19f584606d
fix(cli) Only enable host-fs, exclude mem-fs.
2021-08-30 11:49:14 +02:00
Syrus Akbary
62c467bcee
Updated blake3
2021-08-20 12:33:03 -07:00
Pouya Kary ✨
859b53f06c
a nicer errow arrow head
2021-08-19 17:22:26 +04:30
Ivan Enderlin
5b53c5497a
fix(c-api,cli) Use the default features from wasmer-wasi.
...
`wasmer-wasi`'s default features don't change, except that it adds
`host_fs` in the default features, which maps to
`wasmer-vfs/host_fs`. It then ensures that the same behavior is
guaranteed.
We don't need to change how `wasmer-cli` and `wasmer-c-api` fetch
`wasmer-wasi` in this case.
2021-08-16 15:54:19 +02:00
Julius Michaelis
de8a663df8
cargo fmt
2021-08-04 08:52:06 +09:00
Julius Michaelis
ed18febfce
binfmt_misc: register .wat
2021-08-04 08:52:00 +09:00
Julius Michaelis
aa0d1c96db
binfmt_misc: Fix mount point path parameter
2021-08-03 22:02:22 +09:00
Julius Michaelis
d111c43711
binfmt: Safer order for folder premission check
2021-08-02 18:32:23 +09:00
Julius Michaelis
a96af441a4
binfmt_misc: target_os = linux
2021-08-02 13:12:06 +09:00
Julius Michaelis
1a6acfac7d
binfmt_misc: example systemd service file
2021-08-01 12:39:21 +09:00
Julius Michaelis
0c8f4d13b2
Subcommand for registering wasmer as a binfmt_misc interpreter
2021-08-01 12:39:18 +09:00
Julius Michaelis
08c885fa58
cli: Act as a binfmt interpreter when invoked from a special path
2021-08-01 12:38:04 +09:00
Syrus Akbary
4200f2e79a
Base support for WASI in wasmer-js
...
commit b6245ddd19077015a974e9ffd28f164fedb87801
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 23:07:45 2021 -0700
Remove unused code
commit 6bbf28c5c6d8c4603606e21af3190c52f41cbeb8
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:50:50 2021 -0700
Remove set_last_accessed, set_last_modified, set_created_time from the VirtualFs
commit 999d6941c93f0ea8c8c803c7b1843ec90bd178b5
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:42:23 2021 -0700
Remove webc files
commit 197b72a8978a2364145e20ebd6d44b5bd23082db
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:38:29 2021 -0700
Revert "Wip updates for python webc"
This reverts commit 2d3e013e64424c0a50f32f44ad0401680d31bf9d.
# Conflicts:
# Cargo.lock
# lib/cli/Cargo.toml
# lib/cli/src/commands/run.rs
# lib/cli/src/commands/run/wasi.rs
# lib/vfs/Cargo.toml
# lib/wasi/Cargo.toml
# lib/wasi/src/state/builder.rs
# lib/wasi/src/state/mod.rs
commit 83b7e3b1a1708ed34694e9a44902bd6d0617f0a4
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:34:36 2021 -0700
revert Remove webc
commit 2de7f7f0ce518c74912509ef1fa4b7b1f00c4d11
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:31:05 2021 -0700
Improved testing
commit 97075c5fa69fd2ef9192a4a9737400359e0ee37f
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 22:06:08 2021 -0700
Improved bindings
commit 9388790c2d31654701dd2925d30bfb35b158727c
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 18:15:43 2021 -0700
Renamed virtual-fs to vfs
commit 41d91328cd83d10c0fa7242fcfd731335bcd741e
Merge: c0634645a 51fdf66d5
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 18:00:49 2021 -0700
Merge branch 'master' into js-api-wasi
commit c0634645aebdf25fb545c63368114b531934970d
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 15:06:08 2021 -0700
Fixed serde dependency
commit 02def893ae24f2da279ed6d3b39b4e50c18ec708
Merge: f13e4c86d d3930be60
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 23 15:04:35 2021 -0700
Merge branch 'js-api' into js-api-wasi
# Conflicts:
# lib/wasi/Cargo.toml
commit f13e4c86d48a0a527fa72270f29c9f8b97a6f820
Merge: f4ac010e1 fe04ea894
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 16 00:01:19 2021 -0700
Merge branch 'js-api' into js-api-wasi
commit f4ac010e1ff33cd046474a500bb5b9e4604085f6
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 15 22:50:09 2021 -0700
Use latest resolver for namespace
commit 505896a47c7d658cb4e39ab5256c9e960a2fedc6
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 15 22:49:48 2021 -0700
Updated WASI implementation
commit 30470cb81248a388ea5cf27f1838aeb264dc8956
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 15 15:51:56 2021 -0700
Improved logging
commit caf0c8289ad8ce2471558baab17adee4abc011f5
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 15 13:55:43 2021 -0700
Improved wasmer-js debugging
commit 4e2278dafe8999c262a0cea5afd23f8ae895abcb
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 15 08:29:35 2021 -0700
Added wasi tests
commit 4f5c1fdbdae1f953498016c32d158038b6a6dc97
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 22:22:41 2021 -0700
Fixed build
commit 692111d098b73229dbe722645b3d86ff6f5e4a5e
Merge: 35dade1b1 7195a9c3f
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 22:18:01 2021 -0700
Merge branch 'js-api' into js-api-wasi
# Conflicts:
# lib/js-api/src/trap.rs
commit 35dade1b16f01ce67a23ba4fbfa25224dda1403e
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 22:12:38 2021 -0700
Fixed wasi wast
commit d3a6b42f8ebd790024c7631a87a295bd6957bb80
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 22:12:22 2021 -0700
Added extra instruction for wasmer-js
commit 95b5c1ad005b17a3bacca45f906d717780f4f95a
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 22:12:12 2021 -0700
Improved API to be resilient in and out js
commit e4074de27bd4adcd9ee8e9e4973c2cfd5208d523
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 18:54:14 2021 -0700
Improved traps
commit e512e06cc8c476a74eb9a8e381b0d4019cdc4365
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 18:31:30 2021 -0700
Improved WasiFs
commit cc7bda3ae33a01336e79e0a6ca48e2a72eb0ad98
Merge: 0721bbfe0 8047e3eb6
Author: Syrus Akbary <me@syrusakbary.com >
Date: Wed Jul 14 15:15:05 2021 -0700
Merge branch 'js-api' into js-api-wasi
# Conflicts:
# lib/js-api/Cargo.toml
# lib/js-api/src/cell.rs
# lib/js-api/src/env.rs
# lib/js-api/src/export.rs
# lib/js-api/src/exports.rs
# lib/js-api/src/externals/function.rs
# lib/js-api/src/externals/memory.rs
# lib/js-api/src/externals/table.rs
# lib/js-api/src/instance.rs
# lib/js-api/src/lib.rs
# lib/js-api/src/module.rs
commit 0721bbfe04d8d3b54ddcfa66a60a3cb501631ac6
Merge: 8354e03f1 3604debec
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 2 16:15:49 2021 -0700
Merge branch 'master' into js-api-wasi
commit 8354e03f19b810f8fdaf0cadc3eb89bad30220ab
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 2 10:25:27 2021 -0700
Improved sync
commit bfa6db7e7201b46fd992361699141df501e6d13c
Merge: 30aa8d4bb 7553efba3
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jul 2 10:07:23 2021 -0700
Merge branch 'features-cell' into js-api-wasi
# Conflicts:
# lib/api/src/ptr.rs
commit 30aa8d4bb0115b3bb8275212d2f33327d32546e6
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 1 17:36:47 2021 -0700
Improved VirtualFS
commit a72dc93d345ca2c4967a75a0e3ef5243ebe86f33
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jul 1 17:36:37 2021 -0700
Improved wasmer-js API
commit 63c13f371f19103adb74a6f394c4c09d8fcc4d52
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:32:33 2021 -0700
Updated memory_fs
commit a9e7206b7437984ac367351ea75bb14c8cafaf4d
Merge: 6e7285af0 be5af68ef
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:14:29 2021 -0700
Merge branch 'feature/webc' into js-api-wasi
# Conflicts:
# Cargo.lock
# lib/cli/Cargo.toml
# lib/virtual-fs/Cargo.toml
# lib/wasi/Cargo.toml
# lib/wasi/src/state/mod.rs
commit 6e7285af02367a6431b302c17b708f8e0854be82
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:07:39 2021 -0700
Updated virtual fs deps
commit 5eab9ac6f629ddb82f5e97c5fce37998fadf262d
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:07:29 2021 -0700
Make wasi not serializable
commit 1d242d4564e898d773601b87d135a8f5dc4a0f57
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:05:30 2021 -0700
Set WASI to use Strings instead of str
commit 1d7cd64232e4bdd57b64d884d4d9b38dd68e1cdb
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 17:03:23 2021 -0700
Improve Virtual FS
commit 85f4bbe5ebc0e87138e74a43665616e96772ac5d
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 16:57:14 2021 -0700
wasmer-js: Added functions to the mix
commit 27effe1eda37a1d810a80a489ff5c737e986f200
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 16:01:12 2021 -0700
wasmer-js function environments working
commit be5af68efe44c5084dd140f9cc6b425f61a84f8a
Author: Mark McCaskey <mark@wasmer.io >
Date: Fri Jun 25 15:01:18 2021 -0700
Move webc vfs impl into wasmer src tree
commit 765c89bb3954699b86a2b820fd40857811e6c466
Author: Mark McCaskey <mark@wasmer.io >
Date: Fri Jun 25 14:38:19 2021 -0700
Get python.webc working
commit bedc25cbf00a91cca193bb21834117dc3344febe
Author: Syrus Akbary <me@syrusakbary.com >
Date: Fri Jun 25 09:17:26 2021 -0700
wasmer-js improve get_host_environment
commit ee3a36d53b06be72dc00877332c4aaf0b2f57aa4
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jun 24 19:37:34 2021 -0700
Added wasm32 API
commit c136c2ac6829e4ac3d916dc5687a7c999dd6c412
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jun 24 18:56:19 2021 -0700
Improved wasmer_js API
commit f819cbbb629442f6f020985ca34b2b57bc90deca
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jun 24 18:32:29 2021 -0700
Improved wasmer_js imports
commit 1d4ed08d90808922ee5e74e92f162509ba8c2efb
Merge: 5451d7113 2d3e013e6
Author: Syrus Akbary <me@syrusakbary.com >
Date: Thu Jun 24 17:55:25 2021 -0700
Merge branch 'feature/webc' into js-api-wasi
# Conflicts:
# lib/wasi/src/syscalls/mod.rs
commit 2d3e013e64424c0a50f32f44ad0401680d31bf9d
Author: Mark McCaskey <mark@wasmer.io >
Date: Thu Jun 24 16:54:43 2021 -0700
Wip updates for python webc
commit 3a5a687964780d48e8598247009721badd50d496
Author: Mark McCaskey <mark@wasmer.io >
Date: Wed Jun 23 10:36:06 2021 -0700
Add patch to get vfs
2021-07-23 23:10:17 -07:00
Syrus Akbary
0537b633bf
Merge branch 'master' into js-api
2021-07-19 15:51:55 -05:00
Syrus Akbary
3ecbdb5150
Error on wasmer validate if the provided file is not wasm. Fix #2477
2021-07-17 14:53:36 -07:00
Syrus Akbary
98481f51fe
Move ModuleInfo to wasmer-types
2021-07-16 15:42:39 -07:00
Mark McCaskey
0c0fdad3d2
Prepare for 2.0.0 release
2021-06-15 11:26:46 -07:00