Commit Graph

3624 Commits

Author SHA1 Message Date
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
bors[bot]
287b42579c
Merge #836
836: Update cranelift backend to fork version 0.44.0 r=bjfish a=bjfish

<!-- 
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
Update cranelift dependency to updated fork version 0.44.0
<!-- 
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: Brandon Fish <brandon.j.fish@gmail.com>
2019-09-26 22:35:22 +00:00
Brandon Fish
6c361853db Merge branch 'master' into feature/merge-cranelift-0-44-0 2019-09-26 17:34:23 -05:00
bors[bot]
44e908698c
Merge #839
839: Update CI to use Rust 1.37 r=MarkMcCaskey a=MarkMcCaskey


# Review

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


Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-09-26 19:38:21 +00:00
Mark McCaskey
4083b5f1d1 Update CI to use Rust 1.37 2019-09-26 12:35:19 -07:00
Brandon Fish
008a1d7369 Update to published cranelift fork version 0.44.0 2019-09-26 08:43:12 -05:00
Brandon Fish
cfbaf4458f Add changelog entry for cranelift fork version update 0.44.0 2019-09-25 23:44:10 -05:00
Brandon Fish
c69cdeca9b Update cranelift backend to fork version 0.44.0 2019-09-25 23:37:39 -05:00
Syrus Akbary
c52c44a6e5
Merge pull request #834 from pventuzelo/ventuzelo/fix-830-panic-unwrap-wasmer-args
Fix 830 panic unwrap wasmer args
2019-09-25 14:21:54 -07:00
Syrus
8a92e52f96 Don’t create unexisting dir 2019-09-25 13:46:32 -07:00
Syrus
d9f2cded26 Trying to improve cache time 2019-09-25 13:35:11 -07:00
Patrick Ventuzelo
de533af2cc
Merge branch 'master' into ventuzelo/fix-830-panic-unwrap-wasmer-args 2019-09-25 22:01:19 +02:00
Syrus Akbary
accedf1139
Merge pull request #833 from wasmerio/doc/import-object-ns-new-method-docs
Add ImportObject `maybe_with_namespace` example
2019-09-25 12:53:55 -07:00
Patrick Ventuzelo
4b8d008f14 add changelog entry 2019-09-25 21:53:18 +02:00
Patrick Ventuzelo
5b3333c6f5 fix unwrap by handling parse error 2019-09-25 21:52:45 +02:00
Mark McCaskey
4266926e90 Add ImportObject maybe_with_namespace example 2019-09-25 12:37:27 -07:00
bors[bot]
cda35afce0
Merge #832
832: Delete unused runtime-abi 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
Delete unused runtime-abi
<!-- 
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>
2019-09-25 17:22:02 +00:00
Syrus Akbary
fdc486c53d
Merge branch 'master' into feature/runtime-abi-delete 2019-09-25 10:21:20 -07:00
bors[bot]
231b1c20bf
Merge #809
809: Fix issue 800 - check index before accessing imports.globals r=syrusakbary a=pventuzelo

# Description

Fix issue #800 

* Check if `import_global_index` is valid i.e inside imports.globals range. 
* Related functions: 
  * validate_memories
  * validate_tables
  * finalize_memories
  * finalize_tables

# After the fix

``` sh
$ ./target/release/wasmer run index_oob_LocalBacking_validate_memories_152.wasm
execute_wasm: "Can\'t instantiate module: LinkError([Generic { message: \"incorrect global index for initializer\" }])"
--------------------------------------------------------------------------------------------------------
$ ./target/release/wasmer run index_oob_LocalBacking_validate_tables_276.wasm 
execute_wasm: "Can\'t instantiate module: LinkError([Generic { message: \"incorrect global index for initializer\" }])"
```

# Review

- [x] Create a short description of the the change in the CHANGELOG.md file


Co-authored-by: Patrick Ventuzelo <ventuzelo.patrick@gmail.com>
Co-authored-by: Patrick Ventuzelo <9038181+pventuzelo@users.noreply.github.com>
2019-09-25 09:50:51 +00:00
Patrick Ventuzelo
b45a228e84
Merge branch 'master' into ventuzelo/fix-800-index-oob-backing 2019-09-25 09:30:33 +02:00
Patrick Ventuzelo
08665f7085 change changelog 2019-09-25 09:28:47 +02:00
Syrus
1efeabb787 Updated changelog 2019-09-24 22:12:51 -07:00
Syrus
fec90b570b Delete unused runtime-abi 2019-09-24 22:10:03 -07:00
Syrus
7bf306eb27 Use flat-square style in downloads button 2019-09-24 13:42:17 -07:00
Syrus
621ef56ab6 lmproved READMEs to use Azure Pipelines badges and better lgo 2019-09-24 13:36:31 -07:00
bors[bot]
961328e9ab
Merge #822
822: Cranelift backend update to fork of clif version 0.43.1 r=bjfish a=bjfish

