Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the README with project status and goals. #35

Merged
merged 6 commits into from
Dec 5, 2018

Conversation

sunfishcode
Copy link
Member

Now that this project is getting more active, it's time to write some more in the README! Here's a brief blurb.


*This is a work in progress that is not currently functional.*
It's Wasmtime.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's Wasmtime.

README.md Outdated
Standalone JIT-style runtime support for WebAsssembly code in Cranelift
# Wasmtime: a WebAssembly Runtime.

A standalone wasm-only runtime for [WebAsssembly], using [Cranelift].
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You added an extra 's' to WebAssembly.

@sunfishcode
Copy link
Member Author

This will not be the final word on the README.md or other documentation, but it'll get things started :-).

@sunfishcode sunfishcode merged commit 1b98efd into bytecodealliance:master Dec 5, 2018
@sunfishcode sunfishcode deleted the readme branch December 5, 2018 00:24
@kubkon kubkon mentioned this pull request May 22, 2019
kubkon added a commit that referenced this pull request Nov 7, 2019
* Initial checkin.

* Update to rust-lang libc.

* Add a .gitignore file.

* Factor out functions for cleaning up files and directories.

* Fix a typo in a comment.

* Print a "Success!" message if all tests passed.

* Factor out code for creating directories.

* Add wrappers around WASI functions.

These wrappers handle converting from &str to pointer+length and handle
unsafe.

* More refactoring.

* Refactor a fd_close helper.

* Move utility functions into a separate file.

* cargo update

* Add a basic test for random_get.

* Test that directories aren't resizable.

* Test clearing __WASI_RIGHT_PATH_FILESTAT_SET_SIZE.

Ensure that clearing __WASI_RIGHT_PATH_FILESTAT_SET_SIZE succeeds before
testing file truncation.

* cargo update

* Modularise tests for easier use with wasi-common crate

* Add a Code of Conduct and CONTRIBUTING.md.

* Fix typo

* Add testcase for fd_allocate

* Add positive test for fd_renumber

* Assert bufused in readlink_no_buffer testcase

* Add positive readlink testcase

* Add testcase for fd_seek and fd_tell

* Add fd_p{read, write} test

* Add README

* Add cases with trailing slashes to interesting_paths

* Split nofollow_errors testcase into two

* nofollow_errors now operators on symlinks to existing resources
* dangling_symlink covers danling symlinks tests

* Factor out a `create_file` helper function.

* Switch from the error crate to `std::io::Error::last_os_error()`.

* Use `create_file` in the readlink test too.

* Add a test for fd_filestat_set_*

* Minor refactoring

Add missing cleanup_file calls to file_pread_pwrite and
file_seek_tell.

* Add testcase for unbuffered fd_write; fixes #11

* Add testcase for path_rename

* Use the wasi crate.

Switch from depending on libc to depending on the new wasi crate to provide
the low-level WASI interfaces.

See also rust-lang/libc#1461.

* Add a test for path_filestat_*

* Add a test for fd_readdir

* Use expect instead of unwrap

* Add a check for ino.

* Fix the build

* Don't assume a specific order of dirents

* Better test

* Test cookie value

* Fix file types

* Fix the test

* Fix the test

* Fix the test

* Cleanup

* Minor formatting tidying in README.md.

* Fix miscellaneous clippy warnings.

* Rename the crate to wasi-misc-tests.

* Update to wasi 0.7.0.

This switches from using the libc wasi bindings to using the wasi
crate's bindings. This eliminates a git dependency on libc, updates
to the new-style bindings which use Result where possible, and treats
functions that operate on raw file descriptors as unsafe.

* Add various tests for trailing-slash behavior.

* Sync new testcases with latest upstream

* Fix path_filestat testcase

* Add smoke test for fd_advise

This test is a true smoke test as it only tests whether issuing
an advise call to the host's kernel doesn't yield an error. The
consequence of issuing such a syscall is not tested.

