Commit Graph

170 Commits

Author SHA1 Message Date
Christoph Herzog
5109a407c4 WASIX Preparation
This commit extracts changes to core libraries made in the WASIX branch.

It is not reasonable to extract the partial commit history, so this is
just a batch commit.

The history will make a bit more sense again if we decide to merge the
WASIX branch with full commit history.
2022-12-16 11:47:04 +01:00
Wolfgang Silbermayr
89bba319a9 No longer require FunctionEnvMut for new_typed(…) callback function 2022-08-05 14:27:44 +02:00
Wolfgang Silbermayr
7df3e3ca23 Rename {native,typed} functions, reintroduce *_with_env variants 2022-08-05 14:27:44 +02:00
John Sharratt's Shared Account
5aa356f222 Fixed a memory corruption issue with JS memory operations that were reusing invalid views 2022-07-31 20:31:41 +10:00
Manos Pitsidianakis
214346af3b Merge Backend into EngineBuilder and refactor feature flags 2022-07-27 21:03:24 +03:00
Manos Pitsidianakis
924d2dcf4e Remove Universal mentions from cargo features 2022-07-25 14:45:27 +03:00
Syrus Akbary
43138b569c Rename all mentions from ctx to store
Updated tests and examples

Improved a bit the function types and results
2022-07-20 01:55:04 +03:00
ptitSeb
de384bb9cc Fixed residual package-doc issues 2022-07-19 15:25:24 +02:00
Syrus Akbary
a419ccdf52 Move Webassembly objects to Store and remove Context
Co-authored-by: ptitSeb <sebastien.chev@gmail.com>
Co-authored-by: Manos Pitsidianakis <manos@wasmer.io>
2022-07-19 15:31:51 +03:00
ptitSeb
d12759f150 Migrated internal samples to new Context API 2022-07-19 15:31:51 +03:00
Manos Pitsidianakis
6c089bbc45 Port JS API to new Context API 2022-07-19 15:31:51 +03:00
Manos Pitsidianakis
168e330260 Renamed get_native_function to get_typed_function, marked former as deprecated. 2022-07-19 15:31:51 +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
Wolfgang Silbermayr
5339f7cdae Fix clippy lints
Fixes: #2926
2022-06-09 16:05:53 +02:00
Wolfgang Silbermayr
da4e9fe617 Rename NativeFunc to TypedFunction
Closes: #2915
2022-06-08 14:12:51 +03:00
Manos Pitsidianakis
8aa225a192 api/sys: Replace ImportObject with new type Imports 2022-06-08 14:09:40 +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
Ivan Enderlin
3239fe4f6d doc(api) Improve the crate documentation. 2021-07-23 16:14:44 +02:00
Ivan Enderlin
fcc9e741c3 feat(api) Set crate-type only if js feature is turned on. 2021-07-23 15:06:28 +02:00
Ivan Enderlin
5bfd45e6ab doc(api) Update documentation. 2021-07-23 14:43:19 +02:00
Ivan Enderlin
36c4f92dad fix(api) Use the sys feature when no default features is enabled. 2021-07-23 13:52:02 +02:00
Ivan Enderlin
b30284897e feat(api) Merge js-api into api.
This patch takes the entire `wasmer-js` crate and merges it into the
`wasmer` crate.

Inside the `lib/api/src/` directory, there are 2 new directories:

1. a new `sys` directory, which contains the usual `wasmer` crate
   implementation,
2. a new directory `js`, which contains the implementation of
   `wasmer-js`.

The `Cargo.toml` file is still compatible. The `default` feature
fallbacks to `sys-default`, which enables the `sys` feature. All
features related to compilers or engines or anything else prior this
patch, activates the `sys` feature.

Parallel to that, there is a `js-default` and `js` features.

The `Cargo.toml` file is extensively documented to explain what are
dependencies, dev-dependencies, features and other sections related to
`sys` or to `js`.

There is a bug with `wasm_bindgen_test` where it doesn't compile or
look for tests in `tests/*/<test>.rs`. The hack is to name files
`tests/js_<test>.rs`. Ugly, but it works.
2021-07-23 12:10:49 +02:00
Syrus Akbary
dc84bd48de Added WasmCell to the API 2021-06-24 12:04:58 -07:00
Syrus Akbary
05c4054849 Added docs to the Wasmer API 2021-06-02 00:52:26 -07:00
Syrus Akbary
2b69176a86 Added API compatibility layer 2021-06-02 00:29:55 -07:00
Ivan Enderlin
ff4a127dbb chore(api): Remove the deprecated feature and associated code. 2021-05-31 17:13:14 +02:00
Ivan Enderlin
3d66a2e360 feat: Rename wasmer-engine-native to wasmer-engine-dylib. 2021-05-28 14:13:24 +02:00
Ivan Enderlin
79d5f20301 feat: Rename wasmer-engine-native to wasmer-engine-shared-object. 2021-05-28 14:13:24 +02:00
Ivan Enderlin
e5a784a006 feat: Rename wasmer-engine-jit to wasmer-engine-universal.
This (small) patch renames the `wasmer-engine-jit` crate into
`wasmer-engine-universal`.
2021-05-25 16:12:06 +02:00
Syrus Akbary
f7e152a71f Renamed VMExport to VMExtern 2021-05-01 18:22:47 -07:00
k-nasa
7c9984ba50 Fix feature links 2021-04-24 16:32:08 +09:00
k-nasa
40ee361586 fix favicon 2021-04-24 15:34:44 +09:00
Mark McCaskey
bfc91dc445 Feature gate wasmer::ExternRef 2021-03-16 09:24:13 -07:00
Mark McCaskey
d392ce3cd7 Fix up TODOs and get tests passing again 2021-02-24 13:02:32 -08:00
Mark McCaskey
337bb8aba6 Put ExternRef in Value, remove phantom data 2021-02-19 08:06:18 -08:00
Mark McCaskey
828d265428 Add basic API tests with reference types with dynamic functions 2021-02-17 08:11:07 -08:00
Mark McCaskey
b140dc2c8e Add misc code cleanups 2021-02-10 12:13:33 -08:00
Mark McCaskey
7b8c5b3554 More work on reference types -- wip 2021-02-09 10:54:26 -08:00
Alexander Mescheryakov
ba5dabe3f3 Fixed broken link to wasmer-wasi 2021-01-10 22:04:03 +03:00
Alexander Mescheryakov
142a788cfc Fix examples URI 2021-01-07 13:18:07 +03:00
Simon Warta
df74a4812c Create dedicated MiddlewareError 2020-12-23 00:07:00 +01:00
Simon Warta
c41451a547 Replace wasmparser::Result with wasmer::WasmResult in middleware 2020-12-23 00:07:00 +01:00
Simon Warta
9d6fc4a4ba Expose wasmer::LLVMOptLevel 2020-12-17 10:13:07 +01:00
Simon Warta
85bb1039f8 Expose wasmer::CraneliftOptLevel
This is required to do something like

```rust
use wasmer::{Cranelift, CraneliftOptLevel};

let mut compiler = Cranelift::default();
compiler.opt_level(CraneliftOptLevel::None);
let engine = JIT::new(compiler).engine();
// ...
```
2020-12-17 10:13:07 +01:00
Simon Warta
c0e7f194ad Export wasmer::{BaseTunables, Tunables} 2020-12-12 16:07:14 +01:00
Mark McCaskey
7e1274b0b5 Address feedback on API docs 2020-12-10 17:38:01 -08:00
Mark McCaskey
ff194f6251 Add example in the intro, reorder docs 2020-12-09 16:49:07 -08:00
Mark McCaskey
d54a8b8676 Improve Wasmer API intro docs 2020-12-07 13:29:53 -08:00
Syrus Akbary
28c8b877fd Merge branch 'master' into compilerconfig-owned 2020-12-04 13:53:37 -08:00