From dd04d1199aa5f193fc45abc2df72ea33be148cab Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 30 Nov 2018 17:08:45 -0800 Subject: [PATCH 1/6] Update the README with project status and goals. --- README.md | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7efe55732cb2..0efecac2e6e1 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,25 @@ -# wasmtime -Standalone JIT-style runtime support for WebAsssembly code in Cranelift +# Wasmtime: a WebAssembly Runtime. + +A standalone wasm-only runtime for [WebAsssembly], using [Cranelift]. [![Travis Status](https://travis-ci.org/CraneStation/wasmtime.svg?branch=master)](https://travis-ci.org/CraneStation/wasmtime) [![Appveyor Status](https://ci.appveyor.com/api/projects/status/vxvpt2plriy5s0mc?svg=true)](https://ci.appveyor.com/project/CraneStation/cranelift) [![Gitter chat](https://badges.gitter.im/CraneStation/CraneStation.svg)](https://gitter.im/CraneStation/Lobby) -![Minimum rustc 1.30](https://img.shields.io/badge/rustc-1.30+-red.svg) +![Minimum rustc 1.30](https://img.shields.io/badge/rustc-1.30+-green.svg) + +*This is a work in progress that is not currently functional, but under active development.* + +Goals include: + - Be a general-purpose engine for running WebAssembly code [outside of browsers]. + - Support a variety of host APIs with fast calling sequences. + - Facilitate testing, experimentation, and development around the [Cranelift] and + [Lightbeam] JITs. + - Develop a the native ABI used for compiling WebAssembly suitable for use in + both JIT and AOT to native object files. + +[WebAssembly]: https://webassembly.org/ +[outside of browsers]: https://github.com/WebAssembly/design/blob/master/NonWeb.md +[Cranelift]: https://github.com/CraneStation/cranelift +[Lightbeam]: https://github.com/CraneStation/lightbeam -*This is a work in progress that is not currently functional.* +It's Wasmtime. From e460d9c131de85e92f3128b003139e10c4151de0 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 30 Nov 2018 18:55:26 -0800 Subject: [PATCH 2/6] Fix typo. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0efecac2e6e1..6491104c167b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Wasmtime: a WebAssembly Runtime. -A standalone wasm-only runtime for [WebAsssembly], using [Cranelift]. +A standalone wasm-only runtime for [WebAssembly], using [Cranelift]. [![Travis Status](https://travis-ci.org/CraneStation/wasmtime.svg?branch=master)](https://travis-ci.org/CraneStation/wasmtime) [![Appveyor Status](https://ci.appveyor.com/api/projects/status/vxvpt2plriy5s0mc?svg=true)](https://ci.appveyor.com/project/CraneStation/cranelift) From defdb819ef5b35ed878c195b94bba936f40d6b88 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Sat, 1 Dec 2018 12:49:23 -0800 Subject: [PATCH 3/6] Mention the goal of prototyping syscalls for proposal to reference-sysroot. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 6491104c167b..335d661a0a98 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,8 @@ A standalone wasm-only runtime for [WebAssembly], using [Cranelift]. Goals include: - Be a general-purpose engine for running WebAssembly code [outside of browsers]. - Support a variety of host APIs with fast calling sequences. + - Prototype syscall APIs that can be proposed for use in the WebAssembly + [Reference Sysroot](https://github.com/WebAssembly/reference-sysroot). - Facilitate testing, experimentation, and development around the [Cranelift] and [Lightbeam] JITs. - Develop a the native ABI used for compiling WebAssembly suitable for use in From 94a5e04fac3979eb8f1de11474c6f953eaf1d759 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 3 Dec 2018 16:38:34 -0800 Subject: [PATCH 4/6] Add a CODE_OF_CONDUCT.nd and CONTRIBUTING.md. --- CODE_OF_CONDUCT.md | 46 ++++++++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 8 ++++++++ 2 files changed, 54 insertions(+) create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 000000000000..38ef2efa50c3 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,46 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at either sunfish@mozilla.com or tyler@fastly.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000000..256fee1e5a2f --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,8 @@ +# Contributing to Wasmtime + +Wasmtime follows the same development style as Cranelift, so checkout +[Cranelift's CONTRIBUTING.md]. Of course, for Wasmtime-specific issues, please +use the [Wasmtime issue tracker]. + +[Cranelift's CONTRIBUTING.md]: https://github.com/CraneStation/cranelift/blob/master/CONTRIBUTING.md +[Wasmtime issue tracker]: https://github.com/CraneStation/wasmtime/issues/new From d6c284eafa94bc7e1e91d6535864f76ac292fef2 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 3 Dec 2018 16:39:38 -0800 Subject: [PATCH 5/6] Mention that being usable as a library is a goal. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 335d661a0a98..d91995d0373a 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,8 @@ A standalone wasm-only runtime for [WebAssembly], using [Cranelift]. *This is a work in progress that is not currently functional, but under active development.* Goals include: - - Be a general-purpose engine for running WebAssembly code [outside of browsers]. + - Be a general-purpose engine for running WebAssembly code [outside of browsers], + usable both standalone or as a library embedded in a larger application. - Support a variety of host APIs with fast calling sequences. - Prototype syscall APIs that can be proposed for use in the WebAssembly [Reference Sysroot](https://github.com/WebAssembly/reference-sysroot). From c5d311c5594b7a3935eb2eea3be502eb6898bbb9 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 3 Dec 2018 16:47:59 -0800 Subject: [PATCH 6/6] Add a README.md for lib/obj. --- lib/obj/Cargo.toml | 2 ++ lib/obj/README.md | 6 ++++++ 2 files changed, 8 insertions(+) create mode 100644 lib/obj/README.md diff --git a/lib/obj/Cargo.toml b/lib/obj/Cargo.toml index 53f8fec53d17..b6fc68139838 100644 --- a/lib/obj/Cargo.toml +++ b/lib/obj/Cargo.toml @@ -2,10 +2,12 @@ name = "wasmtime-obj" version = "0.0.0" authors = ["The Cranelift Project Developers"] +description = "Native object file output for WebAsssembly code in Wasmtime" publish = false repository = "https://github.com/CraneStation/wasmtime" categories = ["wasm"] license = "Apache-2.0 WITH LLVM-exception" +readme = "README.md" [dependencies] cranelift-codegen = "0.25.0" diff --git a/lib/obj/README.md b/lib/obj/README.md new file mode 100644 index 000000000000..3b3e0f1fee58 --- /dev/null +++ b/lib/obj/README.md @@ -0,0 +1,6 @@ +This is the `wasmtime-obj` crate, which contains an experimental prototype +for writing out native object files, using the wasm ABI defined by +[`wasmtime-environ`]. + +[`wasmtime-environ`]: https://crates.io/crates/wasmtime-environ +