* Check if CLOCK_MONOTONIC is actually monotonic

* Refactor the inequality assertions for more debuggable errors.

* Bump libc from 0.2.62 to 0.2.65

Bumps [libc](https://github.com/rust-lang/libc) from 0.2.62 to 0.2.65.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](rust-lang/libc@0.2.62...0.2.65)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Fix compilation error

* Enable Actions and add rust.yml (#35)

* Enable Actions and add rust.yml

This commit enables Github Actions and adds corresponding configuration in rust.yml file.

* Update rust.yml

* Fix formatting

* Add empty .rustfmt.toml config file

* Add badge to README

* Update README

* Clean up Github Actions and README

* Add test case for `poll_oneoff` syscall (#38)

* Add test case for `poll_oneoff` syscall

This commit adds a test case for `poll_oneoff` syscall. In particular,
it builds on the excellent test use case provided by @dunnock in their
repo [poll_oneoff_tests] (thanks!), and tests:
* simple timeout
* stdin read with timeout
* fd read and fd write polls

[poll_oneoff_tests]: https://github.com/dunnock/poll_oneoff_tests

* Apply suggestions and negative test for bad fd

Co-authored-by: Maxim Vorobjov <maxim.vorobjov@gmail.com>

* Add smoke test for STDOUT/ERR readwrite poll

* Add comment on stdin/out/err

* Add a test for `*at`-style functions returning `ENOTDIR` when `dirfd` is not a dir.

* Remove misc_testsuite submodule

* Add "publish=false" to Cargo.toml; remove LICENSE
grishasobol pushed a commit to grishasobol/wasmtime that referenced this pull request Nov 29, 2021
* Add checking for fuzz.

* Use wabt's validation instead of wasm2wat.

Fixes bytecodealliance#16
Fixes bytecodealliance#34

* Check fuzz with nightly.

* Install nightly toolchain

* Travis Driven Development bytecodealliance#1

* Travis Driven Development bytecodealliance#2
howjmay pushed a commit to howjmay/wasmtime that referenced this pull request Jan 24, 2022
* Add bindings for `store.GC()`

* Try harder to hit the GC
pchickey pushed a commit to pchickey/wasmtime that referenced this pull request May 16, 2023
dhil pushed a commit to dhil/wasmtime that referenced this pull request Jun 9, 2023
…ntinuations (bytecodealliance#35)

* extend payload slots in VMContext to 16 bytes

* enter continuation functions via array_call trampoline

* Test passing and returning values to/from continuaton functions
dhil added a commit to dhil/wasmtime that referenced this pull request Nov 2, 2023
…ance#35)

In the generated code for `resume`, we have a block that is branched to when none of the tags handled by the resume instruction under consideration handle the tag that we encountered. This block then contains the necessary logic to forward to the parent continuation.

However, if no such parent exists, the current behaviour means that we re-suspend the unhandled tag, but now there is no handler at all. This means that the error for the case where we have active handlers, but none of them handle the `suspend`-ed tag is equivalent to the error shown when `suspend`-ing when there is no handler at all.

This PR addresses an existing TODO: In the forwarding block, we check if there actually is a parent to forward to. If not, we now trap with a new, dedicated trap code to indicate that there is no matching handler.

---------

Co-authored-by: Daniel Hillerström <daniel.hillerstrom@ed.ac.uk>
dhil added a commit to dhil/wasmtime that referenced this pull request Nov 3, 2023
This patch is a follow up on PR bytecodealliance#35. It partially addresses issue
presence of stack switching as older frame pointers are not guaranteed
to be greater than the current frame pointer (e.g. tracing across
stack boundaries).
dhil added a commit to dhil/wasmtime that referenced this pull request Nov 3, 2023
…odealliance#42)

This patch is a follow up on PR bytecodealliance#35. It partially addresses issue
presence of stack switching as older frame pointers are not guaranteed
to be greater than the current frame pointer (e.g. tracing across
stack boundaries).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants