4565 Commits

Author SHA1 Message Date
Mark McCaskey
286e5db370 Remove vestigial debug features from various crates 2020-01-14 13:03:19 -08:00
Mark McCaskey
12f7416a85 Update logging to use log, add command line flag to toggle it 2020-01-14 12:41:46 -08:00
Syrus Akbary
a8ed5b9d1a
Update README.md 2020-01-14 12:06:32 +01:00
bors[bot]
4099cc1984
Merge #1142
1142: doc(runtime-c-api) Setup Doxygen r=syrusakbary a=Hywan

With @MarkMcCaskey, we discussed generating the documentation of `wasmer-runtime-c-api` with [Doxygen](http://www.doxygen.nl/).

This patch does the following:

1. Set up a `doxyfile`, which is the configuration file for Doxygen.
2. Set up a `doc/header.html` and `doc/footer.html` files, because Doxygen HTML output is… well, not a master piece 😉.
3. Set up a `doc/css/wasmer.css` stylesheet. I tried to mimic Wasmer color scheme. Usually, I'm not a bad designer, but Doxygen HTML output is so “alembic-ed” that it makes customizing the CSS a real challenge for the very short period of time I've.

Anyway, I believe it's an acceptable first step.

To generate the documentation:

```sh
$ doxygen doxyfile
```

And then open `doc/html/index.html`.

It looks like this:

![Screen Shot 2020-01-13 at 15 20 09](https://user-images.githubusercontent.com/946104/72263046-692ea100-3618-11ea-9feb-6dfd3244d375.png)
![Screen Shot 2020-01-13 at 15 20 25](https://user-images.githubusercontent.com/946104/72263072-70ee4580-3618-11ea-941d-fa652bd7f14e.png)
![Screen Shot 2020-01-13 at 15 20 35](https://user-images.githubusercontent.com/946104/72263082-7481cc80-3618-11ea-81e7-f4da7b71d665.png)
![Screen Shot 2020-01-13 at 15 20 57](https://user-images.githubusercontent.com/946104/72263098-78155380-3618-11ea-9cfc-16b7695c9e89.png)

The next step is to publish the documentation on Github Pages, thoughts @syrusakbary?

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2020-01-14 08:08:06 +00:00
bors[bot]
220ad08337
Merge #1145
1145: Update io device file name r=MarkMcCaskey a=MarkMcCaskey

Small update

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-14 02:03:20 +00:00
Mark McCaskey
3fd1408cbc Update io device file name 2020-01-13 17:56:46 -08:00
Syrus Akbary
88d0dc5626
Merge pull request #1144 from Hywan/fix-runtime-c-api-build
fix(runtime-c-api) Remove duplicated line
2020-01-13 18:01:56 +01:00
Ivan Enderlin
6dbfa9d4a2 fix(runtime-c-api) Remove duplicated line.
A copy-paste error has been spotted!
2020-01-13 17:11:12 +01:00
Syrus Akbary
cb5cf00442
Update CHANGELOG.md 2020-01-13 15:14:56 +01:00
Ivan Enderlin
7df0bbcc1e doc(runtime-c-api) Setup Doxygen. 2020-01-13 15:14:30 +01:00
bors[bot]
b27c35326c
Merge #1099
1099: Remove backend::Backend from runtime-core r=syrusakbary a=syrusakbary

<!-- 
Prior to submitting a PR, review the CONTRIBUTING.md document for recommendations on how to test:
https://github.com/wasmerio/wasmer/blob/master/CONTRIBUTING.md#pull-requests

-->

# Description

This PR removes the dependency of a Backend in runtime-core. So it's agnostic and more backends can be plugged in easily.

Why this is important?
* By removing backends from wasmer-runtime-core we can make the runtime agnostic, so anyone can plug their own backend into Wasmer without needing to touch the main source code (V8, JavascriptCore, wasm3, ...).
* It simplifies the codebase and avoids code leaks from the backend to the runtime API.

<!-- 
Provide details regarding the change including motivation,
links to related issues, and the context of the PR.
-->

# Review

- [x] Add a short description of the the change to the CHANGELOG.md file


Co-authored-by: Syrus <me@syrusakbary.com>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-01-13 11:05:20 +00:00
Syrus
3892ea827d Fixed lint 2020-01-13 12:04:39 +01:00
Syrus
846c632b50 Fixed runtime check 2020-01-13 10:17:37 +01:00
Syrus
4faa78b38c Fixed changelog link 2020-01-13 10:17:37 +01:00
Syrus
aa6189a06a Make all tests pass 2020-01-13 10:17:37 +01:00
dependabot-preview[bot]
22e35fc670 Bump cc from 1.0.48 to 1.0.50
Bumps [cc](https://github.com/alexcrichton/cc-rs) from 1.0.48 to 1.0.50.
- [Release notes](https://github.com/alexcrichton/cc-rs/releases)
- [Commits](https://github.com/alexcrichton/cc-rs/compare/1.0.48...1.0.50)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 10:17:37 +01:00
dependabot-preview[bot]
f18a4280a6 Bump regex from 1.3.1 to 1.3.3
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.1 to 1.3.3.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.1...1.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 10:17:36 +01:00
dependabot-preview[bot]
00618e852e Bump parking_lot from 0.9.0 to 0.10.0
Bumps [parking_lot](https://github.com/Amanieu/parking_lot) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/Amanieu/parking_lot/releases)
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Amanieu/parking_lot/compare/0.9.0...0.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 10:17:36 +01:00
dependabot-preview[bot]
8fd143368d Bump getrandom from 0.1.13 to 0.1.14
Bumps [getrandom](https://github.com/rust-random/getrandom) from 0.1.13 to 0.1.14.
- [Release notes](https://github.com/rust-random/getrandom/releases)
- [Changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/getrandom/compare/v0.1.13...v0.1.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 10:17:36 +01:00
Mark McCaskey
5b52589021 Update the experimental io device path to include /dev/ 2020-01-13 10:17:36 +01:00
Mark McCaskey
cc28804efe Update the name of experimental IO devices in fs 2020-01-13 10:17:36 +01:00
Syrus Akbary
da0d8b39c5
Merge pull request #1139 from wasmerio/dependabot/cargo/cc-1.0.50
Bump cc from 1.0.48 to 1.0.50
2020-01-13 10:10:51 +01:00
Syrus Akbary
0eb6ea0800
Merge pull request #1138 from wasmerio/dependabot/cargo/regex-1.3.3
Bump regex from 1.3.1 to 1.3.3
2020-01-13 10:10:38 +01:00
Syrus Akbary
10d9650d5f
Merge pull request #1136 from wasmerio/dependabot/cargo/parking_lot-0.10.0
Bump parking_lot from 0.9.0 to 0.10.0
2020-01-13 10:10:24 +01:00
Syrus Akbary
82a9881ccb
Merge pull request #1135 from wasmerio/dependabot/cargo/getrandom-0.1.14
Bump getrandom from 0.1.13 to 0.1.14
2020-01-13 10:10:12 +01:00
dependabot-preview[bot]
cbd5ed1916
Bump cc from 1.0.48 to 1.0.50
Bumps [cc](https://github.com/alexcrichton/cc-rs) from 1.0.48 to 1.0.50.
- [Release notes](https://github.com/alexcrichton/cc-rs/releases)
- [Commits](https://github.com/alexcrichton/cc-rs/compare/1.0.48...1.0.50)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 07:59:14 +00:00
dependabot-preview[bot]
25f75a0f98
Bump regex from 1.3.1 to 1.3.3
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.1 to 1.3.3.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.1...1.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 07:58:45 +00:00
dependabot-preview[bot]
5364b2c308
Bump parking_lot from 0.9.0 to 0.10.0
Bumps [parking_lot](https://github.com/Amanieu/parking_lot) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/Amanieu/parking_lot/releases)
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Amanieu/parking_lot/compare/0.9.0...0.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 07:57:23 +00:00
dependabot-preview[bot]
1556e3090c
Bump getrandom from 0.1.13 to 0.1.14
Bumps [getrandom](https://github.com/rust-random/getrandom) from 0.1.13 to 0.1.14.
- [Release notes](https://github.com/rust-random/getrandom/releases)
- [Changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/getrandom/compare/v0.1.13...v0.1.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 07:56:50 +00:00
bors[bot]
95cc18ae8f
Merge #1134
1134: Update the name of experimental IO devices in fs r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-11 01:11:42 +00:00
Mark McCaskey
2fb9415e32 Update the experimental io device path to include /dev/ 2020-01-10 17:10:46 -08:00
Mark McCaskey
600f4ded9e Update the name of experimental IO devices in fs 2020-01-10 17:00:26 -08:00
Syrus Akbary
9ca97706d7
Merge branch 'master' into backend-refactor 2020-01-10 13:41:49 +01:00
Syrus
f353ac00eb Remove unused backend flags 2020-01-10 13:40:21 +01:00
bors[bot]
50f3079d82
Merge #1121
1121: Add test for ImportObject's `allow_missing_functions` r=Hywan a=MarkMcCaskey

work in progress, testing to see if this test fails CI

resolves #1118 

# Review

- [ ] Add a short description of the the change to the CHANGELOG.md file


Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Ivan Enderlin <ivan.enderlin@wanadoo.fr>
2020-01-10 10:16:32 +00:00
Ivan Enderlin
66574e3e27
Merge branch 'master' into fix/import-object-allow-missing 2020-01-10 11:16:09 +01:00
bors[bot]
be29b2e007
Merge #1128
1128: fix(runtime-core) Avoid crashing when missing host functions are allowed r=Hywan a=Hywan

Fix #1118. #1121 can be merged after

This PR fixes 2 things:

* When droping the import backing, check that `vm::FuncCtx` isn't null before dropping it,
* Use an `always_trap` as a placeholder host function when a host function is missing.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2020-01-10 09:23:58 +00:00
Ivan Enderlin
43742cf980 doc(changelog) Add #1128. 2020-01-10 10:18:51 +01:00
Ivan Enderlin
9b2f0fc635 chore(runtime-core) Avoid code duplication. 2020-01-10 10:15:26 +01:00
bors[bot]
57b6ad0600
Merge #1126
1126: Set default scale on fb window to fit screen r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-09 22:15:02 +00:00
bors[bot]
fab3b787eb
Merge #1130
1130: Add WindowClosed event to experimental fb r=MarkMcCaskey a=MarkMcCaskey

Allows things to behave properly and know when the window closes

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-09 20:25:36 +00:00
Mark McCaskey
b08b65913b Add WindowClosed event to experimental fb 2020-01-09 12:11:34 -05:00
Ivan Enderlin
c81e49a091 feat(runtime-core) Replace missing host function by always_trap. 2020-01-09 15:12:09 +01:00
Ivan Enderlin
6018aa32e1 fix(runtime-core) Drop vm::FuncCtx if not null. 2020-01-09 15:11:51 +01:00
Ivan Enderlin
19c3837881 feat(runtime-core) Create the always_trap host function. 2020-01-09 15:10:53 +01:00
Ivan Enderlin
cd6e4bdaee test(runtime) Fix CS. 2020-01-09 15:10:23 +01:00
bors[bot]
6370fd7b81
Merge #1123
1123: feat(runtime-c-api) Define the `DEPRECATED` C macro. r=Hywan a=Hywan

This PR defines a cross-compiler `DEPRECATED(message)` macro. It must
be used as follows in Rust:

```rust
/// This is a documentation.
/// cbindgen:prefix=DEPRECATED("This is a deprecation message.")
pub extern "C" fn wasmer_foo() -> c_uint {
    42
}
```

It will generate the following C header:

```c
/**
 * This is a documentation.
 */
DEPRECATED("This is a deprecation message.")
unsigned int wasmer_foo();
```

And once this code is used by a C compiler, it will print something
like this (example from Clang):

```
…/test.c:…:…: error: 'wasmer_foo' is deprecated: This is a deprecation message. [-Werror,-Wdeprecated-declarations]
    unsigned int x = wasmer_foo();
                     ^
…/wasmer.h:…:…: note: 'wasmer_foo' has been explicitly marked deprecated here
DEPRECATED("This is a deprecation message.")
^
…/wasmer.h:…:…: note: expanded from macro 'DEPRECATED'
```

This is required for further deprecations.

(cf https://github.com/eqrion/cbindgen/issues/408)

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Ivan Enderlin <ivan.enderlin@wanadoo.fr>
2020-01-09 13:11:52 +00:00
Ivan Enderlin
49401b7a9d
Merge branch 'master' into feat-runtime-c-api-deprecated 2020-01-09 14:11:30 +01:00
Mark McCaskey
f48a74e44a Set default scale on fb window to fit screen 2020-01-09 06:48:03 -05:00
Ivan Enderlin
7b6d8993e1 chore(runtime-c-api) Update C/C++ headers. 2020-01-09 10:17:34 +01:00