The corresponding update to fork is here (which should merge first):
https://github.com/wasmerio/cranelift/pull/4

<!-- 
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
<!-- 
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: Brandon Fish <brandon.j.fish@gmail.com>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
2019-09-24 19:37:40 +00:00
Syrus Akbary
588a77d2af
Merge branch 'master' into feature/merge-cranelift-0-43-1 2019-09-24 11:41:14 -07:00
Brandon Fish
b6d55b0b85 Update to published fork version 2019-09-24 13:30:52 -05:00
bors[bot]
42e4871266
Merge #806
806: Fix issue 653 (panic in MemoryDescriptor) + remove panic in UnsharedMemory r=syrusakbary a=pventuzelo

#Description

Based on comment from @syrusakbary [here](https://github.com/wasmerio/wasmer/pull/654#issuecomment-520908172) and previous pull request from @bjfish.
* Reformat MemoryDescriptor (new structure field, function new, function memory_type)
* Remove panic for MemoryDescriptor
* Remove panic for UnsharedMemory

# Review

- [ ] Create a short description of the the change in the CHANGELOG.md file


Co-authored-by: Patrick Ventuzelo <ventuzelo.patrick@gmail.com>
Co-authored-by: Patrick Ventuzelo <9038181+pventuzelo@users.noreply.github.com>
2019-09-24 12:48:16 +00:00
Patrick Ventuzelo
ac321846e3
Merge branch 'master' into ventuzelo/fix-653-panic-memorydescriptor 2019-09-24 09:10:45 +02:00
Patrick Ventuzelo
79ff3709cc fix cargo check fail build 2019-09-24 09:08:55 +02:00
bors[bot]
6792db988f
Merge #829
829: Fix bench targets in makefile r=MarkMcCaskey a=MarkMcCaskey


# Review

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


Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-09-24 00:03:58 +00:00
Mark McCaskey
57b8947d6a Add bench fix to changelog 2019-09-23 16:53:53 -07:00
bors[bot]
7d33b19418
Merge #824
824: Bump structopt from 0.3.1 to 0.3.2 r=MarkMcCaskey a=dependabot-preview[bot]

Bumps [structopt](https://github.com/TeXitoi/structopt) from 0.3.1 to 0.3.2.
<details>
<summary>Changelog</summary>

*Sourced from [structopt's changelog](https://github.com/TeXitoi/structopt/blob/master/CHANGELOG.md).*

> # v0.3.2 (2019-09-18)
> 
> * `structopt` does not replace `:` with `, ` inside "author" strings while inside `<...>`.
>   Fixes [#156](https://github-redirect.dependabot.com/TeXitoi/structopt/issues/156)
> * Introduced [`#[structopt(skip = expr)]` syntax](https://docs.rs/structopt/0.3.2/structopt/#skipping-fields).
</details>
<details>
<summary>Commits</summary>

- [`80a55c0`](80a55c0f35) v0.3.2
- [`5005c47`](5005c47d6d) Support `skip = value` syntax
- [`c3c6273`](c3c6273bb9) Update version in the documentation
- [`fe9e049`](fe9e049596) Do not mangle `author` string inside `\<...>`
- [`52fa726`](52fa726208) Propagate span info from origin code to generated code
- [`af8a4b8`](af8a4b8ff6) Fix nightly tests
- See full diff in [compare view](https://github.com/TeXitoi/structopt/compare/v0.3.1...v0.3.2)
</details>
<br />

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=structopt&package-manager=cargo&previous-version=0.3.1&new-version=0.3.2)](https://dependabot.com/compatibility-score.html?dependency-name=structopt&package-manager=cargo&previous-version=0.3.1&new-version=0.3.2)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)

Finally, you can contact us by mentioning @dependabot.

</details>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2019-09-23 23:35:08 +00:00
Mark McCaskey
91cd88fde6 Fix bench targets in makefile 2019-09-23 16:33:29 -07:00
dependabot-preview[bot]
5fde93dcbd
Bump structopt from 0.3.1 to 0.3.2
Bumps [structopt](https://github.com/TeXitoi/structopt) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/TeXitoi/structopt/releases)
- [Changelog](https://github.com/TeXitoi/structopt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TeXitoi/structopt/compare/v0.3.1...v0.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-23 22:32:22 +00:00
Syrus Akbary
1776b20b31
Merge pull request #795 from wasmerio/dependabot/cargo/serde-1.0.101
Bump serde from 1.0.100 to 1.0.101
2019-09-23 15:30:32 -07:00
dependabot-preview[bot]
2af0311487
Bump serde from 1.0.100 to 1.0.101
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.100 to 1.0.101.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.100...v1.0.101)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-23 22:13:04 +00:00
Syrus Akbary
7376e651ff
Merge pull request #793 from wasmerio/dependabot/cargo/serde_derive-1.0.101
Bump serde_derive from 1.0.100 to 1.0.101
2019-09-23 15:11:06 -07:00
dependabot-preview[bot]
ebb7618341
Bump serde_derive from 1.0.100 to 1.0.101
Bumps [serde_derive](https://github.com/serde-rs/serde) from 1.0.100 to 1.0.101.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.100...v1.0.101)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-23 21:48:18 +00:00
bors[bot]
8c5ccdb497
Merge #807
807: Implement Send for Instance r=MarkMcCaskey a=MarkMcCaskey

# Review

- [x] Create a short description of the the change in the CHANGELOG.md file

Resolves #748 

WIP

## List of changes
### Commit 1
- `Global`s use Arc instead of RC
- Export `Context` and `FuncPointer` manually implement Send
- `ImportObject` uses `Arc<Mutex<HashMap<...>>>` Instead of `Rc<RefCell<HashMap<...>>>`; removed `get_namespace` method in favor of continuation style to deal with locking the Mutex
- `Func` manually implements `Send` (TODO: this change needs to be checked in depth)
### Commit 2
- `unsafe impl Send for Export {}` (temporary to allow Memory to be not Send)
- RefCell -> Mutex in Global and Table
- Rc -> Arc in Table
- Namespace's `IsExport`s must be `Send` (Done to avoid touching much more of the code (i.e. `trait IsExport: Send` requires a lot -- maybe this is what we should do though)
- Make `Host` and `Wasm` `Func`s Send (manual implementation)
- Manual implementation for `LocalTable` and `AnyFunc`
### Commit 3
- rm placeholder `unsafe impl Send for Export {}`
- Manual implementation for `LocalBacking` and `ImportBacking` (both seemed to be not Send due to direct ownership of mutable pointers in their containers)
- ImportObject's state creator Fn trait object is now ` + Send + Sync + 'static` (required because it's in an Arc)
- Manually implement Send for `InstanceInner` because it holds a raw pointer, `LocalBacking` and `ImportBacking` are marked Send separately 
- Memory: All Rc -> Arc (including unshared memory); All RefCell -> Mutex (including unshared memory)
- Manual implementation of Send and Sync on `UnsharedMemoryInternal`
- Manual implementation of Send and Sync on `SharedMemoryInternal`
- Change `runtime-core::unix::memory::Memory.fd` from `Option<Rc<Rawfd>>` to `Option<Arc<Rawfd>>` (not strictly required for this change because Memory has manual implementations of Send and Sync, but Arc seems more correct here and there's no comment justifying the use of Rc)
- Manual implementation of Send for `ImportedFunc`

Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-09-23 21:20:01 +00:00
Mark McCaskey
9cab6d721f Merge branch 'feature/make-instance-send' of github.com:wasmerio/wasmer into feature/make-instance-send 2019-09-23 13:43:48 -07:00
Mark McCaskey
c4818f12dc Update spectests to work with new Instance; use Arc<Mutex<>> 2019-09-23 13:43:01 -07:00
Syrus Akbary
eed033021b
Merge pull request #825 from Hywan/doc-runtime-core-memory-view
doc(runtime-core) Replace `map(|cell| cell.get())` by `map(Cell::get)`.
2019-09-23 11:34:00 -07:00
Mark McCaskey
705287c317
Merge branch 'master' into feature/make-instance-send 2019-09-23 11:06:00 -07:00
Mark McCaskey
1e637badc4 Merge remote-tracking branch 'origin/master' into feature/make-instance-send 2019-09-23 11:05:00 -07:00
Mark McCaskey
05ad1aaea4 Add test for Instance, fix tests for ImportObject 2019-09-23 11:04:31 -07:00
bors[bot]
23c7b201dd
Merge #817
817: Add feature matrix document r=MarkMcCaskey a=MarkMcCaskey

[rendered](https://github.com/wasmerio/wasmer/blob/docs/add-feature-matrix/docs/feature_matrix.md)

# Review

- [x] Create a short description of the the change in the CHANGELOG.md file


Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-09-23 17:21:30 +00:00
Mark McCaskey
2ef64b0a19 Update feature matrix with input from Brandon and Nick 2019-09-23 10:20:46 -07:00